千里聆配置简历采集邮箱设置

This commit is contained in:
dxfeng 2023-10-27 15:18:54 +08:00
parent c48b48649c
commit 0b3e0e7074
8 changed files with 160 additions and 4 deletions

View File

@ -0,0 +1,12 @@
package com.api.recruit.controller;
import javax.ws.rs.Path;
/**
* @author:dxfeng
* @createTime: 2023/10/27
* @version: 1.0
*/
@Path("/jcl/recruit/rpa")
public class RpaJclController extends com.engine.recruit.controller.RpaJclController {
}

View File

@ -1,6 +1,5 @@
package com.engine.recruit.thread;
package com.engine.recruit.conn;
import com.engine.recruit.conn.RecruitRecordSet;
import com.engine.recruit.enums.ApplicationStatusEnum;
import org.apache.commons.collections.CollectionUtils;
import weaver.conn.RecordSet;

View File

@ -0,0 +1,37 @@
package com.engine.recruit.controller;
import com.engine.common.util.ParamUtil;
import com.engine.common.util.ServiceUtil;
import com.engine.recruit.util.ResponseResult;
import com.engine.recruit.wrapper.RpaJclWrapper;
import weaver.hrm.HrmUserVarify;
import weaver.hrm.User;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.ws.rs.POST;
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.Map;
/**
* @author:dxfeng
* @createTime: 2023/10/27
* @version: 1.0
*/
public class RpaJclController {
public RpaJclWrapper getRpaJclWrapper(User user) {
return ServiceUtil.getService(RpaJclWrapper.class, user);
}
@POST
@Path("/setEmailSetting")
@Produces(MediaType.APPLICATION_JSON)
public String setEmailSetting(@Context HttpServletRequest request, @Context HttpServletResponse response) {
User user = HrmUserVarify.getUser(request, response);
Map<String, Object> param = ParamUtil.request2Map(request);
return new ResponseResult<Map<String, Object>, Map<String, Object>>(user).run(getRpaJclWrapper(user)::setEmailSetting, param);
}
}

View File

@ -0,0 +1,19 @@
package com.engine.recruit.service;
import java.util.Map;
/**
* @author:dxfeng
* @createTime: 2023/10/27
* @version: 1.0
*/
public interface RpaJclService {
/**
* 配置简历采集邮箱设置
*
* @param param 前段传参
* @return
*/
Map<String, Object> setEmailSetting(Map<String, Object> param);
}

View File

@ -6,6 +6,7 @@ import com.engine.recruit.conn.RecruitDataMap;
import com.engine.recruit.conn.RecruitRecordSet;
import com.engine.recruit.enums.ApplicantOperateEnum;
import com.engine.recruit.enums.ApplicationStatusEnum;
import com.engine.recruit.exception.CustomizeRunTimeException;
import com.engine.recruit.service.ApplicantResumeService;
import org.apache.commons.lang3.StringUtils;
import weaver.conn.RecordSet;
@ -156,8 +157,15 @@ public class ApplicantResumeServiceImpl extends Service implements ApplicantResu
// 转移阶段
String dqypjd = Util.null2String(params.get("dqypjd"));
String billid = Util.null2String(params.get("billid"));
rs.executeUpdate("update uf_jcl_yppc set zpjd = ? where id = ?", dqypjd, billid);
returnMap.put("msg", "操作成功");
// 查询当前阶段的阶段类型
rs.executeQuery("select jdlx from uf_jcl_zpjdsz where id = ?", dqypjd);
if (rs.next()) {
String jdlx = rs.getString("jdlx");
rs.executeUpdate("update uf_jcl_yppc set zpjd = ?,dqypjd = ? where id = ?", dqypjd, jdlx, billid);
returnMap.put("msg", "操作成功");
} else {
throw new CustomizeRunTimeException("转移阶段失败");
}
} else if (ApplicantOperateEnum.ASSIGN.getOperateType().equals(operateType)) {
// 分配职位
String billid = Util.null2String(params.get("billid"));

View File

@ -0,0 +1,56 @@
package com.engine.recruit.service.impl;
import com.engine.core.impl.Service;
import com.engine.recruit.conn.RecruitRecordSet;
import com.engine.recruit.service.RpaJclService;
import com.weaver.rpa.sdk.clients.application.resume.ERPAResumeSDKClient;
import com.weaver.rpa.sdk.clients.application.resume.entity.ResumeEmailSetting;
import com.weaver.rpa.sdk.clients.core.ERPASDKClients;
import weaver.conn.RecordSet;
import weaver.general.Util;
import java.util.Map;
/**
* @author:dxfeng
* @createTime: 2023/10/27
* @version: 1.0
*/
public class RpaJclServiceImpl extends Service implements RpaJclService {
@Override
public Map<String, Object> setEmailSetting(Map<String, Object> param) {
String billId = Util.null2String(param.get("billId"));
RecordSet rs = new RecordSet();
rs.executeQuery("select * from uf_jcl_qllyxpz where id = ? ", billId);
Map<String, Object> dataMap = RecruitRecordSet.getSingleRecordMap(rs);
ERPAResumeSDKClient resumeSDKClient = ERPASDKClients.getResumeSDKClient();
String userId = Util.null2String(dataMap.get("szr"));
String status = Util.null2String(dataMap.get("zt"));
String server = Util.null2String(dataMap.get("yjjsfwq"));
String port = Util.null2String(dataMap.get("jsdk"));
String protocol = Util.null2String(dataMap.get("csxy"));
String site = Util.null2String(dataMap.get("yxdz"));
String login = Util.null2String(dataMap.get("yxzh"));
String password = Util.null2String(dataMap.get("yxsqmmm"));
ResumeEmailSetting emailSetting = new ResumeEmailSetting();
// 配置启用邮箱功能
emailSetting.setSEMAILSTATUS(status);
emailSetting.setSEMAILSERVER(server);
emailSetting.setSEMAILPORT(port);
emailSetting.setSEMAILPROTOCOL(protocol);
//emailSetting.setSISSEND(isSend);
emailSetting.setSEMAILSITE(site);
emailSetting.setSEMAILLOGIN(login);
emailSetting.setSEMAILPASSWORD(password);
// 禁用邮箱功能(只需要传递Status为0)
// emailSetting.setSEMAILSTATUS("0");
// 调用方法更新简历机器人采集设置在千里聆中会更新目标用户机器人配置
resumeSDKClient.setEmailSetting(userId, emailSetting);
return null;
}
}

View File

@ -1,6 +1,7 @@
package com.engine.recruit.thread;
import cn.hutool.core.convert.Convert;
import com.engine.recruit.conn.CheckRepeatResume;
import com.engine.recruit.conn.PositionCommonInfo;
import com.engine.recruit.conn.RecruitDataMap;
import com.engine.recruit.enums.ApplicationStatusEnum;

View File

@ -0,0 +1,24 @@
package com.engine.recruit.wrapper;
import com.engine.common.util.ServiceUtil;
import com.engine.core.impl.Service;
import com.engine.recruit.service.RpaJclService;
import com.engine.recruit.service.impl.RpaJclServiceImpl;
import weaver.hrm.User;
import java.util.Map;
/**
* @author:dxfeng
* @createTime: 2023/10/27
* @version: 1.0
*/
public class RpaJclWrapper extends Service {
private RpaJclService getRpaJclService(User user) {
return ServiceUtil.getService(RpaJclServiceImpl.class, user);
}
public Map<String, Object> setEmailSetting(Map<String, Object> param) {
return getRpaJclService(user).setEmailSetting(param);
}
}