From d7f910aa84d72f2da5ec3eb2bd12418f67ef5b9c Mon Sep 17 00:00:00 2001 From: dxfeng Date: Wed, 1 Jun 2022 18:20:44 +0800 Subject: [PATCH] =?UTF-8?q?BUG=E4=BF=AE=E5=A4=8D=20=E5=B2=97=E4=BD=8D?= =?UTF-8?q?=E5=A4=8D=E5=88=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/表结构SQL/MySQL.sql | 12 ++++++---- .../organization/entity/DeleteParam.java | 4 +--- .../organization/entity/job/bo/JobBO.java | 4 ++-- .../entity/job/param/JobCopyParam.java | 23 +++++++++++++++++++ .../entity/job/param/JobSearchParam.java | 4 ++++ .../organization/service/JobService.java | 6 ++--- .../service/impl/JobServiceImpl.java | 19 ++++++++++----- .../organization/web/JobController.java | 13 +++++++++-- .../organization/wrapper/JobWrapper.java | 10 ++++---- 9 files changed, 70 insertions(+), 25 deletions(-) create mode 100644 src/com/engine/organization/entity/job/param/JobCopyParam.java diff --git a/docs/表结构SQL/MySQL.sql b/docs/表结构SQL/MySQL.sql index 604dc705..f83f1e74 100644 --- a/docs/表结构SQL/MySQL.sql +++ b/docs/表结构SQL/MySQL.sql @@ -240,8 +240,10 @@ CREATE TABLE JCL_ORG_JOB ( CREATE TABLE JCL_ORG_JOBDT ( id int auto_increment NOT NULL, mainid int NULL, - level_id int null, - grade_id int null, + level_id varchar(100) NULL, + grade_id varchar(100) NULL, + level_id_span varchar(100) NULL, + grade_id_span varchar(100) NULL, creator int null, delete_type int null, create_time date null, @@ -249,14 +251,14 @@ CREATE TABLE JCL_ORG_JOBDT ( CONSTRAINT JCL_ORG_JOBDT_PK PRIMARY KEY (id) ); --- JCL_ORG_JOBPEXT -CREATE TABLE JCL_ORG_JOBPEXT ( +-- JCL_ORG_JOBEXT +CREATE TABLE JCL_ORG_JOBEXT ( id int auto_increment NOT NULL, creator int null, delete_type int null, create_time date null, update_time date null, - CONSTRAINT JCL_ORG_JOBPEXT_PK PRIMARY KEY (id) + CONSTRAINT JCL_ORG_JOBEXT_PK PRIMARY KEY (id) ); -- JCL_ORG_JOBEXT_DT1 diff --git a/src/com/engine/organization/entity/DeleteParam.java b/src/com/engine/organization/entity/DeleteParam.java index 422a8735..8ce69e88 100644 --- a/src/com/engine/organization/entity/DeleteParam.java +++ b/src/com/engine/organization/entity/DeleteParam.java @@ -9,7 +9,6 @@ import weaver.general.StringUtil; import java.util.ArrayList; import java.util.Arrays; import java.util.Collection; -import java.util.List; import java.util.stream.Collectors; /** @@ -29,8 +28,7 @@ public class DeleteParam { if(StringUtil.isEmpty(ids)){ return new ArrayList<>(); } - List collect = Arrays.stream(ids.split(",")).map(item -> Long.parseLong(item)).collect(Collectors.toList()); - return collect; + return Arrays.stream(ids.split(",")).map(Long::parseLong).collect(Collectors.toList()); } } diff --git a/src/com/engine/organization/entity/job/bo/JobBO.java b/src/com/engine/organization/entity/job/bo/JobBO.java index 89f50305..f0345015 100644 --- a/src/com/engine/organization/entity/job/bo/JobBO.java +++ b/src/com/engine/organization/entity/job/bo/JobBO.java @@ -28,8 +28,8 @@ public class JobBO { .id(param.getId() == null ? 0 : param.getId()) .jobNo(param.getJobNo()) .jobName(param.getJobName()) - .parentComp(param.getParentComp()) - .parentDept(param.getParentDept()) + .parentComp(null==param.getParentComp()?param.getSubcompanyid1():param.getParentComp()) + .parentDept(null==param.getParentDept()?param.getDepartmentid():param.getParentDept()) .sequenceId(param.getSequenceId()) .schemeId(param.getSchemeId()) .parentJob(param.getParentJob()) diff --git a/src/com/engine/organization/entity/job/param/JobCopyParam.java b/src/com/engine/organization/entity/job/param/JobCopyParam.java new file mode 100644 index 00000000..2057508e --- /dev/null +++ b/src/com/engine/organization/entity/job/param/JobCopyParam.java @@ -0,0 +1,23 @@ +package com.engine.organization.entity.job.param; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @description: TODO + * @author:dxfeng + * @createTime: 2022/06/01 + * @version: 1.0 + */ +@Data +@Builder +@AllArgsConstructor +@NoArgsConstructor +public class JobCopyParam { + private String ids; + + private String department; + +} diff --git a/src/com/engine/organization/entity/job/param/JobSearchParam.java b/src/com/engine/organization/entity/job/param/JobSearchParam.java index 69088ae8..6e0525ef 100644 --- a/src/com/engine/organization/entity/job/param/JobSearchParam.java +++ b/src/com/engine/organization/entity/job/param/JobSearchParam.java @@ -73,4 +73,8 @@ public class JobSearchParam extends BaseQueryParam { * 禁用标记 */ private Boolean forbiddenTag; + + private Long subcompanyid1; + + private Long departmentid; } diff --git a/src/com/engine/organization/service/JobService.java b/src/com/engine/organization/service/JobService.java index 68a86ebf..be3ae804 100644 --- a/src/com/engine/organization/service/JobService.java +++ b/src/com/engine/organization/service/JobService.java @@ -76,11 +76,11 @@ public interface JobService { /** * 复制岗位到指定部门 * - * @param id - * @param departmentId + * @param ids + * @param department * @return */ - int copyJobItem(long id, long departmentId); + int copyJobItem(String ids, String department); /** * 更新禁用标记 diff --git a/src/com/engine/organization/service/impl/JobServiceImpl.java b/src/com/engine/organization/service/impl/JobServiceImpl.java index 7873ca5f..74ba42d7 100644 --- a/src/com/engine/organization/service/impl/JobServiceImpl.java +++ b/src/com/engine/organization/service/impl/JobServiceImpl.java @@ -422,12 +422,19 @@ public class JobServiceImpl extends Service implements JobService { } @Override - public int copyJobItem(long id, long departmentId) { - JobPO jobById = getJobMapper().getJobById(id); - // TODO 自动编号 - jobById.setJobNo("复制_" + jobById.getJobNo()); - jobById.setParentDept(departmentId); - return getJobMapper().insertIgnoreNull(jobById); + public int copyJobItem(String ids, String department) { + OrganizationAssert.notBlank(department, "请指定需要复制的部门"); + int insertCount = 0; + List idList = Arrays.stream(ids.split(",")).map(Long::parseLong).collect(Collectors.toList()); + for (Long id : idList) { + JobPO jobById = getJobMapper().getJobById(id); + // TODO 自动编号 + jobById.setJobNo("复制_" + jobById.getJobNo()); + jobById.setParentDept(Long.parseLong(department)); + insertCount += getJobMapper().insertIgnoreNull(jobById); + } + + return insertCount; } @Override diff --git a/src/com/engine/organization/web/JobController.java b/src/com/engine/organization/web/JobController.java index 0bdc3de0..686b162e 100644 --- a/src/com/engine/organization/web/JobController.java +++ b/src/com/engine/organization/web/JobController.java @@ -5,6 +5,7 @@ import com.alibaba.fastjson.JSONObject; import com.engine.common.util.ParamUtil; import com.engine.common.util.ServiceUtil; import com.engine.organization.entity.DeleteParam; +import com.engine.organization.entity.job.param.JobCopyParam; import com.engine.organization.entity.job.param.JobSearchParam; import com.engine.organization.entity.searchtree.SearchTreeParams; import com.engine.organization.util.response.ReturnResult; @@ -168,13 +169,21 @@ public class JobController { } } + /** + * 复制到指定部门 + * + * @param request + * @param response + * @param param + * @return + */ @POST @Path("/copyJobItem") @Produces(MediaType.APPLICATION_JSON) - public ReturnResult copyJobItem(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody JobSearchParam param) { + public ReturnResult copyJobItem(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody JobCopyParam param) { try { User user = HrmUserVarify.getUser(request, response); - return ReturnResult.successed(getJobWrapper(user).copyJobItem(param.getId(), param.getParentDept())); + return ReturnResult.successed(getJobWrapper(user).copyJobItem(param.getIds(), param.getDepartment())); } catch (Exception e) { return ReturnResult.exceptionHandle(e.getMessage()); } diff --git a/src/com/engine/organization/wrapper/JobWrapper.java b/src/com/engine/organization/wrapper/JobWrapper.java index 587cf1de..4d5b0bf6 100644 --- a/src/com/engine/organization/wrapper/JobWrapper.java +++ b/src/com/engine/organization/wrapper/JobWrapper.java @@ -106,12 +106,12 @@ public class JobWrapper extends Service { /** * 复制岗位到指定部门 * - * @param id - * @param departmentId + * @param ids + * @param department * @return */ - public int copyJobItem(long id, long departmentId) { - return getJobService(user).copyJobItem(id, departmentId); + public int copyJobItem(String ids, String department) { + return getJobService(user).copyJobItem(ids, department); } /** @@ -135,6 +135,7 @@ public class JobWrapper extends Service { /** * 获取复制表单 + * * @return */ public ReturnResult getCopyForm() { @@ -149,6 +150,7 @@ public class JobWrapper extends Service { /** * 根据岗位获取人员 + * * @param jobId * @return */