weaver-hrm-recruit/src/com/engine/recruit/enums/RecordOperateEnum.java

381 lines
16 KiB
Java
Raw Normal View History

2023-11-02 14:26:03 +08:00
package com.engine.recruit.enums;
2023-11-03 14:22:47 +08:00
import com.engine.recruit.conn.ApplicantCommonInfo;
import com.engine.recruit.entity.record.ApplicantRecordPo;
import com.engine.recruit.entity.recruitflow.po.RecruitStepPo;
import weaver.formmode.recruit.modeexpand.util.RecruitModeUtil;
import weaver.general.Util;
import weaver.hrm.User;
import java.util.Map;
2023-11-02 14:26:03 +08:00
/**
* @author:dxfeng
* @createTime: 2023/11/02
* @version: 1.0
*/
2023-11-03 14:22:47 +08:00
public enum RecordOperateEnum implements RecordOperateAdapter {
2023-11-02 14:26:03 +08:00
/**
* 应聘过程操作类型
*/
2023-11-03 14:22:47 +08:00
RESUME_SUBMISSION("resumeSubmission", "简历投递", "简历投递", recordPo -> {
recordPo.setPcId(recordPo.getBillId());
recordPo.setContent("");
}),
ELIMINATE("eliminate", "淘汰", "淘汰", recordPo -> {
User user = recordPo.getUser();
RecruitStepPo currentStep = ApplicantCommonInfo.getCurrentStep(recordPo.getBillId());
String content = user.getLastname() + "淘汰,操作阶段:" + currentStep.getDescription();
recordPo.setPcId(recordPo.getBillId());
recordPo.setContent(content);
}),
TRANSFER_STAGE("transferStage", "转移阶段", "转移阶段", recordPo -> {
Map<String, Object> otherParam = recordPo.getOtherParam();
String sourceStep = Util.null2String(otherParam.get("sourceStep"));
String targetStep = Util.null2String(otherParam.get("targetStep"));
User user = recordPo.getUser();
String content = user.getLastname() + "转移阶段,应聘阶段:“" + sourceStep + "”变更为“" + targetStep + "";
recordPo.setPcId(recordPo.getBillId());
recordPo.setContent(content);
}),
ARCHIVE_TALENT_POOL("archiveTalentPool", "归档人才库", "归档人才库", recordPo -> {
Map<String, Object> otherParam = recordPo.getOtherParam();
String gdyy = Util.null2String(otherParam.get("gdyy"));
String gdxxyy = Util.null2String(otherParam.get("gdxxyy"));
int formId = ApplicantCommonInfo.getFormIdByTableName("uf_jcl_yppc");
String selectName = ApplicantCommonInfo.getSelectName(String.valueOf(formId), "gdyy", gdyy);
User user = recordPo.getUser();
RecruitStepPo currentStep = ApplicantCommonInfo.getCurrentStep(recordPo.getBillId());
String content = user.getLastname() + "归档人才库,操作阶段:" + currentStep.getDescription() + ",归档原因:" + selectName + ",归档详细原因:" + gdxxyy;
recordPo.setPcId(recordPo.getBillId());
recordPo.setContent(content);
}),
JOIN_BLACKLIST("joinBlacklist", "加入黑名单", "加入黑名单", recordPo -> {
User user = recordPo.getUser();
RecruitStepPo currentStep = ApplicantCommonInfo.getCurrentStep(recordPo.getBillId());
String content = user.getLastname() + "加入黑名单,操作阶段:" + currentStep.getDescription();
recordPo.setPcId(recordPo.getBillId());
recordPo.setContent(content);
}),
ADD_SCREEN("addScreen", "部门筛选反馈", "部门筛选反馈", recordPo -> {
Map<String, Object> otherParam = recordPo.getOtherParam();
String jg = Util.null2String(otherParam.get("jg"));
String pj = Util.null2String(otherParam.get("pj"));
String ypz = Util.null2String(otherParam.get("ypz"));
String fkr = Util.null2String(otherParam.get("fkr"));
2023-11-04 18:55:52 +08:00
String createName = Util.null2String(otherParam.get("createName"));
2023-11-03 14:22:47 +08:00
String resourceNames = RecruitModeUtil.getResourceNames(fkr);
String selectName = ApplicantCommonInfo.getSelectName(recordPo.getFormId(), "jg", jg);
2023-11-04 18:55:52 +08:00
String content = "创建人:" + createName + ",反馈人:" + resourceNames + ",结果:" + selectName + ",评价:" + pj;
2023-11-03 14:22:47 +08:00
recordPo.setContent(content);
recordPo.setPcId(ypz);
recordPo.autoCreateLink();
}),
UPDATE_SCREEN("updateScreen", "修改筛选反馈", "部门筛选反馈", recordPo -> {
User user = recordPo.getUser();
Map<String, Object> otherParam = recordPo.getOtherParam();
String jg = Util.null2String(otherParam.get("jg"));
String pj = Util.null2String(otherParam.get("pj"));
String ypz = Util.null2String(otherParam.get("ypz"));
String fkr = Util.null2String(otherParam.get("fkr"));
String resourceNames = RecruitModeUtil.getResourceNames(fkr);
String selectName = ApplicantCommonInfo.getSelectName(recordPo.getFormId(), "jg", jg);
String content = "更新关联数据,最近修改人:" + user.getLastname() + ",反馈人:" + resourceNames + ",结果:" + selectName + ",评价:" + pj;
recordPo.setContent(content);
recordPo.autoCreateLink();
recordPo.setPcId(ypz);
}),
DELETE_SCREEN("deleteScreen", "删除筛选反馈", "部门筛选反馈", recordPo -> {
2023-11-04 18:55:52 +08:00
User user = recordPo.getUser();
Map<String, Object> otherParam = recordPo.getOtherParam();
String ypz = Util.null2String(otherParam.get("ypz"));
String content = user.getLastname() + "删除/隐藏关联记录数据";
recordPo.setContent(content);
recordPo.setPcId(ypz);
2023-11-03 14:22:47 +08:00
}),
ADD_INTERVIEW_RESULT("addInterviewResult", "面试评价反馈", "面试评价反馈", recordPo -> {
2023-11-04 18:55:52 +08:00
User user = recordPo.getUser();
Map<String, Object> otherParam = recordPo.getOtherParam();
String msrq = Util.null2String(otherParam.get("msrq"));
String jg = Util.null2String(otherParam.get("jg"));
String pj = Util.null2String(otherParam.get("pj"));
String ypz = Util.null2String(otherParam.get("ypz"));
String msg = Util.null2String(otherParam.get("msg"));
String createName = Util.null2String(otherParam.get("createName"));
String msgNames = RecruitModeUtil.getResourceNames(msg);
String selectName = ApplicantCommonInfo.getSelectName(recordPo.getFormId(), "jg", jg);
String content = "创建人:" + createName + ",面试官:" + msgNames + " ,面试时间:" + msrq + ",反馈人:" + user.getLastname() + " 结果:" + selectName + " ,评价:" + pj;
recordPo.setContent(content);
recordPo.setPcId(ypz);
recordPo.autoCreateLink();
2023-11-03 14:22:47 +08:00
}),
UPDATE_INTERVIEW_RESULT("updateInterviewResult", "修改面试评价反馈", "面试评价反馈", recordPo -> {
2023-11-04 18:55:52 +08:00
User user = recordPo.getUser();
Map<String, Object> otherParam = recordPo.getOtherParam();
String msrq = Util.null2String(otherParam.get("msrq"));
String jg = Util.null2String(otherParam.get("jg"));
String pj = Util.null2String(otherParam.get("pj"));
String ypz = Util.null2String(otherParam.get("ypz"));
String msg = Util.null2String(otherParam.get("msg"));
String fkr = Util.null2String(otherParam.get("fkr"));
String fkrNames = RecruitModeUtil.getResourceNames(fkr);
String msgNames = RecruitModeUtil.getResourceNames(msg);
String selectName = ApplicantCommonInfo.getSelectName(recordPo.getFormId(), "jg", jg);
String content = "更新关联数据,最近修改人:" + user.getLastname() + "面试官:" + msgNames + ",面试时间:" + msrq + ",反馈人:" + fkrNames + " 结果:" + selectName + ",评价:" + pj;
recordPo.setContent(content);
recordPo.autoCreateLink();
recordPo.setPcId(ypz);
2023-11-03 14:22:47 +08:00
}),
DELETE_INTERVIEW("deleteInterview", "删除面试", "面试评价反馈", recordPo -> {
2023-11-04 21:00:27 +08:00
User user = recordPo.getUser();
Map<String, Object> otherParam = recordPo.getOtherParam();
String ypz = Util.null2String(otherParam.get("ypz"));
String content = user.getLastname() + "删除/隐藏关联记录数据";
recordPo.setContent(content);
recordPo.setPcId(ypz);
2023-11-03 14:22:47 +08:00
}),
ADD_WRITTEN_RESULT("addWrittenResult", "笔试结果录入", "笔试", recordPo -> {
2023-11-04 21:00:27 +08:00
User user = recordPo.getUser();
Map<String, Object> otherParam = recordPo.getOtherParam();
String bsmc = Util.null2String(otherParam.get("bsmc"));
String bsjg = Util.null2String(otherParam.get("bsjg"));
String bscj = Util.null2String(otherParam.get("bscj"));
String ypz = Util.null2String(otherParam.get("ypz"));
String createName = Util.null2String(otherParam.get("createName"));
String selectName = ApplicantCommonInfo.getSelectName(recordPo.getFormId(), "bsjg", bsjg);
String content = "创建人:" + createName + ",笔试名称:" + bsmc + " ,笔试结果:" + selectName + " ,笔试成绩:" + bscj;
recordPo.setContent(content);
recordPo.setPcId(ypz);
recordPo.autoCreateLink();
2023-11-03 14:22:47 +08:00
}),
UPDATE_WRITTEN_RESULT("updateWrittenResult", "编辑笔试结果", "笔试", recordPo -> {
2023-11-04 21:00:27 +08:00
User user = recordPo.getUser();
Map<String, Object> otherParam = recordPo.getOtherParam();
String bsmc = Util.null2String(otherParam.get("bsmc"));
String bsjg = Util.null2String(otherParam.get("bsjg"));
String bscj = Util.null2String(otherParam.get("bscj"));
String ypz = Util.null2String(otherParam.get("ypz"));
String selectName = ApplicantCommonInfo.getSelectName(recordPo.getFormId(), "bsjg", bsjg);
String content = "更新关联数据:最近修改人:" + user.getLastname() + ",笔试名称:" + bsmc + ",笔试结果:" + selectName + " ,笔试成绩" + bscj;
recordPo.setContent(content);
recordPo.autoCreateLink();
recordPo.setPcId(ypz);
2023-11-03 14:22:47 +08:00
}),
DELETE_WRITTEN_RESULT("deleteWrittenResult", "删除笔试结果", "笔试", recordPo -> {
2023-11-04 21:00:27 +08:00
User user = recordPo.getUser();
Map<String, Object> otherParam = recordPo.getOtherParam();
String ypz = Util.null2String(otherParam.get("ypz"));
String content = user.getLastname() + "删除/隐藏关联记录数据";
recordPo.setContent(content);
recordPo.setPcId(ypz);
2023-11-03 14:22:47 +08:00
}),
ADD_SALARY_NEGOTIATION("addSalaryNegotiation", "薪酬谈判录入", "薪酬谈判", recordPo -> {
2023-11-04 21:32:14 +08:00
User user = recordPo.getUser();
Map<String, Object> otherParam = recordPo.getOtherParam();
String tpjg = Util.null2String(otherParam.get("tpjg"));
String ypz = Util.null2String(otherParam.get("ypz"));
String createName = Util.null2String(otherParam.get("createName"));
String selectName = ApplicantCommonInfo.getSelectName(recordPo.getFormId(), "tpjg", tpjg);
String content = "创建人:" + createName + ",谈判结果:" + selectName;
recordPo.setContent(content);
recordPo.setPcId(ypz);
recordPo.autoCreateLink();
2023-11-03 14:22:47 +08:00
}),
UPDATE_SALARY_NEGOTIATION("updateSalaryNegotiation", "修改薪酬谈判记录", "薪酬谈判", recordPo -> {
2023-11-04 21:32:14 +08:00
User user = recordPo.getUser();
Map<String, Object> otherParam = recordPo.getOtherParam();
String tpjg = Util.null2String(otherParam.get("tpjg"));
String ypz = Util.null2String(otherParam.get("ypz"));
String selectName = ApplicantCommonInfo.getSelectName(recordPo.getFormId(), "tpjg", tpjg);
String content = "更新关联数据:最近修改人:" + user.getLastname() + ",谈判结果:" + selectName;
recordPo.setContent(content);
recordPo.autoCreateLink();
recordPo.setPcId(ypz);
2023-11-03 14:22:47 +08:00
}),
DELETE_SALARY_NEGOTIATION("deleteSalaryNegotiation", "删除薪酬谈判记录", "薪酬谈判", recordPo -> {
2023-11-04 21:32:14 +08:00
User user = recordPo.getUser();
Map<String, Object> otherParam = recordPo.getOtherParam();
String ypz = Util.null2String(otherParam.get("ypz"));
String content = user.getLastname() + "删除/隐藏关联记录数据";
recordPo.setContent(content);
recordPo.setPcId(ypz);
2023-11-03 14:22:47 +08:00
}),
ADD_BACK_TONE("addBackTone", "背调录入", "背调", recordPo -> {
2023-11-04 21:47:04 +08:00
User user = recordPo.getUser();
Map<String, Object> otherParam = recordPo.getOtherParam();
String dcjg = Util.null2String(otherParam.get("dcjg"));
String ypz = Util.null2String(otherParam.get("ypz"));
String dcdw = Util.null2String(otherParam.get("dcdw"));
String createName = Util.null2String(otherParam.get("createName"));
String selectName = ApplicantCommonInfo.getSelectName(recordPo.getFormId(), "dcjg", dcjg);
String content = "创建人:" + createName + ",调查结果:" + selectName + " ,调查单位:" + dcdw;
recordPo.setContent(content);
recordPo.setPcId(ypz);
recordPo.autoCreateLink();
2023-11-03 14:22:47 +08:00
}),
UPDATE_BACK_TONE("updateBackTone", "修改背调记录", "背调", recordPo -> {
2023-11-04 21:47:04 +08:00
User user = recordPo.getUser();
Map<String, Object> otherParam = recordPo.getOtherParam();
String dcjg = Util.null2String(otherParam.get("dcjg"));
String ypz = Util.null2String(otherParam.get("ypz"));
String dcdw = Util.null2String(otherParam.get("dcdw"));
String selectName = ApplicantCommonInfo.getSelectName(recordPo.getFormId(), "dcjg", dcjg);
String content = "更新关联数据:最近修改人:" + user.getLastname() + ",调查结果:" + selectName + " ,调查单位" + dcdw;
recordPo.setContent(content);
recordPo.autoCreateLink();
recordPo.setPcId(ypz);
2023-11-03 14:22:47 +08:00
}),
DELETE_BACK_TONE("deleteBackTone", "删除背调记录", "背调", recordPo -> {
2023-11-04 21:47:04 +08:00
User user = recordPo.getUser();
Map<String, Object> otherParam = recordPo.getOtherParam();
String ypz = Util.null2String(otherParam.get("ypz"));
String content = user.getLastname() + "删除/隐藏关联记录数据";
recordPo.setContent(content);
recordPo.setPcId(ypz);
2023-11-03 14:22:47 +08:00
}),
CREATE_OFFER("createOffer", "创建offer", "创建offer", recordPo -> {
}),
SEND_OFFER("sendOffer", "发送offer", "发送offer", recordPo -> {
}),
OFFER_FEEDBACK("offerFeedback", "offer反馈", "offer反馈", recordPo -> {
}),
PENDING_EMPLOYMENT("pendingEmployment", "进入待入职", "进入待入职", recordPo -> {
}),
ENTRY_PROCESS("entryProcess", "入职流程", "入职流程", recordPo -> {
}),
INFO_COLLECT("infoCollect", "信息采集", "信息采集", recordPo -> {
}),
CANCEL_ENTRY("cancelEntry", "取消入职", "取消入职", recordPo -> {
}),
HANDLE_ENTRY("handleEntry", "办理入职", "办理入职", recordPo -> {
}),
ADD_REMARK("addRemark", "新建备注", "备注", recordPo -> {
}),
UPDATE_REMARK("updateRemark", "编辑备注", "备注", recordPo -> {
}),
DELETE_REMARK("deleteRemark", "删除备注", "备注", recordPo -> {
});
RecordOperateEnum(String operateType, String operateName, String showName, RecordOperateAdapter adapter) {
2023-11-02 14:26:03 +08:00
this.operateName = operateName;
this.operateType = operateType;
this.showName = showName;
2023-11-03 14:22:47 +08:00
this.adapter = adapter;
2023-11-02 14:26:03 +08:00
}
public static RecordOperateEnum getOperateEnum(String operateType) {
for (RecordOperateEnum item : RecordOperateEnum.values()) {
if (item.operateType.equalsIgnoreCase(operateType)) {
return item;
}
}
2023-11-04 18:55:52 +08:00
return null;
2023-11-02 14:26:03 +08:00
}
private String operateName;
private String operateType;
private String showName;
2023-11-03 14:22:47 +08:00
private RecordOperateAdapter adapter;
2023-11-02 14:26:03 +08:00
public String getOperateName() {
return operateName;
}
public String getOperateType() {
return operateType;
}
public String getShowName() {
return showName;
}
public void setOperateName(String operateName) {
this.operateName = operateName;
}
public void setOperateType(String operateType) {
this.operateType = operateType;
}
public void setShowName(String showName) {
this.showName = showName;
}
2023-11-03 14:22:47 +08:00
@Override
public void createOperateRecord(ApplicantRecordPo recordPo) {
adapter.createOperateRecord(recordPo);
}
2023-11-02 14:26:03 +08:00
}