From 52b1639a45ec16bdb5e6e094180c55da327d69bd Mon Sep 17 00:00:00 2001 From: wangjie <805650258@qq.com> Date: Tue, 11 Jul 2023 10:10:47 +0800 Subject: [PATCH] =?UTF-8?q?#=E6=89=B9=E9=87=8F=E6=9B=B4=E6=96=B0=E5=8A=A0?= =?UTF-8?q?=E7=8F=AD=E6=97=B6=E9=97=B4=E8=84=9A=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cronjob/RelationshipReminderJob.java | 172 ++++++++++++++---- 1 file changed, 135 insertions(+), 37 deletions(-) diff --git a/src/weaver/interfaces/shuzhi/cronjob/RelationshipReminderJob.java b/src/weaver/interfaces/shuzhi/cronjob/RelationshipReminderJob.java index 0e9c389..2d35734 100644 --- a/src/weaver/interfaces/shuzhi/cronjob/RelationshipReminderJob.java +++ b/src/weaver/interfaces/shuzhi/cronjob/RelationshipReminderJob.java @@ -17,12 +17,33 @@ import java.util.Map; * 从转正记录(uf_zzjl)、员工调动记录(uf_ddjl)、离职办理查询表单(uf_lzblcxbd), * 1、生效日期早于当前日期且无归档日期,生成流程到人员,手动调整; * 2、生效日期等于当前日期,根据记录数据更新到hrmresource + * *

* uf_zzjl:生效日期=zzrq(转正日期)、归档日期=gdrq(归档日期) + * 1、生效日期早于当前日期且无归档日期,生成流程到人员,手动调整; + * 2、生效日期等于当前日期,根据记录数据更新数据 + * + * hrmresource表:根据人员id更新status='1' + * uf_rzgljmb表:(员工状态:ygzt,转正日期:zzrq,员工(人力资源):ygrlzy) + * update uf_rzgljmb set ygzt = '1' , zzrq = '" + date + "' where ygrlzy = '" + userid + "' + * *

* uf_ddjl:生效日期=ddrq(调动日期)、归档日期=gdrq(归档日期) + * 1、生效日期早于当前日期且无归档日期,生成流程到人员,手动调整; + * 2、生效日期等于当前日期,根据记录数据更新数据 + * + * hrmresource表:根据人员id更新jobtitle(岗位)、departmentid(部门)、subcompanyid1(分部) + * uf_rzgljmb表:(岗位名称:gwmc,职级:xl,部门:bm,公司分部:gsfb,员工(人力资源):ygrlzy) + * update uf_rzgljmb set gwmc = '"+xgw+"' , xl = '" + zj + "' ,bm = '"+xbm+"' ,gsfb = '"+xfb+"' where ygrlzy = '" + userid + "' + * *

* uf_lzblcxbd:生效日期=jhlzrq(uf_lzblcxbd_dt1 计划离职日期)、归档日期=gdrq(归档日期) + * 1、生效日期早于当前日期且无归档日期,生成流程到人员,手动调整; + * 2、生效日期等于当前日期,根据记录数据更新数据 + * + * hrmresource表:根据人员id更新status='5' + * uf_rzgljmb表:(员工状态:ygzt,离职日期:lzrq,员工(人力资源):ygrlzy) + * update uf_rzgljmb set ygzt = '3' , lzrq = '" + date + "' where ygrlzy = '" + userid + "' * * @author wangj * @version 1.00版本 @@ -58,7 +79,7 @@ public class RelationshipReminderJob extends BaseCronJob { if (sxrq.equals(date)) { //2、生效日期等于当前日期,根据记录数据更新到hrmresource - zt = updateHrmStatus(userid, "1"); + zt = updateZZHrmStatus(userid, "1", date); } boolean flag = compareDate(sxrq, date); @@ -76,54 +97,129 @@ public class RelationshipReminderJob extends BaseCronJob { zt = ""; } } + } + + String xbm = ""; + String xgw = ""; + String zj = ""; + String xfb = ""; + //员工调动记录(uf_ddjl) uf_ddjl:生效日期=ddrq(调动日期)、归档日期=gdrq(归档日期) + sql = " select b.id,b.nzzry,b.xbm,d.subcompanyid1,b.xgw,c.lastname,b.zj,a.ddrq,a.gdrq from uf_ddjl a left join uf_ddjl_dt1 b on a.id = b.mainid left join hrmresource c on c.id = b.nzzry left join hrmdepartment d on d.id = b.xbm where b.txlcid is null"; + rs.execute(sql); + while (rs.next()) { + String zt = ""; + id = Util.null2String(rs.getString("id")); + lastname = Util.null2String(rs.getString("lastname")); + sxrq = Util.null2String(rs.getString("ddrq")); + gdrq = Util.null2String(rs.getString("gdrq")); + userid = Util.null2String(rs.getString("nzzry")); + xbm = Util.null2String(rs.getString("xbm")); + xgw = Util.null2String(rs.getString("xgw")); + zj = Util.null2String(rs.getString("zj")); + xfb = Util.null2String(rs.getString("subcompanyid1")); + + + if ("".equals(id) || "".equals(sxrq) || "".equals(userid)) { + continue; + } + if (sxrq.equals(date)) { + //2、生效日期等于当前日期,根据记录数据更新到hrmresource + //更新hrmresource表(岗位、部门)、入职管理建模表uf_rzgljmb(岗位、职级名称、部门、公司名称-分部) + zt = updateDDHrmStatus(userid, date, xgw, xbm, xfb, zj); + } + boolean flag = compareDate(sxrq, date); + + if ("".equals(gdrq) && flag) { + //生效日期早于当前日期且无归档日期,生成流程到人员,手动调整; + String requestName = "员工关系更新提醒-" + lastname + "-" + date; + Map mainMap = new HashMap<>(); + mainMap.put("ygxm", userid); + mainMap.put("gxlx", "1"); + mainMap.put("sxrq", sxrq); + zt = new WorkflowUtil().WorkflowCreateByMainTableMap(userid, workflowid, requestName, "0", mainMap); + if (Util.getIntValue(zt) < 0) { + zt = ""; + } + } } + //uf_lzblcxbd:生效日期=jhlzrq(uf_lzblcxbd_dt1 计划离职日期)、归档日期=gdrq(归档日期) - //员工调动记录(uf_ddjl) uf_ddjl:生效日期=ddrq(调动日期)、归档日期=gdrq(归档日期) -// sql = "select a.id,b.sqr,b.lastname,a.ddrq,a.gdrq uf_ddjl a left join hrmresource b on a.sqr = b.id where a.txlcid is null"; -// rs.execute(sql); -// while (rs.next()) { -// String zt = ""; -// id = Util.null2String(rs.getString("id")); -// lastname = Util.null2String(rs.getString("lastname")); -// sxrq = Util.null2String(rs.getString("ddrq")); -// gdrq = Util.null2String(rs.getString("gdrq")); -// userid = Util.null2String(rs.getString("sqr")); -// -// if ("".equals(id) || "".equals(sxrq) || "".equals(userid)) { -// continue; -// } -// -// if (sxrq.equals(date)) { -// //2、生效日期等于当前日期,根据记录数据更新到hrmresource -// zt = updateHrmStatus(userid, "1"); -// } -// -// boolean flag = compareDate(sxrq, date); -// -// if ("".equals(gdrq) && flag) { -// //生效日期早于当前日期且无归档日期,生成流程到人员,手动调整; -// String requestName = "员工关系更新提醒-" + lastname + "-" + date; -// Map mainMap = new HashMap<>(); -// mainMap.put("ygxm", userid); -// mainMap.put("gxlx", "0"); -// mainMap.put("sxrq", sxrq); -//// mainMap.put("gdrq",gdrq); -// zt = new WorkflowUtil().WorkflowCreateByMainTableMap(userid, workflowid, requestName, "0", mainMap); -// if (Util.getIntValue(zt) < 0) { -// zt = ""; -// } -// } + sql = "select b.id,b.lzry,c.lastname,b.jhlzrq,a.gdrq from uf_lzblcxbd a left join uf_lzblcxbd_dt1 b on a.id = b.mainid left join hrmresource c on c.id = b.lzry where b.txlcid is null"; + rs.execute(sql); + while (rs.next()) { + String zt = ""; + id = Util.null2String(rs.getString("id")); + lastname = Util.null2String(rs.getString("lastname")); + sxrq = Util.null2String(rs.getString("jhlzrq")); + gdrq = Util.null2String(rs.getString("gdrq")); + userid = Util.null2String(rs.getString("lzry")); + if ("".equals(id) || "".equals(sxrq) || "".equals(userid)) { + continue; + } + + if (sxrq.equals(date)) { + //2、生效日期等于当前日期,根据记录数据更新到hrmresource + zt = updateLZHrmStatus(userid, "5", date); + } + + boolean flag = compareDate(sxrq, date); + + if ("".equals(gdrq) && flag) { + //生效日期早于当前日期且无归档日期,生成流程到人员,手动调整; + String requestName = "员工关系更新提醒-" + lastname + "-" + date; + Map mainMap = new HashMap<>(); + mainMap.put("ygxm", userid); + mainMap.put("gxlx", "2"); + mainMap.put("sxrq", sxrq); + + zt = new WorkflowUtil().WorkflowCreateByMainTableMap(userid, workflowid, requestName, "0", mainMap); + if (Util.getIntValue(zt) < 0) { + zt = ""; + } + } + } } - private String updateHrmStatus(String userid, String status) { + //转正 + private String updateZZHrmStatus(String userid, String status, String date) { RecordSet rs = new RecordSet(); String sql = "update hrmresource set status = '" + status + "' where id = '" + userid + "'"; rs.execute(sql); + + sql = "update uf_rzgljmb set ygzt = '1' , zzrq = '" + date + "' where ygrlzy = '" + userid + "'"; + rs.execute(sql); + + return "update"; + } + + + //离职 + private String updateLZHrmStatus(String userid, String status, String date) { + RecordSet rs = new RecordSet(); + String sql = "update hrmresource set status = '" + status + "' where id = '" + userid + "'"; + rs.execute(sql); + + sql = "update uf_rzgljmb set ygzt = '3' , lzrq = '" + date + "' where ygrlzy = '" + userid + "'"; + rs.execute(sql); + + return "update"; + } + + //调动 + private String updateDDHrmStatus(String userid, String date, String xgw, String xbm, String xfb, String zj) { + RecordSet rs = new RecordSet(); + String sql = "update hrmresource set jobtitle = '" + xgw + "' ,departmentid = '"+xbm+"' ,subcompanyid1 = '"+xfb+"' where id = '" + userid + "'"; + rs.execute(sql); + + //岗位、职级名称、部门、公司名称-分部 + sql = "update uf_rzgljmb set gwmc = '"+xgw+"' , xl = '" + zj + "' ,bm = '"+xbm+"' ,gsfb = '"+xfb+"' where ygrlzy = '" + userid + "'"; + rs.execute(sql); + return "update"; } @@ -136,4 +232,6 @@ public class RelationshipReminderJob extends BaseCronJob { } return flag; } + + }