From 7269c128076e53ed5ce2a7c838b8eec8108d08a7 Mon Sep 17 00:00:00 2001 From: dxfeng Date: Thu, 9 Nov 2023 14:57:02 +0800 Subject: [PATCH] =?UTF-8?q?=E9=9D=A2=E8=AF=95=E9=80=9A=E7=9F=A5=E5=8F=91?= =?UTF-8?q?=E9=80=81=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../BatchAddInterviewResultModeExpand.java | 107 +++++------------- .../interview/CreateInterviewModeExpand.java | 74 +++++------- .../BatchAddWrittenResultModeExpand.java | 20 ++-- 3 files changed, 63 insertions(+), 138 deletions(-) diff --git a/src/weaver/formmode/recruit/modeexpand/interview/BatchAddInterviewResultModeExpand.java b/src/weaver/formmode/recruit/modeexpand/interview/BatchAddInterviewResultModeExpand.java index 65d88d1..3671e5d 100644 --- a/src/weaver/formmode/recruit/modeexpand/interview/BatchAddInterviewResultModeExpand.java +++ b/src/weaver/formmode/recruit/modeexpand/interview/BatchAddInterviewResultModeExpand.java @@ -1,10 +1,7 @@ package weaver.formmode.recruit.modeexpand.interview; import com.engine.recruit.util.RecruitMessageUtils; -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; +import com.weaver.formmodel.data.model.Formfield; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang3.StringUtils; import weaver.common.DateUtil; @@ -18,8 +15,7 @@ import weaver.hrm.User; import weaver.soa.workflow.request.*; import java.util.*; -import java.util.regex.Matcher; -import java.util.regex.Pattern; +import java.util.stream.Collectors; /** *

聚才林招聘

@@ -98,6 +94,16 @@ public class BatchAddInterviewResultModeExpand extends AbstractModeExpandJavaCod detailMapList.add(detailDataMap); } + String tzypz = Util.null2String(mainDataMap.get("tzypz")); + String yjnr = Util.null2String(mainDataMap.get("yjnr")); + String yjtzmb = Util.null2String(mainDataMap.get("yjtzmb")); + List sendTypeList = Arrays.asList(tzypz.split(",")); + boolean sendEmail = sendTypeList.contains("0"); + boolean sendSms = sendTypeList.contains("1"); + String emailTitle = RecruitModeUtil.getEmailTitle(yjtzmb); + + List fieldList = RecruitModeUtil.getFieldList("uf_jcl_plapms"); + Map> fieldMapList = fieldList.stream().collect(Collectors.groupingBy(Formfield::getLabelName)); String insertSql = "insert into " + MODE_TABLE_NAME + " (modeuuid, modedatacreatertype, formmodeid, modedatacreater, modedatacreatedate, modedatacreatetime, modedatamodifier, modedatamodifydatetime, pcid, ypz, ypzw, tdsj, sjhm, dzyx, tzypz, msfs, mshj, msc, msg, ptmsg, ptmsgsfcymspj, msrq, zt) values(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)"; StringBuilder msgBuilder = new StringBuilder(); for (Map detailDataMap : detailMapList) { @@ -115,7 +121,21 @@ public class BatchAddInterviewResultModeExpand extends AbstractModeExpandJavaCod modeRightInfo.editModeDataShare(user.getUID(), formModeId, bid); getApplicantsInfo(msgBuilder, Util.null2String(detailDataMap.get("ypz")), Util.null2String(detailDataMap.get("ypzw"))); } + + // 发送邮件 + String msgContent = RecruitModeUtil.getReplaceContent(yjnr, fieldMapList, detailDataMap); + String yx = Util.null2String(detailDataMap.get("dzyx")); + String sjh = Util.null2String(detailDataMap.get("sjhm")); + if (sendEmail) { + RecruitMessageUtils.SendEmail(yx, emailTitle, msgContent); + + } + if (sendSms) { + RecruitMessageUtils.sendSMS(sjh, msgContent); + } } + + } if (StringUtils.isNotBlank(msgBuilder)) { msgBuilder.insert(0, RecruitModeUtil.getResourceNames(requestInfo.getCreatorid()) + "安排了一场面试
"); @@ -131,10 +151,6 @@ public class BatchAddInterviewResultModeExpand extends AbstractModeExpandJavaCod userIdSet.addAll(Arrays.asList(msg.split(","))); userIdSet.addAll(Arrays.asList(ptmsg.split(","))); RecruitModeUtil.messagePush(messageType, title, msgBuilder.toString(), userIdSet, user.getUID()); - - // 面试邮件、短信发送 - int billId = Util.getIntValue(requestInfo.getRequestid()); - sendMessage(billId); } } } catch (Exception e) { @@ -220,75 +236,4 @@ public class BatchAddInterviewResultModeExpand extends AbstractModeExpandJavaCod } msgBuilder.append("
"); } - - private void sendMessage(int billId) { - String querySql = RecruitModeUtil.getQuerySql("uf_jcl_plapms"); - RecordSet rs = new RecordSet(); - rs.executeQuery(querySql,billId); - String yjnr; - String yjtzmb = ""; - List interviewPersonList = new ArrayList<>(); - while (rs.next()) { - yjtzmb = Util.null2String(rs.getString("yjtzmb")); - yjnr = rs.getString("yjnr"); - - Pattern patten = Pattern.compile("\\$(.*?)\\$");//编译正则表达式 - Matcher matcher = patten.matcher(yjnr);// 指定要匹配的字符串 - StringBuffer sb = new StringBuffer(); - while (matcher.find()) { //此处find()每次被调用后,会偏移到下一个匹配 - matcher.appendReplacement(sb,Util.null2String(rs.getString(matcher.group().replace("$","")))); - } - matcher.appendTail(sb); - - interviewPersonList.add(InterviewPerson.builder() - .name(Util.null2String(rs.getString("ypz"))) - .jobName(Util.null2String(rs.getString("ypzw"))) - .time(Util.null2String(rs.getString("bssj"))) - .phone(Util.null2String(rs.getString("sjh"))) - .email(Util.null2String(rs.getString("yx"))) - .address(Util.null2String(rs.getString("bsdd"))) - .content(Util.null2String(sb)).build()); - } - - for (InterviewPerson interviewPerson : interviewPersonList) { - - Map params = new HashMap<>(); - String[] strings = yjtzmb.split(","); - for (String s : strings) { - switch (s) { - case "0": - // 邮件 - params.put("sendTo", interviewPerson.getEmail()); - params.put("emailTitle", RecruitModeUtil.getEmailTitle(s)); - params.put("emailContent", interviewPerson.getContent()); - RecruitMessageUtils.SendEmail(params); - break; - case "1": - // 短信 - params.put("receiver", interviewPerson.getPhone()); - params.put("content", interviewPerson.getContent()); - RecruitMessageUtils.sendSMS(params); - break; - default: - break; - } - } - - } - - } - - @Data - @Builder - @NoArgsConstructor - @AllArgsConstructor - private static class InterviewPerson { - String name; - String jobName; - String time; - String address; - String phone; - String email; - String content; - } } diff --git a/src/weaver/formmode/recruit/modeexpand/interview/CreateInterviewModeExpand.java b/src/weaver/formmode/recruit/modeexpand/interview/CreateInterviewModeExpand.java index 6b3d5cf..b460eaa 100644 --- a/src/weaver/formmode/recruit/modeexpand/interview/CreateInterviewModeExpand.java +++ b/src/weaver/formmode/recruit/modeexpand/interview/CreateInterviewModeExpand.java @@ -2,6 +2,7 @@ package weaver.formmode.recruit.modeexpand.interview; import com.engine.recruit.enums.InterviewOperateTypeEnum; import com.engine.recruit.util.RecruitMessageUtils; +import com.weaver.formmodel.data.model.Formfield; import org.apache.commons.lang3.StringUtils; import weaver.conn.RecordSet; import weaver.formmode.customjavacode.AbstractModeExpandJavaCodeNew; @@ -12,6 +13,7 @@ import weaver.hrm.User; import weaver.soa.workflow.request.*; import java.util.*; +import java.util.stream.Collectors; /** *

聚才林招聘

@@ -61,14 +63,31 @@ public class CreateInterviewModeExpand extends AbstractModeExpandJavaCodeNew { operateType = InterviewOperateTypeEnum.ARRANGE.getOperateType(); } InterviewOperateTypeEnum operateTypeEnum = InterviewOperateTypeEnum.getOperateType(operateType); - switch (operateTypeEnum) { - case ARRANGE: - messageType = RecruitModeUtil.getRecruitPropValue("INTERVIEW_MESSAGE_TYPE"); - title = RecruitModeUtil.getRecruitPropValue("INTERVIEW_ADD_MESSAGE_TITLE"); - arrangeInterview(user, mainDataMap); - sendMessage(billId); - default: - break; + if (operateTypeEnum == InterviewOperateTypeEnum.ARRANGE) { + messageType = RecruitModeUtil.getRecruitPropValue("INTERVIEW_MESSAGE_TYPE"); + title = RecruitModeUtil.getRecruitPropValue("INTERVIEW_ADD_MESSAGE_TITLE"); + arrangeInterview(user, mainDataMap); + String tzypz = Util.null2String(mainDataMap.get("tzypz")); + String yjnr = Util.null2String(mainDataMap.get("yjnr")); + String yjtzmb = Util.null2String(mainDataMap.get("yjtzmb")); + List sendTypeList = Arrays.asList(tzypz.split(",")); + boolean sendEmail = sendTypeList.contains("0"); + boolean sendSms = sendTypeList.contains("1"); + String emailTitle = RecruitModeUtil.getEmailTitle(yjtzmb); + + List fieldList = RecruitModeUtil.getFieldList("uf_jcl_ms"); + Map> fieldMapList = fieldList.stream().collect(Collectors.groupingBy(Formfield::getLabelName)); + // 发送邮件 + String msgContent = RecruitModeUtil.getReplaceContent(yjnr, fieldMapList, mainDataMap); + String yx = Util.null2String(mainDataMap.get("dzyx")); + String sjh = Util.null2String(mainDataMap.get("sjhm")); + if (sendEmail) { + RecruitMessageUtils.SendEmail(yx, emailTitle, msgContent); + + } + if (sendSms) { + RecruitMessageUtils.sendSMS(sjh, msgContent); + } } } @@ -111,43 +130,4 @@ public class CreateInterviewModeExpand extends AbstractModeExpandJavaCodeNew { RecruitModeUtil.messagePush(messageType, title, msgBuilder.toString(), userIdSet, user.getUID()); } - - private void sendMessage(int billId) { - String querySql = "select sjhm,dzyx,tzypz,yjnr,yjtzmb from uf_jcl_ms where id = ?"; - recordSet.executeQuery(querySql,billId); - String tzypz = ""; - String sjhm = ""; - String yjnr = ""; - String dzyx = ""; - String yjtzmb = ""; - while (recordSet.next()) { - tzypz = Util.null2String(recordSet.getString("tzypz")); - sjhm = Util.null2String(recordSet.getString("sjhm")); - yjnr = Util.null2String(recordSet.getString("yjnr")); - dzyx = Util.null2String(recordSet.getString("dzyx")); - yjtzmb = Util.null2String(recordSet.getString("yjtzmb")); - } - - Map params = new HashMap<>(); - String[] ways = tzypz.split(","); - for (String way : ways) { - switch (way) { - case "0": - // 邮件 - params.put("sendTo", dzyx); - params.put("emailTitle", RecruitModeUtil.getEmailTitle(yjtzmb)); - params.put("emailContent", yjnr); - RecruitMessageUtils.SendEmail(params); - break; - case "1": - // 短信 - params.put("receiver", sjhm); - params.put("content", yjnr); - RecruitMessageUtils.sendSMS(params); - break; - default: - break; - } - } - } } diff --git a/src/weaver/formmode/recruit/modeexpand/written/BatchAddWrittenResultModeExpand.java b/src/weaver/formmode/recruit/modeexpand/written/BatchAddWrittenResultModeExpand.java index 81844ca..ee5500d 100644 --- a/src/weaver/formmode/recruit/modeexpand/written/BatchAddWrittenResultModeExpand.java +++ b/src/weaver/formmode/recruit/modeexpand/written/BatchAddWrittenResultModeExpand.java @@ -93,17 +93,17 @@ public class BatchAddWrittenResultModeExpand extends AbstractModeExpandJavaCodeN rs.executeUpdate(insertSql, objects); RecruitRecordSet.refreshRight(uuid, MODE_TABLE_NAME, formModeId, user.getUID()); } - } - // 发送邮件 - String msgContent = RecruitModeUtil.getReplaceContent(yjnr, fieldMapList, detailDataMap); - String yx = Util.null2String(detailDataMap.get("yx")); - String sjh = Util.null2String(detailDataMap.get("sjh")); - if (sendEmail) { - RecruitMessageUtils.SendEmail(yx, emailTitle, msgContent); + // 发送邮件 + String msgContent = RecruitModeUtil.getReplaceContent(yjnr, fieldMapList, detailDataMap); + String yx = Util.null2String(detailDataMap.get("yx")); + String sjh = Util.null2String(detailDataMap.get("sjh")); + if (sendEmail) { + RecruitMessageUtils.SendEmail(yx, emailTitle, msgContent); - } - if (sendSms) { - RecruitMessageUtils.sendSMS(sjh, msgContent); + } + if (sendSms) { + RecruitMessageUtils.sendSMS(sjh, msgContent); + } } } }