diff --git a/src/com/api/forstar/controller/EntryFlowController.java b/src/com/api/forstar/controller/EntryFlowController.java new file mode 100644 index 0000000..be65cf2 --- /dev/null +++ b/src/com/api/forstar/controller/EntryFlowController.java @@ -0,0 +1,12 @@ +package com.api.forstar.controller; + +import javax.ws.rs.Path; + +/** + * @author:dxfeng + * @createTime: 2024/12/24 + * @version: 1.0 + */ +@Path("/forstar/entryflow") +public class EntryFlowController extends com.engine.forstar.controller.EntryFlowController { +} diff --git a/src/com/engine/forstar/controller/EntryFlowController.java b/src/com/engine/forstar/controller/EntryFlowController.java new file mode 100644 index 0000000..cc140ad --- /dev/null +++ b/src/com/engine/forstar/controller/EntryFlowController.java @@ -0,0 +1,38 @@ +package com.engine.forstar.controller; + +import com.engine.common.util.ParamUtil; +import com.engine.common.util.ServiceUtil; +import com.engine.forstar.service.EntryFlowService; +import com.engine.forstar.service.impl.EntryFlowServiceImpl; +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.Map; + +/** + * @author:dxfeng + * @createTime: 2024/12/24 + * @version: 1.0 + */ +public class EntryFlowController { + private EntryFlowService getService(User user) { + return ServiceUtil.getService(EntryFlowServiceImpl.class, user); + } + + @GET + @Path("/getSocialSecurityAndProvidentFunds") + @Produces(MediaType.APPLICATION_JSON) + public String getSocialSecurityAndProvidentFunds(@Context HttpServletRequest request, @Context HttpServletResponse response) { + User user = HrmUserVarify.getUser(request, response); + Map params = ParamUtil.request2Map(request); + return new ResponseResult, Map>(user).run(getService(user)::getSocialSecurityAndProvidentFunds, params); + } +} diff --git a/src/com/engine/forstar/service/EntryFlowService.java b/src/com/engine/forstar/service/EntryFlowService.java new file mode 100644 index 0000000..22ee814 --- /dev/null +++ b/src/com/engine/forstar/service/EntryFlowService.java @@ -0,0 +1,18 @@ +package com.engine.forstar.service; + +import java.util.Map; + +/** + * @author:dxfeng + * @createTime: 2024/12/24 + * @version: 1.0 + */ +public interface EntryFlowService { + + /** + * 获取社保和公积金 + * @param params + * @return + */ + Map getSocialSecurityAndProvidentFunds(Map params); +} diff --git a/src/com/engine/forstar/service/impl/EntryFlowServiceImpl.java b/src/com/engine/forstar/service/impl/EntryFlowServiceImpl.java new file mode 100644 index 0000000..473c4f4 --- /dev/null +++ b/src/com/engine/forstar/service/impl/EntryFlowServiceImpl.java @@ -0,0 +1,89 @@ +package com.engine.forstar.service.impl; + +import com.alibaba.fastjson.JSON; +import com.engine.core.impl.Service; +import com.engine.forstar.service.EntryFlowService; +import org.apache.commons.lang3.StringUtils; +import weaver.conn.RecordSet; +import weaver.general.Util; + +import java.util.HashMap; +import java.util.Map; + +/** + * 入职流程接口实现类 + * + * @author:dxfeng + * @createTime: 2024/12/24 + * @version: 1.0 + */ +public class EntryFlowServiceImpl extends Service implements EntryFlowService { + @Override + public Map getSocialSecurityAndProvidentFunds(Map params) { + RecordSet rs = new RecordSet(); + rs.writeLog("params===" + JSON.toJSONString(params)); + String post = Util.null2String(params.get("post")); + String job = Util.null2String(params.get("job")); + // 大于下限 小于等于上限 + String workAge = Util.null2String(params.get("workage")); + + Map returnMap = new HashMap<>(); + // 按照岗位查询 + String sql; + if (StringUtils.isNotBlank(post)) { + sql = "select * from uf_hr_sbjsgzb where ',' ||gw|| ',' like '%," + post + ",%'"; + rs.writeLog("post sql===" + sql); + rs.executeQuery(sql); + if (rs.next()) { + buildReturnMap(returnMap, rs); + return returnMap; + } + } + + // 按照岗位分类查询 + if (StringUtils.isNotBlank(job)) { + sql = "select * from uf_hr_sbjsgzb where gwfl = '" + job + "'"; + rs.writeLog("job sql===" + sql); + rs.executeQuery(sql); + if (rs.next() && StringUtils.isNotBlank(workAge)) { + sql += " and " + workAge + " >gzbs and " + workAge + " <= glsx"; + rs.writeLog("job sql===" + sql); + rs.executeQuery(sql); + if (rs.next()) { + buildReturnMap(returnMap, rs); + return returnMap; + } + } + } + + // 按照工龄查询 + if (StringUtils.isNotBlank(workAge)) { + sql = "select * from uf_hr_sbjsgzb where gwfl is null and gw is null and " + workAge + " >gzbs and " + workAge + " <= glsx"; + rs.writeLog("workAge sql===" + sql); + rs.executeQuery(sql); + if (rs.next()) { + buildReturnMap(returnMap, rs); + return returnMap; + } + } + + return returnMap; + } + + /** + * 构建返回数据集合 + * + * @param returnMap + * @param rs + */ + private void buildReturnMap(Map returnMap, RecordSet rs) { + returnMap.put("gzbs", rs.getString("gzbs")); + returnMap.put("yanglaojs", rs.getString("yanglaojs")); + returnMap.put("yiliaojs", rs.getString("yiliaojs")); + returnMap.put("shiyejs", rs.getString("shiyejs")); + returnMap.put("gongshangjs", rs.getString("gongshangjs")); + returnMap.put("shengyujs", rs.getString("shengyujs")); + returnMap.put("gjjjs", rs.getString("gjjjs")); + rs.writeLog("returnMap===" + JSON.toJSONString(returnMap)); + } +}