generated from dxfeng/secondev-chapanda-feishu
招聘工作台
This commit is contained in:
parent
7b08a1e727
commit
79bdefd143
|
|
@ -0,0 +1,13 @@
|
|||
package com.api.recruit.controller;
|
||||
|
||||
import javax.ws.rs.Path;
|
||||
|
||||
/**
|
||||
* @Author liang.cheng
|
||||
* @Date 2023/10/18 4:31 PM
|
||||
* @Description: 招聘工作台
|
||||
* @Version 1.0
|
||||
*/
|
||||
@Path("/jcl/recruit/workbench")
|
||||
public class WorkBenchPortalController extends com.engine.recruit.controller.WorkBenchPortalController {
|
||||
}
|
||||
|
|
@ -0,0 +1,75 @@
|
|||
package com.engine.recruit.controller;
|
||||
|
||||
import com.engine.common.util.ServiceUtil;
|
||||
import com.engine.recruit.entity.workbench.OptionVO;
|
||||
import com.engine.recruit.entity.workbench.RecruitPortalCommonVO;
|
||||
import com.engine.recruit.service.WorkBenchPortalService;
|
||||
import com.engine.recruit.service.impl.WorkBenchPortalServiceImpl;
|
||||
import com.engine.recruit.util.ResponseResult;
|
||||
import weaver.hrm.HrmUserVarify;
|
||||
import weaver.hrm.User;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import javax.ws.rs.GET;
|
||||
import javax.ws.rs.Path;
|
||||
import javax.ws.rs.Produces;
|
||||
import javax.ws.rs.core.Context;
|
||||
import javax.ws.rs.core.MediaType;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @Author liang.cheng
|
||||
* @Date 2023/10/18 4:34 PM
|
||||
* @Description: TODO
|
||||
* @Version 1.0
|
||||
*/
|
||||
public class WorkBenchPortalController {
|
||||
|
||||
public WorkBenchPortalService getWorkBenchPortal(User user) {
|
||||
return ServiceUtil.getService(WorkBenchPortalServiceImpl.class, user);
|
||||
}
|
||||
|
||||
|
||||
@GET
|
||||
@Path("/top")
|
||||
@Produces(MediaType.APPLICATION_JSON)
|
||||
public String getRecruitPortalTop(@Context HttpServletRequest request, @Context HttpServletResponse response) {
|
||||
User user = HrmUserVarify.getUser(request, response);
|
||||
return new ResponseResult<String, List<RecruitPortalCommonVO>>(user).run(getWorkBenchPortal(user) :: getRecruitPortalTop);
|
||||
}
|
||||
|
||||
|
||||
@GET
|
||||
@Path("/jobTenure")
|
||||
@Produces(MediaType.APPLICATION_JSON)
|
||||
public String getJobTenure(@Context HttpServletRequest request, @Context HttpServletResponse response) {
|
||||
User user = HrmUserVarify.getUser(request, response);
|
||||
return new ResponseResult<String, OptionVO>(user).run(getWorkBenchPortal(user) :: getJobTenure);
|
||||
}
|
||||
|
||||
@GET
|
||||
@Path("/waitStepPerson")
|
||||
@Produces(MediaType.APPLICATION_JSON)
|
||||
public String getWaitStepPerson(@Context HttpServletRequest request, @Context HttpServletResponse response) {
|
||||
User user = HrmUserVarify.getUser(request, response);
|
||||
return new ResponseResult<String, OptionVO>(user).run(getWorkBenchPortal(user) :: getWaitStepPerson);
|
||||
}
|
||||
|
||||
@GET
|
||||
@Path("/recruitTransform")
|
||||
@Produces(MediaType.APPLICATION_JSON)
|
||||
public String getRecruitTransform(@Context HttpServletRequest request, @Context HttpServletResponse response) {
|
||||
User user = HrmUserVarify.getUser(request, response);
|
||||
return new ResponseResult<String, OptionVO>(user).run(getWorkBenchPortal(user) :: getRecruitTransform);
|
||||
}
|
||||
|
||||
|
||||
@GET
|
||||
@Path("/peopleFrom")
|
||||
@Produces(MediaType.APPLICATION_JSON)
|
||||
public String getPeopleFrom(@Context HttpServletRequest request, @Context HttpServletResponse response) {
|
||||
User user = HrmUserVarify.getUser(request, response);
|
||||
return new ResponseResult<String, OptionVO>(user).run(getWorkBenchPortal(user) :: getPeopleFrom);
|
||||
}
|
||||
}
|
||||
|
|
@ -25,7 +25,7 @@ import javax.ws.rs.core.MediaType;
|
|||
*/
|
||||
public class WorkPlanController {
|
||||
|
||||
public WorkPlanSerivice getRecruitPositionWrapper(User user) {
|
||||
public WorkPlanSerivice getWorkPlan(User user) {
|
||||
return ServiceUtil.getService(WorkPlanServiceImpl.class, user);
|
||||
}
|
||||
|
||||
|
|
@ -34,7 +34,7 @@ public class WorkPlanController {
|
|||
@Produces(MediaType.APPLICATION_JSON)
|
||||
public String operateWorkPlan(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody WorkPlanCreateParams workPlanCreateParams) {
|
||||
User user = HrmUserVarify.getUser(request, response);
|
||||
return new ResponseResult<WorkPlanCreateParams, String>(user).run(getRecruitPositionWrapper(user)::operate, workPlanCreateParams);
|
||||
return new ResponseResult<WorkPlanCreateParams, String>(user).run(getWorkPlan(user)::operate, workPlanCreateParams);
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -0,0 +1,32 @@
|
|||
package com.engine.recruit.entity.workbench;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.util.LinkedList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @Author liang.cheng
|
||||
* @Date 2023/10/19 3:03 PM
|
||||
* @Description: TODO
|
||||
* @Version 1.0
|
||||
*/
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@Builder
|
||||
public class OptionVO {
|
||||
|
||||
private String text;
|
||||
|
||||
private List<String> xData;
|
||||
|
||||
private List<Integer> barSeriesData;
|
||||
|
||||
private LinkedList<SeriesParam> seriesData;
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,24 @@
|
|||
package com.engine.recruit.entity.workbench;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
/**
|
||||
* @Author liang.cheng
|
||||
* @Date 2023/10/19 11:39 AM
|
||||
* @Description: TODO
|
||||
* @Version 1.0
|
||||
*/
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@Builder
|
||||
public class RecruitInterviewPO {
|
||||
|
||||
private String ids;
|
||||
|
||||
private String interviewDate;
|
||||
}
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
package com.engine.recruit.entity.workbench;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
/**
|
||||
* @Author liang.cheng
|
||||
* @Date 2023/10/19 10:31 AM
|
||||
* @Description: TODO
|
||||
* @Version 1.0
|
||||
*/
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@Builder
|
||||
public class RecruitPortalCommonVO {
|
||||
|
||||
private Integer id;
|
||||
|
||||
private String title;
|
||||
|
||||
private Integer count;
|
||||
|
||||
private String icon;
|
||||
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,28 @@
|
|||
package com.engine.recruit.entity.workbench;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
/**
|
||||
* @Author liang.cheng
|
||||
* @Date 2023/9/28 2:02 PM
|
||||
* @Description: TODO
|
||||
* @Version 1.0
|
||||
*/
|
||||
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class SeriesParam {
|
||||
|
||||
private Double value;
|
||||
|
||||
private String name;
|
||||
|
||||
private String color;
|
||||
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,61 @@
|
|||
package com.engine.recruit.service;
|
||||
|
||||
import com.engine.recruit.entity.workbench.OptionVO;
|
||||
import com.engine.recruit.entity.workbench.RecruitPortalCommonVO;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @Author liang.cheng
|
||||
* @Date 2023/10/18 4:43 PM
|
||||
* @Description:
|
||||
* @Version 1.0
|
||||
*/
|
||||
public interface WorkBenchPortalService {
|
||||
|
||||
/**
|
||||
* @Description: 顶部元素
|
||||
* @Author: liang.cheng
|
||||
* @Date: 2023/10/19 10:47 AM
|
||||
* @param: []
|
||||
* @return: com.engine.recruit.entity.workbench.RecruitPortalCommonVO
|
||||
*/
|
||||
List<RecruitPortalCommonVO> getRecruitPortalTop();
|
||||
|
||||
/**
|
||||
* @Description: 职位年限要求分布
|
||||
* @Author: liang.cheng
|
||||
* @Date: 2023/10/19 3:15 PM
|
||||
* @param: []
|
||||
* @return: com.engine.recruit.entity.workbench.OptionVO
|
||||
*/
|
||||
OptionVO getJobTenure();
|
||||
|
||||
|
||||
/**
|
||||
* @Description: 候选中应聘者各阶段数
|
||||
* @Author: liang.cheng
|
||||
* @Date: 2023/10/20 9:35 AM
|
||||
* @param: []
|
||||
* @return: com.engine.recruit.entity.workbench.OptionVO
|
||||
*/
|
||||
OptionVO getWaitStepPerson();
|
||||
|
||||
/**
|
||||
* @Description: 招聘转化
|
||||
* @Author: liang.cheng
|
||||
* @Date: 2023/10/20 10:04 AM
|
||||
* @param: []
|
||||
* @return: com.engine.recruit.entity.workbench.OptionVO
|
||||
*/
|
||||
OptionVO getRecruitTransform();
|
||||
|
||||
/**
|
||||
* @Description: 人才来源
|
||||
* @Author: liang.cheng
|
||||
* @Date: 2023/10/20 11:07 AM
|
||||
* @param: []
|
||||
* @return: com.engine.recruit.entity.workbench.OptionVO
|
||||
*/
|
||||
OptionVO getPeopleFrom();
|
||||
}
|
||||
|
|
@ -0,0 +1,224 @@
|
|||
package com.engine.recruit.service.impl;
|
||||
|
||||
import com.engine.core.impl.Service;
|
||||
import com.engine.recruit.entity.workbench.OptionVO;
|
||||
import com.engine.recruit.entity.workbench.RecruitInterviewPO;
|
||||
import com.engine.recruit.entity.workbench.RecruitPortalCommonVO;
|
||||
import com.engine.recruit.entity.workbench.SeriesParam;
|
||||
import weaver.conn.RecordSet;
|
||||
import weaver.general.Util;
|
||||
|
||||
import java.text.DecimalFormat;
|
||||
import java.time.LocalDate;
|
||||
import java.time.format.DateTimeFormatter;
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* @Author liang.cheng
|
||||
* @Date 2023/10/18 4:44 PM
|
||||
* @Description: TODO
|
||||
* @Version 1.0
|
||||
*/
|
||||
public class WorkBenchPortalServiceImpl extends Service implements com.engine.recruit.service.WorkBenchPortalService {
|
||||
|
||||
private final DecimalFormat df = new DecimalFormat("#.00");
|
||||
|
||||
@Override
|
||||
public List<RecruitPortalCommonVO> getRecruitPortalTop() {
|
||||
RecordSet rs = new RecordSet();
|
||||
List<RecruitPortalCommonVO> recruitList = new ArrayList<>();
|
||||
List<String> list = new ArrayList<>();
|
||||
rs.executeQuery("select b.zpzwfzr,b.zpxzr from uf_jcl_yppc a left join uf_jcl_zp_zpzw b on a.ypzw = b.id\n" +
|
||||
"where a.zt = 1");
|
||||
while (rs.next()) {
|
||||
String zpzwfzr = Util.null2String(rs.getString("zpzwfzr"));
|
||||
String zpxzr = Util.null2String(rs.getString("zpxzr"));
|
||||
list.add(mergeStrings(zpzwfzr, zpxzr));
|
||||
}
|
||||
String uId = String.valueOf(user.getUID());
|
||||
|
||||
List<String> filteredList = list.stream()
|
||||
.filter(s -> s.contains(uId))
|
||||
.collect(Collectors.toList());
|
||||
recruitList.add(RecruitPortalCommonVO.builder().title("待处理简历").count(filteredList.size()).icon("${appRes}/1.png").build());
|
||||
recruitList.add(selectRecruitInterview("select msg,ptmsg,msrq from uf_jcl_ms", "今日面试", "${appRes}/2.png", uId));
|
||||
recruitList.add(selectRecruitInterview("select msg,ptmsg,msrq from uf_jcl_ms where zt = 0", "待评价面试", "${appRes}/3.png", uId));
|
||||
recruitList.add(selectOffer("select b.zpzwfzr,b.zpxzr from uf_jcl_offer a left join uf_jcl_zp_zpzw b on a.ypzw = b.id where a.zt = 0",
|
||||
"待发offer", "${appRes}/4.png", uId));
|
||||
recruitList.add(selectOffer("select b.zpzwfzr,b.zpxzr from uf_jcl_offer a left join uf_jcl_zp_zpzw b on a.ypzw = b.id where a.zt = 1",
|
||||
"待反馈offer", "${appRes}/5.png", uId));
|
||||
recruitList.add(RecruitPortalCommonVO.builder().title("待入职").count(waitHired()).icon("${appRes}/6.png").build());
|
||||
|
||||
|
||||
return recruitList;
|
||||
}
|
||||
|
||||
@Override
|
||||
public OptionVO getJobTenure() {
|
||||
RecordSet rs = new RecordSet();
|
||||
List<RecruitPortalCommonVO> list = new ArrayList<>();
|
||||
rs.executeQuery("select id,xxnr from uf_sjzd where zdlxmc = 9");
|
||||
while (rs.next()) {
|
||||
list.add(RecruitPortalCommonVO.builder().id(Util.getIntValue(rs.getString("id)"))).title(Util.null2String(rs.getString("xxnr"))).count(0).build());
|
||||
}
|
||||
|
||||
List<RecruitPortalCommonVO> list1 = new ArrayList<>();
|
||||
rs.executeQuery("select gznx,count(1) as sum from uf_jcl_zp_zpzw group by gznx;");
|
||||
while (rs.next()) {
|
||||
list1.add(RecruitPortalCommonVO.builder().id(Util.getIntValue(rs.getString("gznx)"))).count(Util.getIntValue(rs.getString("sum"))).build());
|
||||
}
|
||||
|
||||
for (RecruitPortalCommonVO item1 : list) {
|
||||
for (RecruitPortalCommonVO item2 : list1) {
|
||||
if (item1.getId().equals(item2.getId())) {
|
||||
item1.setCount(item2.getCount());
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
List<String> xData = list.stream()
|
||||
.map(RecruitPortalCommonVO::getTitle)
|
||||
.collect(Collectors.toList());
|
||||
|
||||
List<Integer> barSeriesData = list.stream()
|
||||
.map(RecruitPortalCommonVO::getCount)
|
||||
.collect(Collectors.toList());
|
||||
|
||||
return OptionVO.builder()
|
||||
.text("职位年限要求分布")
|
||||
.xData(xData)
|
||||
.barSeriesData(barSeriesData)
|
||||
.build();
|
||||
}
|
||||
|
||||
@Override
|
||||
public OptionVO getWaitStepPerson() {
|
||||
RecordSet rs = new RecordSet();
|
||||
rs.executeQuery("select a.xxnr,b.sum from uf_sjzd a \n" +
|
||||
"left join (select gznx,count(1) as sum from uf_jcl_zp_zpzw group by gznx) b \n" +
|
||||
"on a.id = b.gznx where a.zdlxmc = 9");
|
||||
List<String> xData = new ArrayList<>();
|
||||
List<Integer> barSeriesData = new ArrayList<>();
|
||||
while (rs.next()) {
|
||||
xData.add(Util.null2String(rs.getString("xxnr")));
|
||||
barSeriesData.add(Util.getIntValue(rs.getString("sum")),0);
|
||||
}
|
||||
|
||||
return OptionVO.builder()
|
||||
.text("候选中应聘者各阶段数")
|
||||
.xData(xData)
|
||||
.barSeriesData(barSeriesData)
|
||||
.build();
|
||||
}
|
||||
|
||||
@Override
|
||||
public OptionVO getRecruitTransform() {
|
||||
List<String> colorList = Arrays.asList("#6e94f3","#faf0e6","#7cfc00","#ao20f0","#00ced1","#83d8ae","#697695","#8ac9e9","#9933fa","#c0ff3e","#ffe4c4","#cd6090");
|
||||
RecordSet rs = new RecordSet();
|
||||
rs.executeQuery("select a.xxnr,b.sum from uf_sjzd a \n" +
|
||||
"left join (select gznx,count(1) as sum from uf_jcl_zp_zpzw group by gznx) b \n" +
|
||||
"on a.id = b.gznx where a.zdlxmc = 9");
|
||||
LinkedList<SeriesParam> seriesData = new LinkedList<>();
|
||||
while (rs.next()) {
|
||||
String name = Util.null2String(rs.getString("xxnr"));
|
||||
double value = Util.getDoubleValue(rs.getString("sum"), 0);
|
||||
Random r = new Random();
|
||||
seriesData.add(SeriesParam.builder().value(value).name(name).color(colorList.get(r.nextInt(colorList.size()))).build());
|
||||
|
||||
}
|
||||
|
||||
return OptionVO.builder()
|
||||
.text("招聘转化")
|
||||
.seriesData(seriesData)
|
||||
.build();
|
||||
}
|
||||
|
||||
@Override
|
||||
public OptionVO getPeopleFrom() {
|
||||
List<String> colorList = Arrays.asList("#6e94f3","#faf0e6","#7cfc00","#ao20f0","#00ced1","#83d8ae","#697695","#8ac9e9","#9933fa","#c0ff3e","#ffe4c4","#cd6090");
|
||||
RecordSet rs = new RecordSet();
|
||||
rs.executeQuery("select a.xxnr,b.sum from uf_sjzd a \n" +
|
||||
"left join (select jlly,count(1) as sum from uf_jcl_yppc group by jlly) b \n" +
|
||||
"on a.id = b.jlly where a.zdlxmc = 2");
|
||||
LinkedList<SeriesParam> seriesData = new LinkedList<>();
|
||||
while (rs.next()) {
|
||||
Random r = new Random();
|
||||
String name = Util.null2String(rs.getString("xxnr"));
|
||||
double value = Util.getDoubleValue(rs.getString("sum"), 0);
|
||||
seriesData.add(SeriesParam.builder().value(value).name(name).color(colorList.get(r.nextInt(colorList.size()))).build());
|
||||
}
|
||||
|
||||
List<Double> values = seriesData.stream().map(SeriesParam:: getValue).collect(Collectors.toList());
|
||||
double percentage = values.stream().mapToDouble(Double::doubleValue).sum();
|
||||
seriesData.forEach(item -> item.setValue(Double.valueOf(df.format((item.getValue() * 100) / percentage))));
|
||||
|
||||
return OptionVO.builder()
|
||||
.text("人才来源")
|
||||
.seriesData(seriesData)
|
||||
.build();
|
||||
}
|
||||
|
||||
|
||||
private Integer waitHired() {
|
||||
RecordSet rs = new RecordSet();
|
||||
rs.executeQuery("select count(1) as sum from uf_jcl_rzgl where rzzt = 0");
|
||||
rs.next();
|
||||
return Util.getIntValue(rs.getString("sum"));
|
||||
}
|
||||
|
||||
|
||||
private RecruitPortalCommonVO selectOffer(String sql, String title, String icon, String uId) {
|
||||
RecordSet rs = new RecordSet();
|
||||
List<String> list = new ArrayList<>();
|
||||
rs.executeQuery(sql);
|
||||
while (rs.next()) {
|
||||
String zpzwfzr = Util.null2String(rs.getString("zpzwfzr"));
|
||||
String zpxzr = Util.null2String(rs.getString("zpxzr"));
|
||||
list.add(mergeStrings(zpzwfzr, zpxzr));
|
||||
}
|
||||
|
||||
List<String> filteredList = list.stream()
|
||||
.filter(s -> s.contains(uId))
|
||||
.collect(Collectors.toList());
|
||||
return RecruitPortalCommonVO.builder().title(title).count(filteredList.size()).icon(icon).build();
|
||||
}
|
||||
|
||||
|
||||
private RecruitPortalCommonVO selectRecruitInterview(String sql, String title, String icon, String uId) {
|
||||
RecordSet rs = new RecordSet();
|
||||
List<RecruitInterviewPO> recruitInterview = new ArrayList<>();
|
||||
rs.executeQuery(sql);
|
||||
while (rs.next()) {
|
||||
String msg = Util.null2String(rs.getString("msg"));
|
||||
String ptmsg = Util.null2String(rs.getString("ptmsg"));
|
||||
String msrq = Util.null2String(rs.getString("msrq")).substring(0,9);
|
||||
recruitInterview.add(RecruitInterviewPO.builder().ids(mergeStrings(msg, ptmsg)).interviewDate(msrq).build());
|
||||
}
|
||||
|
||||
LocalDate currentDate = LocalDate.now();
|
||||
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
|
||||
String dateString = currentDate.format(formatter);
|
||||
|
||||
List<RecruitInterviewPO> filterInterview = recruitInterview.stream()
|
||||
.filter(s -> s.getIds().contains(uId))
|
||||
.filter(s -> dateString.equals(s.getInterviewDate()))
|
||||
.collect(Collectors.toList());
|
||||
return RecruitPortalCommonVO.builder().title(title).count(filterInterview.size()).icon(icon).build();
|
||||
}
|
||||
|
||||
private String mergeStrings(String string1, String string2) {
|
||||
boolean isString1Empty = string1.isEmpty();
|
||||
boolean isString2Empty = string2.isEmpty();
|
||||
if (isString1Empty && isString2Empty) {
|
||||
return "";
|
||||
} else if (isString1Empty) {
|
||||
return string2;
|
||||
} else if (isString2Empty) {
|
||||
return string1;
|
||||
} else {
|
||||
return string1 + "," + string2;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -7,7 +7,6 @@ import com.engine.recruit.enums.InterviewOperateTypeEnum;
|
|||
import com.engine.recruit.service.WorkPlanSerivice;
|
||||
import com.engine.workplan.service.WorkPlanBaseService;
|
||||
import com.engine.workplan.service.impl.WorkPlanBaseServiceImpl;
|
||||
import com.icbc.api.internal.apache.http.impl.cookie.S;
|
||||
import weaver.conn.RecordSet;
|
||||
import weaver.hrm.User;
|
||||
|
||||
|
|
@ -51,7 +50,7 @@ public class WorkPlanServiceImpl extends Service implements WorkPlanSerivice {
|
|||
maps.put("beginDateTime",workPlanCreateParams.getBeginDateTime());
|
||||
maps.put("endDateTime",workPlanCreateParams.getEndDateTime());
|
||||
maps.put("isEnableSecondAuth","0");
|
||||
maps.put("from","workplan");
|
||||
//maps.put("from","workplan");
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -74,8 +73,7 @@ public class WorkPlanServiceImpl extends Service implements WorkPlanSerivice {
|
|||
// 调整面试
|
||||
}else if (InterviewOperateTypeEnum.ADJUSTMENT.getOperateType().equals(operateType)){
|
||||
maps.put("workid",workPlanCreateParams.getWorkId());
|
||||
Map<String, Object> result = getService(user).addWorkPlan(maps);
|
||||
Integer workplanId = (Integer)result.get("workplanid");
|
||||
getService(user).addWorkPlan(maps);
|
||||
// 安排面试
|
||||
}else if (InterviewOperateTypeEnum.ARRANGE.getOperateType().equals(operateType)) {
|
||||
Map<String, Object> result = getService(user).addWorkPlan(maps);
|
||||
|
|
|
|||
|
|
@ -0,0 +1,32 @@
|
|||
package weaver.formmode.recruit.modeexpand;
|
||||
|
||||
import com.engine.common.util.ServiceUtil;
|
||||
import com.engine.recruit.service.WorkPlanSerivice;
|
||||
import com.engine.recruit.service.impl.WorkPlanServiceImpl;
|
||||
import weaver.formmode.customjavacode.AbstractModeExpandJavaCodeNew;
|
||||
import weaver.hrm.User;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* @Author liang.cheng
|
||||
* @Date 2023/10/18 11:18 AM
|
||||
* @Description: 保存并新建触发日程
|
||||
* @Version 1.0
|
||||
*/
|
||||
public class CreateWorkPlanModeExpand extends AbstractModeExpandJavaCodeNew {
|
||||
|
||||
public WorkPlanSerivice getWorkPlan(User user) {
|
||||
return ServiceUtil.getService(WorkPlanServiceImpl.class, user);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, String> doModeExpand(Map<String, Object> map) {
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
return null;
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue