From 9c64467cc8e4b5a93360af725d57a3dedf67eb97 Mon Sep 17 00:00:00 2001 From: dxfeng Date: Fri, 19 Aug 2022 10:37:05 +0800 Subject: [PATCH] =?UTF-8?q?BUG=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/DepartmentServiceImpl.java | 2 +- .../thread/OrganizationRunable.java | 30 +++++++++++++++---- 2 files changed, 25 insertions(+), 7 deletions(-) diff --git a/src/com/engine/organization/service/impl/DepartmentServiceImpl.java b/src/com/engine/organization/service/impl/DepartmentServiceImpl.java index 82b27230..f7053a5f 100644 --- a/src/com/engine/organization/service/impl/DepartmentServiceImpl.java +++ b/src/com/engine/organization/service/impl/DepartmentServiceImpl.java @@ -251,7 +251,7 @@ public class DepartmentServiceImpl extends Service implements DepartmentService OrganizationAssert.notEmpty(ids, "请选择要删除的数据"); Map map = new HashMap<>(); map.put("id", StringUtils.join(ids, ",")); - new Thread(new OrganizationRunable(user, LogModuleNameEnum.DEPARTMENT, OperateTypeEnum.CANCELED, map)).start(); + new OrganizationRunable(user, LogModuleNameEnum.DEPARTMENT, OperateTypeEnum.CANCELED, map).run(); return getDepartmentMapper().deleteByIds(ids); } diff --git a/src/com/engine/organization/thread/OrganizationRunable.java b/src/com/engine/organization/thread/OrganizationRunable.java index 700d2ae6..90689f41 100644 --- a/src/com/engine/organization/thread/OrganizationRunable.java +++ b/src/com/engine/organization/thread/OrganizationRunable.java @@ -5,11 +5,13 @@ import com.engine.hrm.service.impl.HrmJobServiceImpl; import com.engine.hrm.service.impl.OrganizationServiceImpl; import com.engine.organization.entity.commom.RecordInfo; import com.engine.organization.entity.company.po.CompPO; +import com.engine.organization.entity.department.po.DepartmentPO; import com.engine.organization.entity.extend.param.ExtendInfoParams; import com.engine.organization.entity.job.po.JobPO; import com.engine.organization.enums.LogModuleNameEnum; import com.engine.organization.enums.OperateTypeEnum; import com.engine.organization.mapper.comp.CompMapper; +import com.engine.organization.mapper.department.DepartmentMapper; import com.engine.organization.mapper.extend.ExtMapper; import com.engine.organization.mapper.hrmresource.SystemDataMapper; import com.engine.organization.mapper.job.JobMapper; @@ -315,17 +317,33 @@ public class OrganizationRunable implements Runnable { String forbiddenTag = Util.null2String(params.get("forbiddenTag")); List idList = new ArrayList<>(); String[] split = departmentIds.split(","); - for (String s : split) { - idList.add(EcHrmRelationUtil.getEcDepartmentId(s)); + if (StringUtils.isBlank(forbiddenTag)) { + long currentTimeMillis = System.currentTimeMillis(); + for (String s : split) { + DepartmentPO departmentPO = MapperProxyFactory.getProxy(DepartmentMapper.class).getDeptById(Long.parseLong(s)); + params.put("dept_name_short", departmentPO.getDeptNameShort() + currentTimeMillis); + params.put("dept_name", departmentPO.getDeptName() + currentTimeMillis); + params.put("parent_comp", departmentPO.getParentComp()); + params.put("parent_dept", departmentPO.getParentDept()); + params.put("show_order", departmentPO.getShowOrder()); + params.put("dept_no", departmentPO.getDeptNo()); + params.put("dept_principal", departmentPO.getDeptPrincipal()); + updateDepartment(); + idList.add(EcHrmRelationUtil.getEcDepartmentId(s)); + } + } else { + for (String s : split) { + idList.add(EcHrmRelationUtil.getEcDepartmentId(s)); + } } Map map = new HashMap<>(); map.put("id", StringUtils.join(idList, ",")); - if (StringUtils.isBlank(forbiddenTag) || "1".equals(forbiddenTag)) { - // 封存 - ServiceUtil.getService(OrganizationServiceImpl.class, user).doDepartmentCancel(map, user); - } else { + if ("0".equals(forbiddenTag)) { // 解封 ServiceUtil.getService(OrganizationServiceImpl.class, user).doDepartmentISCanceled(map, user); + } else { + // 封存 + ServiceUtil.getService(OrganizationServiceImpl.class, user).doDepartmentCancel(map, user); } }