package weaver.formmode.recruit.modeexpand.offer; import com.engine.recruit.util.RecruitMessageUtils; import weaver.conn.RecordSet; import weaver.formmode.customjavacode.AbstractModeExpandJavaCodeNew; import weaver.general.Util; import weaver.hrm.User; import weaver.soa.workflow.request.MainTableInfo; import weaver.soa.workflow.request.Property; import weaver.soa.workflow.request.RequestInfo; import java.util.HashMap; import java.util.Map; public class CreateOfferModeExpand extends AbstractModeExpandJavaCodeNew { /** * 消息来源ID */ private String messageType; /** * 消息提醒标题 */ private String title; private final RecordSet recordSet = new RecordSet(); @Override public Map doModeExpand(Map params) { Map result = new HashMap<>(); try { //数据id int billId; //模块id int modeId; RequestInfo requestInfo = (RequestInfo) params.get("RequestInfo"); User user = (User) params.get("user"); if (requestInfo != null) { billId = Util.getIntValue(requestInfo.getRequestid()); modeId = Util.getIntValue(requestInfo.getWorkflowid()); if (billId > 0 && modeId > 0) { MainTableInfo mainTableInfo = requestInfo.getMainTableInfo(); Property[] properties = mainTableInfo.getProperty(); Map mainDataMap = new HashMap<>(16); for (Property property : properties) { mainDataMap.put(property.getName(), property.getValue()); } // 发送信息 sendMessage(billId); } } } catch (Exception e) { result.put("errmsg", "自定义出错信息"); result.put("flag", "false"); } return result; } private void sendMessage(int billId) { String querySql = "select sjhm,dzyx,yjtzmb,tznr,tzypz from uf_jcl_offer where id = ?"; recordSet.executeQuery(querySql,billId); String sjhm = ""; String dzyx = ""; String yjtzmb = ""; String tznr = ""; String tzypz = ""; while (recordSet.next()) { sjhm = Util.null2String(recordSet.getString("sjhm")); dzyx = Util.null2String(recordSet.getString("dzyx")); yjtzmb = Util.null2String(recordSet.getString("yjtzmb")); tznr = Util.null2String(recordSet.getString("tznr")); tzypz = Util.null2String(recordSet.getString("tzypz")); } Map params = new HashMap<>(); String[] ways = tzypz.split(","); for (String way : ways) { switch (way) { case "0": // 邮件 params.put("sendTo", dzyx); params.put("emailTitle", getEmailTitle(yjtzmb)); params.put("emailContent", tznr); RecruitMessageUtils.SendEmail(params); break; case "1": // 短信 params.put("receiver", sjhm); params.put("content", tznr); RecruitMessageUtils.sendSMS(params); break; default: break; } } } /** * 获取邮件模板主题 * @param id */ private String getEmailTitle (String id) { String emailTitle = ""; recordSet.executeQuery("select yjzt from uf_jcl_yjtzmb where id = ?", id); if (recordSet.next()) { emailTitle = recordSet.getString("yjzt"); } return emailTitle; } }