From 4ba6d5c21e53508a4cfe2b7530a374cb6e85c1c7 Mon Sep 17 00:00:00 2001 From: dxfeng Date: Tue, 10 Jan 2023 11:37:28 +0800 Subject: [PATCH] =?UTF-8?q?=E8=8A=B1=E5=90=8D=E5=86=8C=E9=AB=98=E7=BA=A7?= =?UTF-8?q?=E6=90=9C=E7=B4=A2BUG=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../personnelcard/PersonnelCardMapper.xml | 2 +- .../mapper/resource/HrmResourceMapper.xml | 58 ++++++++++++++++++- .../service/HrmResourceService.java | 2 +- .../service/impl/HrmResourceServiceImpl.java | 51 +++++++--------- .../web/HrmResourceController.java | 3 +- .../wrapper/HrmResourceWrapper.java | 4 +- 6 files changed, 83 insertions(+), 37 deletions(-) diff --git a/src/com/engine/organization/mapper/personnelcard/PersonnelCardMapper.xml b/src/com/engine/organization/mapper/personnelcard/PersonnelCardMapper.xml index cc7ed5b9..3b45911f 100644 --- a/src/com/engine/organization/mapper/personnelcard/PersonnelCardMapper.xml +++ b/src/com/engine/organization/mapper/personnelcard/PersonnelCardMapper.xml @@ -8,7 +8,7 @@ - + diff --git a/src/com/engine/organization/mapper/resource/HrmResourceMapper.xml b/src/com/engine/organization/mapper/resource/HrmResourceMapper.xml index 6caf907d..226c6e67 100644 --- a/src/com/engine/organization/mapper/resource/HrmResourceMapper.xml +++ b/src/com/engine/organization/mapper/resource/HrmResourceMapper.xml @@ -129,7 +129,63 @@ where id = #{id} - + + INSERT INTO JCL_ORG_SEARCH_TEMPLATE + + + creator, + + + create_time, + + + update_time, + + + name, + + + basic_fields, + + + personal_fields, + + + work_fields, + + + + + #{creator}, + + + #{createTime}, + + + #{updateTime}, + + + #{name}, + + + #{basicFields}, + + + #{personalFields}, + + + #{workFields}, + + + + + + + select JCL_ORG_SEARCH_TEMPLATE_ID.currval from dual + INSERT INTO JCL_ORG_SEARCH_TEMPLATE diff --git a/src/com/engine/organization/service/HrmResourceService.java b/src/com/engine/organization/service/HrmResourceService.java index 98cf1cd5..6b891e28 100644 --- a/src/com/engine/organization/service/HrmResourceService.java +++ b/src/com/engine/organization/service/HrmResourceService.java @@ -97,7 +97,7 @@ public interface HrmResourceService { */ long updateTabForm(HrmRelationSaveParam params); - void saveSearchTemplate(SearchTemplateParam params); + Integer saveSearchTemplate(SearchTemplateParam params); void deleteSearchTemplate(@Param("id") Integer id); } diff --git a/src/com/engine/organization/service/impl/HrmResourceServiceImpl.java b/src/com/engine/organization/service/impl/HrmResourceServiceImpl.java index 4ab476f3..48f825ce 100644 --- a/src/com/engine/organization/service/impl/HrmResourceServiceImpl.java +++ b/src/com/engine/organization/service/impl/HrmResourceServiceImpl.java @@ -143,25 +143,17 @@ public class HrmResourceServiceImpl extends Service implements HrmResourceServic } @Override - public void saveSearchTemplate(SearchTemplateParam params) { - String[] split = params.getFields().split(","); - if (split.length > 0) { - List basicFieldsBuilder = new ArrayList<>(); - List personalFieldsBuilder = new ArrayList<>(); - List workFieldsBuilder = new ArrayList<>(); - for (String fieldName : split) { - if (fieldName.startsWith(HrmGroupEnum.HRM_BASIC.getGroupType().toString())) { - basicFieldsBuilder.add(fieldName.substring(fieldName.lastIndexOf("_") + 1)); - } else if (fieldName.startsWith(HrmGroupEnum.HRM_PERSONAL.getGroupType().toString())) { - personalFieldsBuilder.add(fieldName.substring(fieldName.lastIndexOf("_") + 1)); - } else if (fieldName.startsWith(HrmGroupEnum.HRM_WORK.getGroupType().toString())) { - workFieldsBuilder.add(fieldName.substring(fieldName.lastIndexOf("_") + 1)); - } - } - SearchTemplatePO searchTemplatePO = SearchTemplatePO.builder().name(params.getShowname()).basicFields(StringUtils.join(basicFieldsBuilder, ",")).personalFields(StringUtils.join(personalFieldsBuilder, ",")).workFields(StringUtils.join(workFieldsBuilder, ",")).creator(user.getUID()).createTime(new Date()).updateTime(new Date()).build(); - getHrmResourceMapper().insertSearchTemplate(searchTemplatePO); - // 保存模板 + public Integer saveSearchTemplate(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().insertSearchTemplate(templatePO); + return templatePO.getId(); } @Override @@ -184,7 +176,9 @@ public class HrmResourceServiceImpl extends Service implements HrmResourceServic if ("-1".equals(templateId)) { if (StringUtils.isNotBlank(selectKeys)) { SearchTemplatePO templatePO = buildSearchTemplateByFields(selectKeys); - buildSearchConditionGroup(templatePO, hrmFieldSearchConditionComInfo, addGroups); + if (null != templatePO) { + buildSearchConditionGroup(templatePO, hrmFieldSearchConditionComInfo, addGroups); + } } else { // 未选择模板展示默认模板搜索条件 if (CollectionUtils.isNotEmpty(allConditions)) { @@ -673,26 +667,23 @@ public class HrmResourceServiceImpl extends Service implements HrmResourceServic * @return */ private SearchTemplatePO buildSearchTemplateByFields(String fields) { - SearchTemplatePO templatePO = new SearchTemplatePO(); String[] split = fields.split(","); if (split.length > 0) { - List basicFieldsBuilder = new ArrayList<>(); - List personalFieldsBuilder = new ArrayList<>(); - List workFieldsBuilder = new ArrayList<>(); + List basicFields = new ArrayList<>(); + List personalFields = new ArrayList<>(); + List workFields = new ArrayList<>(); for (String fieldName : split) { if (fieldName.startsWith(HrmGroupEnum.HRM_BASIC.getGroupType().toString())) { - basicFieldsBuilder.add(fieldName.substring(fieldName.lastIndexOf("_") + 1)); + basicFields.add(fieldName.substring(fieldName.lastIndexOf("_") + 1)); } else if (fieldName.startsWith(HrmGroupEnum.HRM_PERSONAL.getGroupType().toString())) { - personalFieldsBuilder.add(fieldName.substring(fieldName.lastIndexOf("_") + 1)); + personalFields.add(fieldName.substring(fieldName.lastIndexOf("_") + 1)); } else if (fieldName.startsWith(HrmGroupEnum.HRM_WORK.getGroupType().toString())) { - workFieldsBuilder.add(fieldName.substring(fieldName.lastIndexOf("_") + 1)); + workFields.add(fieldName.substring(fieldName.lastIndexOf("_") + 1)); } } - templatePO.setBasicFields(basicFieldsBuilder.toString()); - templatePO.setPersonalFields(personalFieldsBuilder.toString()); - templatePO.setWorkFields(workFieldsBuilder.toString()); + return SearchTemplatePO.builder().basicFields(StringUtils.join(basicFields, ",")).personalFields(StringUtils.join(personalFields, ",")).workFields(StringUtils.join(workFields, ",")).build(); } - return templatePO; + return null; } /** diff --git a/src/com/engine/organization/web/HrmResourceController.java b/src/com/engine/organization/web/HrmResourceController.java index 33800701..81370e3e 100644 --- a/src/com/engine/organization/web/HrmResourceController.java +++ b/src/com/engine/organization/web/HrmResourceController.java @@ -177,8 +177,7 @@ public class HrmResourceController { public ReturnResult saveSearchTemplate(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody SearchTemplateParam params) { try { User user = HrmUserVarify.getUser(request, response); - getHrmResourceWrapper(user).saveSearchTemplate(params); - return ReturnResult.successed(); + return ReturnResult.successed(getHrmResourceWrapper(user).saveSearchTemplate(params)); } 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 71f4a379..89b6f9cd 100644 --- a/src/com/engine/organization/wrapper/HrmResourceWrapper.java +++ b/src/com/engine/organization/wrapper/HrmResourceWrapper.java @@ -59,8 +59,8 @@ public class HrmResourceWrapper extends OrganizationWrapper { return getHrmResourceService(user).getSearchCondition(params); } - public void saveSearchTemplate(SearchTemplateParam params) { - getHrmResourceService(user).saveSearchTemplate(params); + public Integer saveSearchTemplate(SearchTemplateParam params) { + return getHrmResourceService(user).saveSearchTemplate(params); } public void deleteSearchTemplate(Integer id) {