代码块的常用场景示范


示例1:根据身份证号,获取出生日期和性别

将身份证号传给代码块,经过代码处理后,可以输出生日和性别信息并被后面的节点引用。

节点配置 image.png

被后续节点使用输出的内容

image.png

复制以下代码可直接使用

var idcard = input.IDCard
var birthday = idcard.substr(6, 4) + '-' + idcard.substr(10, 2) + '-' + idcard.substr(12, 2);
var sex = '女';
if (idcard.substr(16, 1) % 2 == 1) {
 sex = '男';
}
output = { 生日: birthday, 性别: sex };

如果您没有代码经验,请保持和示例中的配置及代码完全一致。


示例2:获取当天的某个固定时间

有时需要将记录的时间和当天的某个固定时间点比较,然后进行不同的流程执行。

例如,当记录的创建时间 晚于 21点时,就不再提醒相关人, 早于21点时,就提醒相关人跟进。

代码块配置

image.png

分支节点进行比较

image.png

复制以下代码块直接使用

var date = new Date();
var year = date.getFullYear();
var month = date.getMonth() + 1;
var day = date.getDate();
time1 = year + '-' + month + '-' + day + ' 8:00:00';
time2 = year + '-' + month + '-' + day + ' 12:00:00';
output = { time1: time1, time2: time2 };

TIPS

1、只能修改时间,例如将8:00:00 改为需要的9:30:00 ,其他不要改变。

2、如果只需一个时间点,请直接复用,不用删除。

3、如果需要更多时间点,复制以下代码,将time1 改为 time3 ,时间改为需要的时间。

4、时间部分前面有一个空格,不要删除。是' 8:00:00',不是'8:00:00'

time1 = year + '-' + month + '-' + day + ' 8:00:00';

同时还需要增加输出参数

output = { time1: time1, time2: time2, time3: time3 };


示例3:分别获取日期中的年月日

日期时间字段中,日期的格式是YYYY-MM-DD hh:mm ,如果您只需要使用的年份、月份、时分的数值,则可以通过代码块实现。

例如,获取日期为 2019-01-01 10:08 ,分别获取到2019、01、01、10、08, 您可以按自己的格式重新拼接,例如2019年1月1日 10点08分, 也可使用这些数值进行计算。

配置如下:

1、代码块节点配置

image.png

2、后续节点使用代码块输出的值。

image.png

复制以下代码可直接使用

如果您没有代码经验, 请不要修改输入参数名及代码,只需修改引用的节点字段即可。

1、传入的是日期格式,没有时分部分 例如2020-08-01 ,用下面的代码。

var date1 = input.date;
var year1 = date1.substr(0, 4);
var month1 = date1.substr(5, 2);
var day1 = date1.substr(8, 2);
output = { 年: year1, 月: month1, 日: day1 };

2、传入的是日期+时间 格式,例如2020-08-01 10:11 ,用下面的代码。

var date1 = input.date;
var year1 = date1.substr(0, 4);
var month1 = date1.substr(5, 2);
var day1 = date1.substr(8, 2);
var hour1 = date1.substr(11, 2);
var minite1 = date1.substr(14, 2);
output = {年:year1,月:month1,日:day1,时: hour1,分:minite1};


示例4:判断某个日期是周几

将日期字段的值传给代码块,可以返回这个日期是周几

代码块配置

image.png

被后续节点使用

image.png

复制以下代码可直接使用

function getweekday(date) {
 var weekArray = new Array("日", "一", "二", "三", "四", "五", "六");
 var week = weekArray\[new Date(date).getDay()\];
 return "星期" + week;
}
output = { 星期几: getweekday(input.date) };


示例5:如何去掉手机号中的+86

在手机号字段中,前面会带有国家或地区的区号便于校验和识别,但是通过Webhook节点和其他系统对接时,手机号带区号就会报错。如何通过代码块节点去掉中国手机号中的+86呢。

演示示例

1、在流程中添加代码块节点

选择Javascript语言,配置如下:

image.png

其中 1、2、3处的内容请完全保持一致。然后再点击4处的 测试按钮, 在5处就能显示去掉+86的手机号了。

其中3处的代码如下,直接复制即可。

output = {output: input.phone.replace("+86", "")};

2、将配置中2处的固定手机号改为动态参数

image.png

一开始写为固定值,是为了快速检测编写的代码执行结果是否正确。

3、如何使用代码块输出的内容

例如,Webhook节点中,要用到去掉+86的内容,参数中就不要选择原来记录中的字段了,直接选择代码块节点的输出字段:output

image.png

results matching ""

    No results matching ""