人员报到
__XLjD79Km8j8pkSHjTTv
__XLjD79Km8j8pkSHjTTv
published
UTF-8
post
/event/update/group/person/report
json
0){
for(var checkgroupiterator = checkgroupdatas.iterator();checkgroupiterator.hasNext();){
var checkgroupmap1 = checkgroupiterator.next();//取值
var group_id = checkgroupmap1.get("id");
}
}else {
result.put("code","500");
result.put("msg","当前岗点未创建岗点小组!");
result.put("state", false);
return result;
}
var postDoc=findDocument(post_id);
var att_id= postDoc.findItem("att_id").getValue();
var project_id= postDoc.findItem("project_id").getValue();
//检查是否在同项目岗点
var checkpost = "select gp.id from tlk_event_post_group_person gp inner join tlk_event_post p on gp.item_post_id = p.id where p.item_project_id='"+project_id+"' and gp.item_number='"+number+"' "
var checkdatas = queryByDSName("baibaodunFlow",checkpost);
if(checkdatas.size()>0){
//说明在当前项目的岗点
for(var checkiterator = checkdatas.iterator();checkiterator.hasNext();){
var checkmap1 = checkiterator.next();//取值
var old_personid = checkmap1.get("id");
}
}else {
result.put("code","500");
result.put("msg","此人员没有在当前项目的任何岗点,无法报到!");
result.put("state", false);
return result;
}
//旧的记录
var old_personDoc=findDocument(old_personid);
var old_att_person_id=old_personDoc.findItem("att_person_id").getValue();
var old_att_person_doc=findDocument(old_att_person_id);
var old_person_log=old_personDoc.findItem("log_id").getValue();
var old_post_id=old_personDoc.findItem("post_id").getValue();
if(post_id.equals(old_post_id)){
//就是当前岗点,直接更改报到状态就可以了
//更新岗点状态
var upsql1="update tlk_event_post_group_person set item_reporting_state='已报到',item_reporting_time=now() where item_post_id = '"+post_id+"' and item_number='"+number+"'"
updateByDSName("baibaodunFlow",upsql1);
//更新驻勤人员状态
var upsql2="update tlk_attendance_site_person_info set item_reporting_time=now() where item_documentID='"+number+"' and item_attendanceSiteId = (select item_att_id from tlk_event_post where id= '"+post_id+"' ) "
updateByDSName("baibaodunFlow",upsql2);
}else{
//属于调岗,安排到当前的岗点去
var process = getDocumentProcess();
var formProcess = getFormProcess();
var personInfo = formProcess.doView("__ZAVM0jeNje9qVgmLo48");
var personInfoLog = formProcess.doView("__p45ldH65wsmjiKLRb6g");
var attpersoninfo = formProcess.doView("__sgTQqGCJDqTyPf6vN1Q");
var personInfoDoc = process.doNew(personInfo,getWebUser(),createParamsTable());
var personInfoLogDoc = process.doNew(personInfoLog,getWebUser(),createParamsTable());
var attpersoninfoDoc = process.doNew(attpersoninfo,getWebUser(),createParamsTable());
personInfoDoc.addStringItem("name",old_personDoc.findItem("name").getValue());
personInfoDoc.addStringItem("sex",old_personDoc.findItem("sex").getValue());
personInfoDoc.addStringItem("number",old_personDoc.findItem("number").getValue());
personInfoDoc.addStringItem("telephone",old_personDoc.findItem("telephone").getValue());
personInfoDoc.addStringItem("domain_name",old_personDoc.findItem("domain_name").getValue());
personInfoDoc.addStringItem("checked_status",old_personDoc.findItem("checked_status").getValue());
personInfoDoc.addStringItem("domain_id",old_personDoc.findItem("domain_id").getValue());
personInfoDoc.addStringItem("person_id",old_personDoc.findItem("person_id").getValue());
personInfoDoc.addStringItem("post_id",post_id);
personInfoDoc.addStringItem("group_id",group_id);
personInfoDoc.addStringItem("reporting_state","已报到");
personInfoDoc.addDateItem("reporting_time",getToday());
personInfoLogDoc.addStringItem("name",old_personDoc.findItem("name").getValue());
personInfoLogDoc.addStringItem("id_number",old_personDoc.findItem("number").getValue());
personInfoLogDoc.addStringItem("phone",old_personDoc.findItem("telephone").getValue());
personInfoLogDoc.addStringItem("person_id",old_personDoc.findItem("person_id").getValue());
personInfoLogDoc.addStringItem("band_person",getWebUser().getName());
personInfoLogDoc.addDateItem("band_time",getToday());
personInfoLogDoc.addStringItem("group_id",group_id);
attpersoninfoDoc.addStringItem("securityName",old_att_person_doc.findItem("securityName").getValue()); //驻勤人员名称
attpersoninfoDoc.addStringItem("securityId",old_att_person_doc.findItem("securityId").getValue()); //驻勤人员id
attpersoninfoDoc.addStringItem("from_type",old_att_person_doc.findItem("from_type").getValue()); //驻勤人员类型
attpersoninfoDoc.addStringItem("documentType",old_att_person_doc.findItem("documentType").getValue()); //证件类型
attpersoninfoDoc.addStringItem("documentID",old_att_person_doc.findItem("documentID").getValue()); //证件号码
attpersoninfoDoc.addStringItem("phone",old_att_person_doc.findItem("phone").getValue()); //手机号
attpersoninfoDoc.addStringItem("isCertified",old_att_person_doc.findItem("isCertified").getValue()); //实名状态
attpersoninfoDoc.addStringItem("createdUser",getWebUser().getName()); //创建者
var attId = postDoc.findItem("att_id").getValue()
attpersoninfoDoc.addStringItem("attendanceSiteId",attId); //驻勤id
attpersoninfoDoc.addStringItem("domain_id",old_att_person_doc.findItem("domain_id").getValue()); //企业id
attpersoninfoDoc.addStringItem("person_status",'1');
attpersoninfoDoc.addStringItem("push_attendance",'1');
attpersoninfoDoc.addDateItem("reporting_time",getToday());
//删除原本驻勤岗点人员
var sql2="delete from tlk_attendance_site_person_info where id = '"+old_att_person_id+"'"
deleteByDSName("baibaodunFlow",sql2);
//更新日志
var sql3="update tlk_event_post_person_log set item_remove_person='"+userName+"',item_remove_time=now() where id ='"+old_person_log+"'"
updateByDSName("baibaodunFlow",sql3);
//删除原本小组人员
var sql1="delete from tlk_event_post_group_person where id = '"+old_personid+"'"
deleteByDSName("baibaodunFlow",sql1);
process.doCreate(attpersoninfoDoc)
process.doCreate(personInfoLogDoc);
personInfoDoc.addStringItem("log_id",personInfoLogDoc.getId())
personInfoDoc.addStringItem("att_person_id",attpersoninfoDoc.getId())
process.doCreate(personInfoDoc);
}
result.put("data","报到成功");
result.put("code","200");
result.put("msg","OK");
result.put("state", true);
return result;
}else{
result.put("code","500");
result.put("msg","必填参数不能为空!");
result.put("state", false);
return result;
}
}else{
result.put("code","500");
result.put("msg","请求体不能为空!");
result.put("state", false);
return result;
}
})()]]>