diff --git a/src/UserTransTest.jsp b/src/UserTransTest.jsp index 363ae78..10aa0a0 100644 --- a/src/UserTransTest.jsp +++ b/src/UserTransTest.jsp @@ -14,13 +14,16 @@ try { String id = Util.null2String(request.getParameter("id")); String currentDate = Util.null2String(request.getParameter("date")); - if (StringUtils.isBlank(id) || StringUtils.isBlank(currentDate)) { - throw new RuntimeException("id or date is null"); + if (StringUtils.isBlank(currentDate)) { + throw new RuntimeException("date is null"); } rs.writeLog("EmployeeTransferJob---start"); - //String currentDate = DateUtil.getCurrentDate(); // 查询归档流程,明细表中,调用生效日期为当前日期的数据 - rs.executeQuery("select * from uf_ygddxx where ydsxrq = ? and id = ?", currentDate, id); + if(StringUtils.isNotBlank(id)){ + rs.executeQuery("select * from uf_ygddxx where ydsxrq = ? and id = ?", currentDate, id); + }else{ + rs.executeQuery("select * from uf_ygddxx where ydsxrq = ? ", currentDate); + } while (rs.next()) { RecordSet rst = new RecordSet(); // 调动人 @@ -209,12 +212,15 @@ // 更新“调动人”的【考勤组】为:新考勤组; // 更新“调动人”的新考勤组中的“生效日期”=调动生效日期; // 更新“调动人”的原考勤组中的“失效日期”=调动生效日期 - 1天; - String sql = "insert into kq_groupmember(groupid,typevalue,type,seclevel,seclevelto,validatefrom,validateto) values(?,?,1,0,100,?,'2999-12-31')"; - rst.executeUpdate(sql, xkqz, ddr, ddsxrq); - // 如果生效日期小于失效日期,将生效日期也改为失效日期 - rst.executeQuery("select * from kq_groupmember where type = 1 and ISNULL(isDelete,0) != 1 and typevalue = ? and groupid = ?", ddr, kqGroupId); + String sql = "select * from kq_groupmember where type = 1 and ISNULL(isDelete,0) != 1 and typevalue = ? and groupid = ? "; + rst.executeQuery(sql, ddr, xkqz); + // 查询新考勤组是否有数据,如果数据则更新,没有则插入一条数据 if(rst.next()){ - String validatefrom = rst.getString("validatefrom"); + sql = "update kq_groupmember set validatefrom = ? ,validateto = ? where type = 1 and ISNULL(isDelete,0) != 1 and typevalue = ? and groupid = ?"; + rst.executeUpdate(sql, ddsxrq, "2999-12-31", ddr, xkqz); + }else{ + sql = "insert into kq_groupmember(groupid,typevalue,type,seclevel,seclevelto,validatefrom,validateto) values(?,?,1,0,100,?,'2999-12-31')"; + rst.executeUpdate(sql, xkqz, ddr, ddsxrq); } sql = "update kq_groupmember set validateto = ? where type = 1 and ISNULL(isDelete,0) != 1 and typevalue = ? and groupid = ?"; diff --git a/src/weaver/interfaces/zhewen/cronjob/EmployeeTransferJob.java b/src/weaver/interfaces/zhewen/cronjob/EmployeeTransferJob.java index b5d4576..fbda18a 100644 --- a/src/weaver/interfaces/zhewen/cronjob/EmployeeTransferJob.java +++ b/src/weaver/interfaces/zhewen/cronjob/EmployeeTransferJob.java @@ -210,10 +210,20 @@ public class EmployeeTransferJob extends BaseCronJob { // 更新“调动人”的【考勤组】为:新考勤组; // 更新“调动人”的新考勤组中的“生效日期”=调动生效日期; // 更新“调动人”的原考勤组中的“失效日期”=调动生效日期 - 1天; - String sql = "insert into kq_groupmember(groupid,typevalue,type,seclevel,seclevelto,validatefrom,validateto) values(?,?,1,0,100,?,'2999-12-31')"; - rst.executeUpdate(sql, xkqz, ddr, ddsxrq); + String sql = "select * from kq_groupmember where type = 1 and ISNULL(isDelete,0) != 1 and typevalue = ? and groupid = ? "; + rst.executeQuery(sql, ddr, xkqz); + // 查询新考勤组是否有数据,如果数据则更新,没有则插入一条数据 + if(rst.next()){ + sql = "update kq_groupmember set validatefrom = ? ,validateto = ? where type = 1 and ISNULL(isDelete,0) != 1 and typevalue = ? and groupid = ?"; + rst.executeUpdate(sql, ddsxrq, "2999-12-31", ddr, xkqz); + }else{ + sql = "insert into kq_groupmember(groupid,typevalue,type,seclevel,seclevelto,validatefrom,validateto) values(?,?,1,0,100,?,'2999-12-31')"; + rst.executeUpdate(sql, xkqz, ddr, ddsxrq); + } + + // 如果生效日期小于失效日期,将生效日期也改为失效日期 - rst.executeQuery("select * from kq_groupmember where type = 1 and ISNULL(isDelete,0) != 1 and typevalue = ? and groupid = ?", ddr, kqGroupId); + //rst.executeQuery("select * from kq_groupmember where type = 1 and ISNULL(isDelete,0) != 1 and typevalue = ? and groupid = ?", ddr, kqGroupId); //if (rst.next()) { // String validatefrom = rst.getString("validatefrom"); //}