package weaver.formmode.recruit.modeexpand.interview;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import weaver.common.DateUtil;
import weaver.conn.RecordSet;
import weaver.formmode.customjavacode.AbstractModeExpandJavaCodeNew;
import weaver.formmode.recruit.modeexpand.util.RecruitModeUtil;
import weaver.formmode.setup.ModeRightInfo;
import weaver.general.BaseBean;
import weaver.general.Util;
import weaver.soa.workflow.request.*;
import java.io.UnsupportedEncodingException;
import java.util.*;
/**
*
聚才林招聘
* 批量面试推送面试评价
*
* @author:dxfeng
* @createTime: 2023/09/22
* @version: 1.0
*/
public class BatchAddInterviewResultModeExpand extends AbstractModeExpandJavaCodeNew {
private static final String MODE_TABLE_NAME = "uf_jcl_ms";
/**
* 消息来源ID
*/
private final String messageType;
/**
* 消息提醒标题
*/
private final String title;
public BatchAddInterviewResultModeExpand() throws UnsupportedEncodingException {
super();
messageType = RecruitModeUtil.getRecruitPropValue("INTERVIEW_MESSAGE_TYPE");
title = RecruitModeUtil.getRecruitPropValue("INTERVIEW_ADD_MESSAGE_TITLE");
}
@Override
public Map doModeExpand(Map param) {
Map result = new HashMap<>();
try {
RequestInfo requestInfo = (RequestInfo) param.get("RequestInfo");
if (requestInfo != null) {
int formModeId = -1;
int formId = -1;
RecordSet rs = new RecordSet();
rs.executeQuery("select id from workflow_bill where tablename = ?", MODE_TABLE_NAME);
if (rs.next()) {
formId = rs.getInt("id");
}
rs.executeQuery("select id from modeinfo where formid =?", formId);
if (rs.next()) {
formModeId = rs.getInt("id");
}
MainTableInfo mainTableInfo = requestInfo.getMainTableInfo();
Property[] properties = mainTableInfo.getProperty();
Map mainDataMap = new HashMap<>();
for (Property property : properties) {
mainDataMap.put(property.getName(), RecruitModeUtil.parseBlankToNull(property.getValue()));
}
// 填充建模数据基本信息
mainDataMap.put("formmodeid", formModeId);
mainDataMap.put("modedatacreater", requestInfo.getCreatorid());
String dateTime = DateUtil.getFullDate();
String[] split = dateTime.split(" ");
mainDataMap.put("modedatacreatedate", split[0]);
mainDataMap.put("modedatacreatetime", split[1]);
mainDataMap.put("modedatamodifier", requestInfo.getCreatorid());
mainDataMap.put("modedatamodifydatetime", dateTime);
mainDataMap.put("modedatacreatertype", "0");
//mainDataMap.put("bsapid", requestInfo.getRequestid());
List