diff --git a/src/com/engine/organization/mapper/resource/HrmResourceMapper.java b/src/com/engine/organization/mapper/resource/HrmResourceMapper.java index 1c2bec80..aaa7f84e 100644 --- a/src/com/engine/organization/mapper/resource/HrmResourceMapper.java +++ b/src/com/engine/organization/mapper/resource/HrmResourceMapper.java @@ -51,4 +51,8 @@ public interface HrmResourceMapper { Integer insertSearchTemplate(SearchTemplatePO templatePO); Integer deleteSearchTemplate(@Param("id") Integer Id, @Param("userId") Integer userId); + + Integer insertCustomTemplate(SearchTemplatePO templatePO); + + Integer deleteCustomTemplate(@Param("id") Integer Id, @Param("userId") Integer userId); } diff --git a/src/com/engine/organization/mapper/resource/HrmResourceMapper.xml b/src/com/engine/organization/mapper/resource/HrmResourceMapper.xml index 226c6e67..793d042a 100644 --- a/src/com/engine/organization/mapper/resource/HrmResourceMapper.xml +++ b/src/com/engine/organization/mapper/resource/HrmResourceMapper.xml @@ -234,6 +234,111 @@ + + INSERT INTO JCL_ORG_CUSTOM_TEMPLATE + + + creator, + + + create_time, + + + update_time, + + + name, + + + basic_fields, + + + personal_fields, + + + work_fields, + + + + + #{creator}, + + + #{createTime}, + + + #{updateTime}, + + + #{name}, + + + #{basicFields}, + + + #{personalFields}, + + + #{workFields}, + + + + + + + select JCL_ORG_CUSTOM_TEMPLATE_ID.currval from dual + + INSERT INTO JCL_ORG_CUSTOM_TEMPLATE + + + creator, + + + create_time, + + + update_time, + + + name, + + + basic_fields, + + + personal_fields, + + + work_fields, + + + + + #{creator}, + + + #{createTime}, + + + #{updateTime}, + + + #{name}, + + + #{basicFields}, + + + #{personalFields}, + + + #{workFields}, + + + delete @@ -242,6 +347,13 @@ and creator = #{userId} + + delete + from jcl_org_custom_template + where id = #{id} + and creator = #{userId} + + AND t.lastname like CONCAT('%',#{resourcePO.lastName},'%') diff --git a/src/com/engine/organization/service/HrmResourceService.java b/src/com/engine/organization/service/HrmResourceService.java index dc14af4d..a794f2b0 100644 --- a/src/com/engine/organization/service/HrmResourceService.java +++ b/src/com/engine/organization/service/HrmResourceService.java @@ -127,4 +127,19 @@ public interface HrmResourceService { * @return */ List getSearchTemplate(Map params); + + /** + * 保存定制列模板 + * + * @param params + * @return + */ + Integer saveCustomTemplate(SearchTemplateParam params); + + /** + * 删除定制列模板 + * + * @param id + */ + void deleteCustomTemplate(Integer id); } diff --git a/src/com/engine/organization/service/impl/HrmResourceServiceImpl.java b/src/com/engine/organization/service/impl/HrmResourceServiceImpl.java index 2926d163..557e5526 100644 --- a/src/com/engine/organization/service/impl/HrmResourceServiceImpl.java +++ b/src/com/engine/organization/service/impl/HrmResourceServiceImpl.java @@ -98,6 +98,11 @@ public class HrmResourceServiceImpl extends Service implements HrmResourceServic return MapperProxyFactory.getProxy(SystemDataMapper.class); } + // 所有满足条件的岗位ID + private List jobTitleList = new ArrayList<>(); + // 是否 + boolean searchJobTitle = false; + @Override public Map getSearchTree(SearchTreeParams params) { @@ -203,6 +208,25 @@ public class HrmResourceServiceImpl extends Service implements HrmResourceServic return templates; } + @Override + public Integer saveCustomTemplate(SearchTemplateParam params) { + SearchTemplatePO templatePO = buildSearchTemplateByFields(params.getFields()); + if (null == templatePO) { + return -1; + } + templatePO.setName(params.getShowname()); + templatePO.setCreator(user.getUID()); + templatePO.setCreateTime(new Date()); + templatePO.setUpdateTime(new Date()); + getHrmResourceMapper().insertCustomTemplate(templatePO); + return templatePO.getId(); + } + + @Override + public void deleteCustomTemplate(Integer id) { + getHrmResourceMapper().deleteCustomTemplate(id, user.getUID()); + } + @Override public Map getSearchCondition(Map params) { String templateId = Util.null2String(params.get("templateId")); @@ -755,6 +779,16 @@ public class HrmResourceServiceImpl extends Service implements HrmResourceServic if (key.endsWith("workyear") || key.endsWith("companyworkyear")) { conditionItem.setConditionType(ConditionType.INPUTNUMBER); } + // + if (key.endsWith("jobactivity")) { + searchJobTitle = true; + } + if (key.endsWith("jobGroupId")) { + searchJobTitle = true; + } + if (key.endsWith("jobtitle")) { + searchJobTitle = true; + } String tableSql = buildTableSql(key); if (StringUtils.isBlank(tableSql)) { return; @@ -800,9 +834,6 @@ public class HrmResourceServiceImpl extends Service implements HrmResourceServic String scopeId = s[0]; String tableName = s[1]; String fieldName = s[2]; - if ("jobactivity".equals(fieldName)) { - fieldName = "jobactivitydesc"; - } if ("hrm".equals(tableName)) { sb.append("t.").append(fieldName); } else { diff --git a/src/com/engine/organization/web/HrmResourceController.java b/src/com/engine/organization/web/HrmResourceController.java index a3638a5a..7813c5f0 100644 --- a/src/com/engine/organization/web/HrmResourceController.java +++ b/src/com/engine/organization/web/HrmResourceController.java @@ -279,4 +279,30 @@ public class HrmResourceController { return ReturnResult.exceptionHandle(e); } } + + @POST + @Path("/saveCustomTemplate") + @Produces(MediaType.APPLICATION_JSON) + public ReturnResult saveCustomTemplate(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody SearchTemplateParam params) { + try { + User user = HrmUserVarify.getUser(request, response); + Integer templateId = getHrmResourceWrapper(user).saveCustomTemplate(params); + return ReturnResult.successed(Util.null2String(templateId)); + } catch (Exception e) { + return ReturnResult.exceptionHandle(e); + } + } + + @POST + @Path("/deleteCustomTemplate") + @Produces(MediaType.APPLICATION_JSON) + public ReturnResult deleteCustomTemplate(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody SearchTemplatePO params) { + try { + User user = HrmUserVarify.getUser(request, response); + getHrmResourceWrapper(user).deleteCustomTemplate(params.getId()); + return ReturnResult.successed(); + } catch (Exception e) { + return ReturnResult.exceptionHandle(e); + } + } } diff --git a/src/com/engine/organization/wrapper/HrmResourceWrapper.java b/src/com/engine/organization/wrapper/HrmResourceWrapper.java index 6139b17f..8e1e183d 100644 --- a/src/com/engine/organization/wrapper/HrmResourceWrapper.java +++ b/src/com/engine/organization/wrapper/HrmResourceWrapper.java @@ -91,4 +91,12 @@ public class HrmResourceWrapper extends OrganizationWrapper { public List getSearchTemplate(Map params) { return getHrmResourceService(user).getSearchTemplate(params); } + + public Integer saveCustomTemplate(SearchTemplateParam params) { + return getHrmResourceService(user).saveCustomTemplate(params); + } + + public void deleteCustomTemplate(Integer id) { + getHrmResourceService(user).deleteCustomTemplate(id); + } }