generated from dxfeng/secondev-chapanda-feishu
113 lines
3.8 KiB
Java
113 lines
3.8 KiB
Java
|
|
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<String, String> doModeExpand(Map<String, Object> params) {
|
||
|
|
Map<String, String> 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<String, Object> 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<String,Object> 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;
|
||
|
|
}
|
||
|
|
}
|