generated from dxfeng/secondev-chapanda-feishu
ADD-应聘者列表卡片接口
This commit is contained in:
parent
ec6a4d02c9
commit
2a78b11d99
|
|
@ -1,9 +1,46 @@
|
|||
package com.engine.recruit.entity.card.process;
|
||||
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
|
||||
/**
|
||||
* @author:dxfeng
|
||||
* @createTime: 2024/08/07
|
||||
* @version: 1.0
|
||||
*/
|
||||
public class BackProcess {
|
||||
public static final String ICON_NAME = "back.png";
|
||||
public static final String TITLE = "最近背调";
|
||||
|
||||
private String dcrq;
|
||||
private String dcjg;
|
||||
|
||||
public String getDcrq() {
|
||||
return dcrq;
|
||||
}
|
||||
|
||||
public void setDcrq(String dcrq) {
|
||||
this.dcrq = dcrq;
|
||||
}
|
||||
|
||||
public String getDcjg() {
|
||||
if ("0".equals(dcjg)) {
|
||||
return "通过";
|
||||
} else if ("1".equals(dcjg)) {
|
||||
return "不通过";
|
||||
}
|
||||
return "待定";
|
||||
}
|
||||
|
||||
public void setDcjg(String dcjg) {
|
||||
this.dcjg = dcjg;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
if (StringUtils.isBlank(dcjg)) {
|
||||
return "暂无背调结果";
|
||||
} else {
|
||||
return getDcrq() + " " + getDcjg();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,14 +1,96 @@
|
|||
package com.engine.recruit.entity.card.process;
|
||||
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import weaver.general.BaseBean;
|
||||
import weaver.hrm.resource.ResourceComInfo;
|
||||
|
||||
/**
|
||||
* @author:dxfeng
|
||||
* @createTime: 2024/08/07
|
||||
* @version: 1.0
|
||||
*/
|
||||
public class InterviewProcess {
|
||||
public static final String ICON_NAME = "written.png";
|
||||
public static final String TITLE = "最近笔试";
|
||||
public static final String ICON_NAME = "interview.png";
|
||||
public static final String TITLE = "最近面试";
|
||||
|
||||
private String zt;
|
||||
private String msrq;
|
||||
private String msg;
|
||||
private String ptmsg;
|
||||
private String jg;
|
||||
|
||||
|
||||
public String getZt() {
|
||||
if ("0".equals(zt)) {
|
||||
return "待面试";
|
||||
} else if ("1".equals(zt)) {
|
||||
return "已反馈";
|
||||
}
|
||||
return "已取消";
|
||||
}
|
||||
|
||||
public void setZt(String zt) {
|
||||
this.zt = zt;
|
||||
}
|
||||
|
||||
public String getMsrq() {
|
||||
return msrq;
|
||||
}
|
||||
|
||||
public void setMsrq(String msrq) {
|
||||
this.msrq = msrq;
|
||||
}
|
||||
|
||||
public String getMsg() {
|
||||
try {
|
||||
String lastnames = new ResourceComInfo().getLastnames(msg);
|
||||
if (StringUtils.isNotBlank(lastnames)) {
|
||||
return "面试官:" + lastnames;
|
||||
}
|
||||
} catch (Exception e) {
|
||||
new BaseBean().writeLog("人员姓名转换失败", e);
|
||||
}
|
||||
return "";
|
||||
}
|
||||
|
||||
public void setMsg(String msg) {
|
||||
this.msg = msg;
|
||||
}
|
||||
|
||||
public String getPtmsg() {
|
||||
try {
|
||||
String lastnames = new ResourceComInfo().getLastnames(ptmsg);
|
||||
if (StringUtils.isNotBlank(lastnames)) {
|
||||
return "陪同面试官:" + lastnames;
|
||||
}
|
||||
} catch (Exception e) {
|
||||
new BaseBean().writeLog("人员姓名转换失败", e);
|
||||
}
|
||||
return "";
|
||||
}
|
||||
|
||||
public void setPtmsg(String ptmsg) {
|
||||
this.ptmsg = ptmsg;
|
||||
}
|
||||
|
||||
public String getJg() {
|
||||
if ("0".equals(jg)) {
|
||||
return "通过";
|
||||
} else if ("1".equals(jg)) {
|
||||
return "不通过";
|
||||
}
|
||||
return "待定";
|
||||
}
|
||||
|
||||
public void setJg(String jg) {
|
||||
this.jg = jg;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
if ("0".equals(zt)) {
|
||||
return getMsrq() + " " + getZt() + " (" + getMsg() + ")";
|
||||
}
|
||||
return getMsrq() + " " + getJg() + " (" + getMsg() + ")";
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,9 +1,59 @@
|
|||
package com.engine.recruit.entity.card.process;
|
||||
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
|
||||
/**
|
||||
* @author:dxfeng
|
||||
* @createTime: 2024/08/07
|
||||
* @version: 1.0
|
||||
*/
|
||||
public class OfferProcess {
|
||||
public static final String ICON_NAME = "offer.png";
|
||||
public static final String TITLE = "offer状态";
|
||||
|
||||
private String zt;
|
||||
private String fksj;
|
||||
|
||||
public String getZt() {
|
||||
String ztStr = "";
|
||||
if (StringUtils.isNotBlank(zt)) {
|
||||
switch (zt) {
|
||||
case "0":
|
||||
ztStr = "未发送";
|
||||
break;
|
||||
case "1":
|
||||
ztStr = "已发送待反馈";
|
||||
break;
|
||||
case "2":
|
||||
ztStr = "已拒绝";
|
||||
break;
|
||||
case "3":
|
||||
ztStr = "已接受";
|
||||
break;
|
||||
case "5":
|
||||
ztStr = "逾期未回复";
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
return ztStr;
|
||||
}
|
||||
|
||||
public void setZt(String zt) {
|
||||
this.zt = zt;
|
||||
}
|
||||
|
||||
public String getFksj() {
|
||||
return fksj;
|
||||
}
|
||||
|
||||
public void setFksj(String fksj) {
|
||||
this.fksj = fksj;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return getZt() + " " + getFksj();
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,9 +1,46 @@
|
|||
package com.engine.recruit.entity.card.process;
|
||||
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
|
||||
/**
|
||||
* @author:dxfeng
|
||||
* @createTime: 2024/08/07
|
||||
* @version: 1.0
|
||||
*/
|
||||
public class SalaryProcess {
|
||||
public static final String ICON_NAME = "salray.png";
|
||||
public static final String TITLE = "最近薪酬谈判";
|
||||
|
||||
private String tpsj;
|
||||
private String tpjg;
|
||||
|
||||
public String getTpsj() {
|
||||
return tpsj;
|
||||
}
|
||||
|
||||
public void setTpsj(String tpsj) {
|
||||
this.tpsj = tpsj;
|
||||
}
|
||||
|
||||
public String getTpjg() {
|
||||
if ("0".equals(tpjg)) {
|
||||
return "成功";
|
||||
} else if ("1".equals(tpjg)) {
|
||||
return "失败";
|
||||
}
|
||||
return "待定";
|
||||
}
|
||||
|
||||
public void setTpjg(String tpjg) {
|
||||
this.tpjg = tpjg;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
if (StringUtils.isBlank(tpjg)) {
|
||||
return "暂无薪酬谈判结果";
|
||||
} else {
|
||||
return getTpsj() + " " + getTpjg();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3,8 +3,7 @@ package com.engine.recruit.service.impl;
|
|||
import com.engine.core.impl.Service;
|
||||
import com.engine.recruit.conn.*;
|
||||
import com.engine.recruit.entity.card.*;
|
||||
import com.engine.recruit.entity.card.process.ScreenProcess;
|
||||
import com.engine.recruit.entity.card.process.WrittenProcess;
|
||||
import com.engine.recruit.entity.card.process.*;
|
||||
import com.engine.recruit.entity.record.ApplicantRecordPo;
|
||||
import com.engine.recruit.enums.ApplicantOperateEnum;
|
||||
import com.engine.recruit.enums.ApplicationStatusEnum;
|
||||
|
|
@ -24,6 +23,7 @@ import weaver.hrm.resource.ResourceComInfo;
|
|||
|
||||
import java.io.InputStream;
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* @author:dxfeng
|
||||
|
|
@ -469,6 +469,8 @@ public class ApplicantResumeServiceImpl extends Service implements ApplicantResu
|
|||
buildSalaryProcess(id, rs, recruitProcessList);
|
||||
// offer状态:若未产生数据则不显示,若有数据了,则显示offer状态,若反馈时间有数值,则显示,没数值则不现实
|
||||
buildOfferProcess(id, rs, recruitProcessList);
|
||||
|
||||
recruitProcessList = recruitProcessList.stream().sorted(Comparator.comparing(RecruitProcess::getCreateDateTime)).collect(Collectors.toList());
|
||||
resumeCardInfo.setRecruitProcess(recruitProcessList);
|
||||
|
||||
|
||||
|
|
@ -524,6 +526,7 @@ public class ApplicantResumeServiceImpl extends Service implements ApplicantResu
|
|||
|
||||
/**
|
||||
* 最近笔试:若未发起,则不显示,若有记录但是无分数和结果的,显示“暂无得分结果”;若有结果则显示“得分、结果”;若存在多条,则显示最新的数据;若存在多条则取最新的【笔试时间】
|
||||
*
|
||||
* @param id
|
||||
* @param rs
|
||||
* @param recruitProcessList
|
||||
|
|
@ -556,47 +559,133 @@ public class ApplicantResumeServiceImpl extends Service implements ApplicantResu
|
|||
|
||||
/**
|
||||
* 最近面试:若未发起,则不显示,若有记录但是是“待面试”,显示“面试时间、待面试、面试官”;若有结果则显示“面试时间、结果、面试官”;若存在多条,则显示最新的数据;若存在多条则取最新的【面试时间】
|
||||
*
|
||||
* @param id
|
||||
* @param rs
|
||||
* @param recruitProcessList
|
||||
*/
|
||||
private void buildInterviewProcess(String id, RecordSet rs, List<RecruitProcess> recruitProcessList) {
|
||||
rs.executeQuery("select bsmc ,bscj ,bsjg ,modedatacreatedate ,modedatacreatetime from uf_jcl_bs where ypz = ? order by bssj desc", id);
|
||||
rs.executeQuery("select zt, msrq, msg, ptmsg, jg, modedatacreatedate, modedatacreatetime from uf_jcl_ms where ypz = ? order by msrq desc", id);
|
||||
if (rs.next()) {
|
||||
// 笔试名称
|
||||
String bsmc = rs.getString("bsmc");
|
||||
// 笔试成绩
|
||||
String bscj = rs.getString("bscj");
|
||||
// 笔试结果
|
||||
String bsjg = rs.getString("bsjg");
|
||||
// 面试状态
|
||||
String zt = rs.getString("zt");
|
||||
// 面试日期
|
||||
String msrq = rs.getString("msrq");
|
||||
// 面试官
|
||||
String msg = rs.getString("msg");
|
||||
// 陪同面试官
|
||||
String ptmsg = rs.getString("ptmsg");
|
||||
// 结果
|
||||
String jg = rs.getString("jg");
|
||||
String date = rs.getString("modedatacreatedate");
|
||||
String time = rs.getString("modedatacreatetime");
|
||||
|
||||
WrittenProcess writtenProcess = new WrittenProcess();
|
||||
writtenProcess.setBsmc(bsmc);
|
||||
writtenProcess.setBscj(bscj);
|
||||
writtenProcess.setBsjg(bsjg);
|
||||
InterviewProcess interviewProcess = new InterviewProcess();
|
||||
interviewProcess.setZt(zt);
|
||||
interviewProcess.setMsrq(msrq);
|
||||
interviewProcess.setMsg(msg);
|
||||
interviewProcess.setPtmsg(ptmsg);
|
||||
interviewProcess.setJg(jg);
|
||||
|
||||
RecruitProcess process = new RecruitProcess();
|
||||
process.setTitle(WrittenProcess.TITLE);
|
||||
process.setIcon(WrittenProcess.ICON_NAME);
|
||||
process.setValue(writtenProcess.toString());
|
||||
process.setTitle(InterviewProcess.TITLE);
|
||||
process.setIcon(InterviewProcess.ICON_NAME);
|
||||
process.setValue(interviewProcess.toString());
|
||||
process.setCreateDateTime(DateUtil.parseToDateTime(date + " " + time));
|
||||
recruitProcessList.add(process);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 最近背调:若未发起,则不显示,若有记录但是无结果的,显示“暂无背调结果”;若有结果则显示“背调日期,结果”;若存在多条,则显示最新的数据;若存在多条则取最新的【背调时间】
|
||||
*
|
||||
* @param id
|
||||
* @param rs
|
||||
* @param recruitProcessList
|
||||
*/
|
||||
private void buildBackProcess(String id, RecordSet rs, List<RecruitProcess> recruitProcessList) {
|
||||
rs.executeQuery("select dcrq, dcjg, modedatacreatedate, modedatacreatetime from uf_jcl_bd where ypz = ? order by dcrq desc", id);
|
||||
if (rs.next()) {
|
||||
// 调查日期
|
||||
String dcrq = rs.getString("dcrq");
|
||||
// 调查结果
|
||||
String dcjg = rs.getString("dcjg");
|
||||
|
||||
String date = rs.getString("modedatacreatedate");
|
||||
String time = rs.getString("modedatacreatetime");
|
||||
|
||||
BackProcess backProcess = new BackProcess();
|
||||
backProcess.setDcjg(dcjg);
|
||||
backProcess.setDcrq(dcrq);
|
||||
|
||||
RecruitProcess process = new RecruitProcess();
|
||||
process.setTitle(BackProcess.TITLE);
|
||||
process.setIcon(BackProcess.ICON_NAME);
|
||||
process.setValue(backProcess.toString());
|
||||
process.setCreateDateTime(DateUtil.parseToDateTime(date + " " + time));
|
||||
recruitProcessList.add(process);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 最近薪酬谈判:若未发起,则不显示,若有记录但是无结果的,显示“暂无薪酬谈判结果”;若有结果则显示“谈判日期,结果”;若存在多条,则显示最新的数据;若存在多条则取最新的【谈判时间】
|
||||
* @param id
|
||||
* @param rs
|
||||
* @param recruitProcessList
|
||||
*/
|
||||
private void buildSalaryProcess(String id, RecordSet rs, List<RecruitProcess> recruitProcessList) {
|
||||
rs.executeQuery("select tpsj, tpjg, modedatacreatedate, modedatacreatetime from uf_jcl_xctp where ypz = ? order by tpsj desc", id);
|
||||
if (rs.next()) {
|
||||
// 谈判时间
|
||||
String tpsj = rs.getString("tpsj");
|
||||
// 谈判结果
|
||||
String tpjg = rs.getString("tpjg");
|
||||
|
||||
String date = rs.getString("modedatacreatedate");
|
||||
String time = rs.getString("modedatacreatetime");
|
||||
|
||||
SalaryProcess salaryProcess = new SalaryProcess();
|
||||
salaryProcess.setTpjg(tpjg);
|
||||
salaryProcess.setTpsj(tpsj);
|
||||
|
||||
RecruitProcess process = new RecruitProcess();
|
||||
process.setTitle(SalaryProcess.TITLE);
|
||||
process.setIcon(SalaryProcess.ICON_NAME);
|
||||
process.setValue(salaryProcess.toString());
|
||||
process.setCreateDateTime(DateUtil.parseToDateTime(date + " " + time));
|
||||
recruitProcessList.add(process);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* offer状态:若未产生数据则不显示,若有数据了,则显示offer状态,若反馈时间有数值,则显示,没数值则不现实
|
||||
* @param id
|
||||
* @param rs
|
||||
* @param recruitProcessList
|
||||
*/
|
||||
private void buildOfferProcess(String id, RecordSet rs, List<RecruitProcess> recruitProcessList) {
|
||||
rs.executeQuery("select zt, fksj, modedatacreatedate, modedatacreatetime from uf_jcl_offer where xm = ? order by modedatacreatedate desc,modedatacreatetime desc", id);
|
||||
if (rs.next()) {
|
||||
// offer状态
|
||||
String zt = rs.getString("zt");
|
||||
// 反馈时间
|
||||
String fksj = rs.getString("fksj");
|
||||
|
||||
String date = rs.getString("modedatacreatedate");
|
||||
String time = rs.getString("modedatacreatetime");
|
||||
|
||||
OfferProcess offerProcess = new OfferProcess();
|
||||
offerProcess.setFksj(fksj);
|
||||
offerProcess.setZt(zt);
|
||||
|
||||
|
||||
RecruitProcess process = new RecruitProcess();
|
||||
process.setTitle(OfferProcess.TITLE);
|
||||
process.setIcon(OfferProcess.ICON_NAME);
|
||||
process.setValue(offerProcess.toString());
|
||||
process.setCreateDateTime(DateUtil.parseToDateTime(date + " " + time));
|
||||
recruitProcessList.add(process);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
Loading…
Reference in New Issue