基于泛微Ecology代码块开发实现劳动合同开始结束日期、试用开始结束日期计算赋值
//劳动合同开始结束日期、试用开始结束日期计算赋值,载入时触发,
jQuery().ready(function(){
var Calculatecontractdate=function(){
//获取相关数据
var rzrq=WfForm.getFieldValue("field10954"); //获取入职日期
var htlx=WfForm.getFieldValue("field13444"); //获取合同类型
var syqfs=WfForm.getFieldValue("field16377"); //获取试用期方式
var htnx=WfForm.getFieldValue("field16374"); //获取合同年限
//处理相关数据
//如果合同类型为空或1 或合同年限为空,合同开始结束日期赋值赋值为空
if(htlx=="" || htlx==1 || htnx==""){
var htksrq="";
var htjsrq="";
} else {
//否则合同开始日期等于入职日期,合同结束日期等于入职日期加合同年限减1天
htnx=htnx*1
var tmpy = new Date(rzrq);
tmpy.setFullYear(tmpy.getFullYear()+ htnx);
var htksrq=rzrq;
var htjsrq=new Date(tmpy.getTime() - 1 * 24 * 3600 * 1000).toISOString().substring(0,10);
console.log(htjsrq);
};
//如果试用期方式为空或1 或合同年限为空,试用开始结束日期赋值为空
if(syqfs=="" || syqfs==1 || htnx==""){
var syksrq="";
var syjsrq="";
}else{
//否则试用开始日期等于入职日期,试用结束日期根据年限加29 59 179天
syts=(htnx==1)? 29:(htnx==2)? 59:179
var tmp = new Date(rzrq);
var syksrq=rzrq;
var syjsrq=new Date(tmp.getTime() + syts * 24 * 3600 * 1000).toISOString().substring(0,10);
}
//输出相关数据
WfForm.changeFieldValue("field13447", {value:htksrq}); //合同开始日期
WfForm.changeFieldValue("field13450", {value:htjsrq}); //合同结束日期
WfForm.changeFieldValue("field16422", {value:syksrq}); //试用开始日期
WfForm.changeFieldValue("field16425", {value:syjsrq}); //试用结束日期
}
setTimeout(function(){
Calculatecontractdate();//执行函数
},100); //延迟执行100ms
WfForm.bindFieldChangeEvent("field10954,field13444,field16377,field16374", function(obj,id,value){
Calculatecontractdate();//执行函数
});
});
标签:htnx,Ecology,日期,试用,为空,WfForm,var,泛微 From: https://blog.51cto.com/mflag/8171937