diff --git a/src/com/engine/recruit/service/impl/InductionManageServiceImpl.java b/src/com/engine/recruit/service/impl/InductionManageServiceImpl.java index c2dd11a..334a792 100644 --- a/src/com/engine/recruit/service/impl/InductionManageServiceImpl.java +++ b/src/com/engine/recruit/service/impl/InductionManageServiceImpl.java @@ -76,13 +76,6 @@ public class InductionManageServiceImpl extends Service implements InductionMana Map> fieldMapList = fieldList.stream().collect(Collectors.groupingBy(Formfield::getLabelName)); for (String billId : split) { - // 判断是否已发送信息采集,已发送的不重复发送 - rs.executeQuery("select xxcjid from uf_jcl_rzgl where id = ? ", billId); - if (rs.next()) { - if (StringUtils.isNotBlank(rs.getString("xxcjid"))) { - continue; - } - } // 查询当前数据字段值 rs.executeQuery("select * from uf_jcl_rzgl where id = ? ", billId); Map mainDataMap = RecruitRecordSet.getSingleRecordMap(rs); @@ -103,22 +96,34 @@ public class InductionManageServiceImpl extends Service implements InductionMana dataMap.put("sjh", RecruitModeUtil.parseBlankToNull(mainDataMap.get("sjhm"))); dataMap.put("yx", RecruitModeUtil.parseBlankToNull(mainDataMap.get("dzyx"))); + String xxcjid = Util.null2String(mainDataMap.get("xxcjid")); + String password = ""; + // 已发送信息采集通知的可以继续发送邮件通知,沿用原先的账号、密码 + if (StringUtils.isNotBlank(xxcjid)) { + // 查询密码、手机号,取信息采集表存储的账号、密码 + rs.executeQuery("select mm, sjh from uf_jcl_xxcj where id = ?", xxcjid); + if(rs.next()){ + password = rs.getString("mm"); + mainDataMap.put("sjhm", RecruitModeUtil.parseBlankToNull(rs.getString("sjh"))); + } + } + // 如果密码为空,则创建信息采集数据 + if (StringUtils.isBlank(password)) { + // 生成登录密码 + password = generatePassword(); + dataMap.put("mm", password); - // 生成登录密码 - String password = generatePassword(); - dataMap.put("mm", password); + dataMap.put("modedatastatus", "1"); + // 插入数据 + RecruitRecordSet.insertData(dataMap, "uf_jcl_xxcj"); - dataMap.put("modedatastatus", "1"); + int id = RecruitRecordSet.refreshRight(uuid, "uf_jcl_xxcj", formModeId, creator); + xxcjid = String.valueOf(id); + // 更新状态为已发送,反填信息采集ID + rs.executeUpdate("update uf_jcl_rzgl set xxcj = ? ,xxcjid = ? where id = ? ", InfoCollectEnum.HAS_SENT.getId(), id, billId); + } - // 插入数据 - RecruitRecordSet.insertData(dataMap, "uf_jcl_xxcj"); - - int id = RecruitRecordSet.refreshRight(uuid, "uf_jcl_xxcj", formModeId, creator); - - // 更新状态为已发送,反填信息采集ID - rs.executeUpdate("update uf_jcl_rzgl set xxcj = ? ,xxcjid = ? where id = ? ", InfoCollectEnum.HAS_SENT.getId(), id, billId); - // 发送短信 String mobile = Util.null2String(dataMap.get("sjh")); String email = Util.null2String(dataMap.get("yx")); @@ -145,7 +150,7 @@ public class InductionManageServiceImpl extends Service implements InductionMana otherParam.put("createName", user.getLastname()); otherParam.put("pcid", pcid); ApplicantRecordPo recordPo = ApplicantRecordPo.builder() - .billId(String.valueOf(id)) + .billId(xxcjid) .operateTime(DateUtil.getDateTime()) .modeId(String.valueOf(formModeId)) .formId(String.valueOf(ApplicantCommonInfo.getFormIdByTableName("uf_jcl_xxcj")))