package weaver.formmode.recruit.modeexpand.departmentscreening;
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.ApplicantCommonInfo;
import weaver.formmode.recruit.modeexpand.util.RecruitModeUtil;
import weaver.formmode.setup.ModeRightInfo;
import weaver.general.BaseBean;
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.*;
/**
*
聚才林招聘
* 单一发起部门筛选,转部门筛选反馈数据
*
* @author:dxfeng
* @createTime: 2023/09/18
* @version: 1.0
*/
public class SingleAddDeptScreeningModeExpand extends AbstractModeExpandJavaCodeNew {
/**
* JCL_部门筛选反馈(uf_jcl_bmsxfk)
*/
private static final String MODE_TABLE_NAME = "uf_jcl_bmsxfk";
@Override
public Map doModeExpand(Map param) {
Map result = new HashMap<>();
try {
RequestInfo requestInfo = (RequestInfo) param.get("RequestInfo");
if (requestInfo != null) {
Map dataMap = new HashMap<>();
MainTableInfo mainTableInfo = requestInfo.getMainTableInfo();
Property[] properties = mainTableInfo.getProperty();
for (Property property : properties) {
dataMap.put(property.getName(), property.getValue());
}
int formModeId = -1;
RecordSet rs = new RecordSet();
rs.executeQuery("select id from modeinfo where formid =( select id from workflow_bill where tablename = ? )", MODE_TABLE_NAME);
if (rs.next()) {
formModeId = rs.getInt("id");
}
User user = (User) param.get("user");
// 部门筛选ID
dataMap.put("bmsxid", requestInfo.getRequestid());
// 状态
dataMap.put("zt", "0");
// 填充建模数据基本信息
dataMap.put("formmodeid", formModeId);
dataMap.put("modedatacreater", user.getUID());
String dateTime = DateUtil.getFullDate();
String[] split = dateTime.split(" ");
dataMap.put("modedatacreatedate", split[0]);
dataMap.put("modedatacreatetime", split[1]);
dataMap.put("modedatamodifier", user.getUID());
dataMap.put("modedatamodifydatetime", dateTime);
dataMap.put("modedatacreatertype", "0");
List> paramList = new ArrayList<>();
buildParamList(dataMap, paramList);
if (CollectionUtils.isNotEmpty(paramList)) {
String insertSql = "insert into " + MODE_TABLE_NAME + " (modeuuid, modedatacreatertype, formmodeid, modedatacreater, modedatacreatedate, modedatacreatetime, modedatamodifier, modedatamodifydatetime, bmsxid, ypz, ypzw, tdsj, zt, pcid, fkr) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)";
for (List