From b368c3ea270e016e55f61124775629902c44ac15 Mon Sep 17 00:00:00 2001 From: dxfeng Date: Thu, 8 Dec 2022 17:10:50 +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 --- .../thread/GroupTriggerRunnable.java | 196 ++++----- .../thread/HrmResourceTriggerRunnable.java | 228 +++++----- .../thread/JobTriggerRunnable.java | 404 +++++++++--------- 3 files changed, 414 insertions(+), 414 deletions(-) diff --git a/src/com/engine/organization/thread/GroupTriggerRunnable.java b/src/com/engine/organization/thread/GroupTriggerRunnable.java index 0473c948..343605cf 100644 --- a/src/com/engine/organization/thread/GroupTriggerRunnable.java +++ b/src/com/engine/organization/thread/GroupTriggerRunnable.java @@ -1,98 +1,98 @@ -package com.engine.organization.thread; - -import com.engine.organization.entity.hrmresource.po.HrmResourcePO; -import com.engine.organization.entity.map.JclOrgMap; -import com.engine.organization.mapper.jclorgmap.JclOrgMapper; -import com.engine.organization.mapper.trigger.CompTriggerMapper; -import com.engine.organization.mapper.trigger.GroupTriggerMapper; -import com.engine.organization.util.OrganizationDateUtil; -import com.engine.organization.util.db.MapperProxyFactory; -import org.apache.commons.lang3.StringUtils; -import weaver.common.DateUtil; -import weaver.general.Util; -import weaver.hrm.passwordprotection.domain.HrmResource; - -import java.sql.Date; -import java.util.Calendar; -import java.util.Map; - -/** - * @author:dxfeng - * @createTime: 2022/08/30 - * @version: 1.0 - */ -public class GroupTriggerRunnable implements Runnable { - Map params; - - private CompTriggerMapper getCompTriggerMapper() { - return MapperProxyFactory.getProxy(CompTriggerMapper.class); - } - - private GroupTriggerMapper getGroupTriggerMapper() { - return MapperProxyFactory.getProxy(GroupTriggerMapper.class); - } - - public GroupTriggerRunnable(Map params) { - this.params = params; - } - - - @Override - public void run() { - JclOrgMap jclOrgMap = new JclOrgMap(); - //id = 0; - jclOrgMap.setId(0); - //ftype = 0; - jclOrgMap.setFType(0); - jclOrgMap.setFObjId(0); - jclOrgMap.setFEcId(parseString2Int(params.get("id"))); - jclOrgMap.setUuid(Util.null2String(params.get("uuid"))); - jclOrgMap.setFNumber("00"); - jclOrgMap.setFName(Util.null2String(params.get("companyname"))); - jclOrgMap.setFClass(0); - jclOrgMap.setFClassName("行政维度"); - jclOrgMap.setFLeader(getGroupTriggerMapper().getInfoValue(1)); - HrmResource hrmResourceById = getCompTriggerMapper().getHrmResourceById(jclOrgMap.getFLeader()); - if (null != hrmResourceById) { - jclOrgMap.setFLeaderImg(hrmResourceById.getMessagerurl()); - jclOrgMap.setFLeaderName(hrmResourceById.getLastname()); - jclOrgMap.setFLeaderJobId(hrmResourceById.getJobtitle()); - } - jclOrgMap.setFLeaderJob(getCompTriggerMapper().getJobTitleMarkById(jclOrgMap.getFLeaderJobId())); - HrmResourcePO resourceByEcId = getCompTriggerMapper().getResourceByEcId(jclOrgMap.getFLeader()); - if (null != resourceByEcId) { - jclOrgMap.setFLeaderSt(resourceByEcId.getJobGrade()); - jclOrgMap.setFLeaderLv(resourceByEcId.getJobLevel()); - } - jclOrgMap.setFParentId(-1); - jclOrgMap.setFObjParentId(0); - String currentDate = OrganizationDateUtil.getFormatLocalDate(new java.util.Date()); - jclOrgMap.setFDateBegin(new Date(OrganizationDateUtil.stringToDate(currentDate).getTime())); - jclOrgMap.setFDateEnd(new Date(OrganizationDateUtil.stringToDate("2099-12-31").getTime())); - JclOrgMap jclOrgMapByObjID = MapperProxyFactory.getProxy(JclOrgMapper.class).getJclOrgMapByObjID(jclOrgMap.getFDateBegin(), "0", jclOrgMap.getFObjId().toString()); - if (null != jclOrgMapByObjID) { - jclOrgMap.setFPlan(jclOrgMapByObjID.getFPlan()); - jclOrgMap.setFOnJob(jclOrgMapByObjID.getFOnJob()); - } else { - jclOrgMap.setFPlan(0); - jclOrgMap.setFOnJob(0); - } - jclOrgMap.setFIsVitual(0); - Calendar cal = Calendar.getInstance(); - cal.setTime(jclOrgMap.getFDateBegin()); - Calendar calendar = DateUtil.addDay(cal, -1); - Date time = new Date(calendar.getTime().getTime()); - getGroupTriggerMapper().deleteMap(0, jclOrgMap.getFDateBegin()); - getGroupTriggerMapper().updateMap(0, jclOrgMap.getFDateBegin(), time); - - MapperProxyFactory.getProxy(JclOrgMapper.class).insertMap(jclOrgMap); - } - - private Integer parseString2Int(Object args) { - String s = Util.null2String(args); - if (StringUtils.isBlank(s)) { - return null; - } - return Integer.parseInt(s); - } -} +//package com.engine.organization.thread; +// +//import com.engine.organization.entity.hrmresource.po.HrmResourcePO; +//import com.engine.organization.entity.map.JclOrgMap; +//import com.engine.organization.mapper.jclorgmap.JclOrgMapper; +//import com.engine.organization.mapper.trigger.CompTriggerMapper; +//import com.engine.organization.mapper.trigger.GroupTriggerMapper; +//import com.engine.organization.util.OrganizationDateUtil; +//import com.engine.organization.util.db.MapperProxyFactory; +//import org.apache.commons.lang3.StringUtils; +//import weaver.common.DateUtil; +//import weaver.general.Util; +//import weaver.hrm.passwordprotection.domain.HrmResource; +// +//import java.sql.Date; +//import java.util.Calendar; +//import java.util.Map; +// +///** +// * @author:dxfeng +// * @createTime: 2022/08/30 +// * @version: 1.0 +// */ +//public class GroupTriggerRunnable implements Runnable { +// Map params; +// +// private CompTriggerMapper getCompTriggerMapper() { +// return MapperProxyFactory.getProxy(CompTriggerMapper.class); +// } +// +// private GroupTriggerMapper getGroupTriggerMapper() { +// return MapperProxyFactory.getProxy(GroupTriggerMapper.class); +// } +// +// public GroupTriggerRunnable(Map params) { +// this.params = params; +// } +// +// +// @Override +// public void run() { +// JclOrgMap jclOrgMap = new JclOrgMap(); +// //id = 0; +// jclOrgMap.setId(0); +// //ftype = 0; +// jclOrgMap.setFType(0); +// jclOrgMap.setFObjId(0); +// jclOrgMap.setFEcId(parseString2Int(params.get("id"))); +// jclOrgMap.setUuid(Util.null2String(params.get("uuid"))); +// jclOrgMap.setFNumber("00"); +// jclOrgMap.setFName(Util.null2String(params.get("companyname"))); +// jclOrgMap.setFClass(0); +// jclOrgMap.setFClassName("行政维度"); +// jclOrgMap.setFLeader(getGroupTriggerMapper().getInfoValue(1)); +// HrmResource hrmResourceById = getCompTriggerMapper().getHrmResourceById(jclOrgMap.getFLeader()); +// if (null != hrmResourceById) { +// jclOrgMap.setFLeaderImg(hrmResourceById.getMessagerurl()); +// jclOrgMap.setFLeaderName(hrmResourceById.getLastname()); +// jclOrgMap.setFLeaderJobId(hrmResourceById.getJobtitle()); +// } +// jclOrgMap.setFLeaderJob(getCompTriggerMapper().getJobTitleMarkById(jclOrgMap.getFLeaderJobId())); +// HrmResourcePO resourceByEcId = getCompTriggerMapper().getResourceByEcId(jclOrgMap.getFLeader()); +// if (null != resourceByEcId) { +// jclOrgMap.setFLeaderSt(resourceByEcId.getJobGrade()); +// jclOrgMap.setFLeaderLv(resourceByEcId.getJobLevel()); +// } +// jclOrgMap.setFParentId(-1); +// jclOrgMap.setFObjParentId(0); +// String currentDate = OrganizationDateUtil.getFormatLocalDate(new java.util.Date()); +// jclOrgMap.setFDateBegin(new Date(OrganizationDateUtil.stringToDate(currentDate).getTime())); +// jclOrgMap.setFDateEnd(new Date(OrganizationDateUtil.stringToDate("2099-12-31").getTime())); +// JclOrgMap jclOrgMapByObjID = MapperProxyFactory.getProxy(JclOrgMapper.class).getJclOrgMapByObjID(jclOrgMap.getFDateBegin(), "0", jclOrgMap.getFObjId().toString()); +// if (null != jclOrgMapByObjID) { +// jclOrgMap.setFPlan(jclOrgMapByObjID.getFPlan()); +// jclOrgMap.setFOnJob(jclOrgMapByObjID.getFOnJob()); +// } else { +// jclOrgMap.setFPlan(0); +// jclOrgMap.setFOnJob(0); +// } +// jclOrgMap.setFIsVitual(0); +// Calendar cal = Calendar.getInstance(); +// cal.setTime(jclOrgMap.getFDateBegin()); +// Calendar calendar = DateUtil.addDay(cal, -1); +// Date time = new Date(calendar.getTime().getTime()); +// getGroupTriggerMapper().deleteMap(0, jclOrgMap.getFDateBegin()); +// getGroupTriggerMapper().updateMap(0, jclOrgMap.getFDateBegin(), time); +// +// MapperProxyFactory.getProxy(JclOrgMapper.class).insertMap(jclOrgMap); +// } +// +// private Integer parseString2Int(Object args) { +// String s = Util.null2String(args); +// if (StringUtils.isBlank(s)) { +// return null; +// } +// return Integer.parseInt(s); +// } +//} diff --git a/src/com/engine/organization/thread/HrmResourceTriggerRunnable.java b/src/com/engine/organization/thread/HrmResourceTriggerRunnable.java index b4e01fbd..1a4844c6 100644 --- a/src/com/engine/organization/thread/HrmResourceTriggerRunnable.java +++ b/src/com/engine/organization/thread/HrmResourceTriggerRunnable.java @@ -1,114 +1,114 @@ -package com.engine.organization.thread; - -import com.engine.organization.entity.hrmresource.po.HrmResourcePO; -import com.engine.organization.entity.job.po.JobPO; -import com.engine.organization.entity.map.JclOrgMap; -import com.engine.organization.entity.personnelcard.UserCard; -import com.engine.organization.mapper.jclorgmap.JclOrgMapper; -import com.engine.organization.mapper.job.JobMapper; -import com.engine.organization.mapper.resource.ResourceMapper; -import com.engine.organization.mapper.trigger.CompTriggerMapper; -import com.engine.organization.mapper.trigger.HrmResourceTriggerMapper; -import com.engine.organization.util.OrganizationDateUtil; -import com.engine.organization.util.db.MapperProxyFactory; -import weaver.common.DateUtil; -import weaver.hrm.passwordprotection.domain.HrmResource; - -import java.sql.Date; -import java.util.Calendar; - -/** - * @author:dxfeng - * @createTime: 2022/09/01 - * @version: 1.0 - */ -public class HrmResourceTriggerRunnable implements Runnable { - Long userId; - - private CompTriggerMapper getCompTriggerMapper() { - return MapperProxyFactory.getProxy(CompTriggerMapper.class); - } - - private HrmResourceTriggerMapper getHrmResourceTriggerMapper() { - return MapperProxyFactory.getProxy(HrmResourceTriggerMapper.class); - } - private ResourceMapper getResourceMapper() { - return MapperProxyFactory.getProxy(ResourceMapper.class); - } - private JclOrgMapper getJclOrgMapper() { - return MapperProxyFactory.getProxy(JclOrgMapper.class); - } - - public HrmResourceTriggerRunnable(Long id) { - this.userId = id; - } - - @Override - public void run() { - int st = 100000000; - int sj = 200000000; - int sk = 300000000; - Integer delete = null; - JclOrgMap jclMap = new JclOrgMap(); - jclMap.setFType(4); - // 查询当前人员信息数据 - String ecResourceId = getResourceMapper().getEcResourceId(userId.toString()); - // EC人员 - HrmResource ecHrmResource = getHrmResourceTriggerMapper().getHrmResource(Long.parseLong(ecResourceId)); - // 聚才林人员 - HrmResourcePO hrmResource = getCompTriggerMapper().getResourceByEcId(Integer.parseInt(ecResourceId)); - if (null != hrmResource && null!=ecHrmResource) { - jclMap.setFObjId(hrmResource.getId().intValue()); - jclMap.setId(hrmResource.getId().intValue() + sk); - jclMap.setFEcId(ecHrmResource.getId()); - jclMap.setFNumber(hrmResource.getWorkCode()); - jclMap.setFName(hrmResource.getLastName()); - jclMap.setUuid(hrmResource.getUuid()); - delete = hrmResource.getStatus() < 4 ? 0 : 1; - // 展示为花名册上传的照片 - String image = UserCard.builder().image(hrmResource.getResourceImageId()).build().getImage(); - jclMap.setFLeaderImg(image); - jclMap.setFLeaderName(hrmResource.getLastName()); - jclMap.setFLeaderJobId(hrmResource.getJobTitle().intValue()); - if (null != hrmResource.getJobTitle()) { - JobPO jobById = MapperProxyFactory.getProxy(JobMapper.class).getJobById(hrmResource.getJobTitle()); - if (null != jobById) { - jclMap.setFLeaderJob(jobById.getJobName()); - } - jclMap.setFObjParentId(hrmResource.getJobTitle().intValue()); - jclMap.setFParentId(jclMap.getFObjParentId() + sj); - } - jclMap.setFLeaderSt(hrmResource.getJobGrade()); - jclMap.setFLeaderLv(hrmResource.getJobLevel()); - jclMap.setFClass(0); - jclMap.setFClassName("行政维度"); - String currentDate = OrganizationDateUtil.getFormatLocalDate(new java.util.Date()); - jclMap.setFDateBegin(new Date(OrganizationDateUtil.stringToDate(currentDate).getTime())); - jclMap.setFDateEnd(new Date(OrganizationDateUtil.stringToDate("2099-12-31").getTime())); - jclMap.setFIsVitual(0); - - Calendar cal = Calendar.getInstance(); - cal.setTime(jclMap.getFDateBegin()); - Calendar calendar = DateUtil.addDay(cal, -1); - Date time = new Date(calendar.getTime().getTime()); - // 更新前的数据 - JclOrgMap jclOrgMapByObjID = getJclOrgMapper().getJclOrgMapByObjID(jclMap.getFDateBegin(), "4", hrmResource.getId().toString()); - - getCompTriggerMapper().deleteMap(jclMap.getFType(), jclMap.getFObjId(), jclMap.getFDateBegin()); - getCompTriggerMapper().updateMap(jclMap.getFType(), jclMap.getFObjId(), jclMap.getFDateBegin(), time); - if (0 == delete) { - MapperProxyFactory.getProxy(JclOrgMapper.class).insertMap(jclMap); - // 更新当前架构图负责人的卡片信息 - getHrmResourceTriggerMapper().updateLeaders(jclMap.getFDateBegin(), hrmResource.getId().toString(), jclMap.getFLeaderImg(), jclMap.getFLeaderName(), jclMap.getFLeaderJobId(), jclMap.getFLeaderJob(), jclMap.getFLeaderLv(), jclMap.getFLeaderSt()); - // 更新组织架构图在岗数 - if (null != jclOrgMapByObjID) { - new StaffTriggerRunnable(jclOrgMapByObjID.getFObjParentId()).run(); - } - new StaffTriggerRunnable(jclMap.getFObjParentId()).run(); - - } else if (null != jclOrgMapByObjID) { - new StaffTriggerRunnable(jclOrgMapByObjID.getFObjParentId()).run(); - } - } - } -} +//package com.engine.organization.thread; +// +//import com.engine.organization.entity.hrmresource.po.HrmResourcePO; +//import com.engine.organization.entity.job.po.JobPO; +//import com.engine.organization.entity.map.JclOrgMap; +//import com.engine.organization.entity.personnelcard.UserCard; +//import com.engine.organization.mapper.jclorgmap.JclOrgMapper; +//import com.engine.organization.mapper.job.JobMapper; +//import com.engine.organization.mapper.resource.ResourceMapper; +//import com.engine.organization.mapper.trigger.CompTriggerMapper; +//import com.engine.organization.mapper.trigger.HrmResourceTriggerMapper; +//import com.engine.organization.util.OrganizationDateUtil; +//import com.engine.organization.util.db.MapperProxyFactory; +//import weaver.common.DateUtil; +//import weaver.hrm.passwordprotection.domain.HrmResource; +// +//import java.sql.Date; +//import java.util.Calendar; +// +///** +// * @author:dxfeng +// * @createTime: 2022/09/01 +// * @version: 1.0 +// */ +//public class HrmResourceTriggerRunnable implements Runnable { +// Long userId; +// +// private CompTriggerMapper getCompTriggerMapper() { +// return MapperProxyFactory.getProxy(CompTriggerMapper.class); +// } +// +// private HrmResourceTriggerMapper getHrmResourceTriggerMapper() { +// return MapperProxyFactory.getProxy(HrmResourceTriggerMapper.class); +// } +// private ResourceMapper getResourceMapper() { +// return MapperProxyFactory.getProxy(ResourceMapper.class); +// } +// private JclOrgMapper getJclOrgMapper() { +// return MapperProxyFactory.getProxy(JclOrgMapper.class); +// } +// +// public HrmResourceTriggerRunnable(Long id) { +// this.userId = id; +// } +// +// @Override +// public void run() { +// int st = 100000000; +// int sj = 200000000; +// int sk = 300000000; +// Integer delete = null; +// JclOrgMap jclMap = new JclOrgMap(); +// jclMap.setFType(4); +// // 查询当前人员信息数据 +// String ecResourceId = getResourceMapper().getEcResourceId(userId.toString()); +// // EC人员 +// HrmResource ecHrmResource = getHrmResourceTriggerMapper().getHrmResource(Long.parseLong(ecResourceId)); +// // 聚才林人员 +// HrmResourcePO hrmResource = getCompTriggerMapper().getResourceByEcId(Integer.parseInt(ecResourceId)); +// if (null != hrmResource && null!=ecHrmResource) { +// jclMap.setFObjId(hrmResource.getId().intValue()); +// jclMap.setId(hrmResource.getId().intValue() + sk); +// jclMap.setFEcId(ecHrmResource.getId()); +// jclMap.setFNumber(hrmResource.getWorkCode()); +// jclMap.setFName(hrmResource.getLastName()); +// jclMap.setUuid(hrmResource.getUuid()); +// delete = hrmResource.getStatus() < 4 ? 0 : 1; +// // 展示为花名册上传的照片 +// String image = UserCard.builder().image(hrmResource.getResourceImageId()).build().getImage(); +// jclMap.setFLeaderImg(image); +// jclMap.setFLeaderName(hrmResource.getLastName()); +// jclMap.setFLeaderJobId(hrmResource.getJobTitle().intValue()); +// if (null != hrmResource.getJobTitle()) { +// JobPO jobById = MapperProxyFactory.getProxy(JobMapper.class).getJobById(hrmResource.getJobTitle()); +// if (null != jobById) { +// jclMap.setFLeaderJob(jobById.getJobName()); +// } +// jclMap.setFObjParentId(hrmResource.getJobTitle().intValue()); +// jclMap.setFParentId(jclMap.getFObjParentId() + sj); +// } +// jclMap.setFLeaderSt(hrmResource.getJobGrade()); +// jclMap.setFLeaderLv(hrmResource.getJobLevel()); +// jclMap.setFClass(0); +// jclMap.setFClassName("行政维度"); +// String currentDate = OrganizationDateUtil.getFormatLocalDate(new java.util.Date()); +// jclMap.setFDateBegin(new Date(OrganizationDateUtil.stringToDate(currentDate).getTime())); +// jclMap.setFDateEnd(new Date(OrganizationDateUtil.stringToDate("2099-12-31").getTime())); +// jclMap.setFIsVitual(0); +// +// Calendar cal = Calendar.getInstance(); +// cal.setTime(jclMap.getFDateBegin()); +// Calendar calendar = DateUtil.addDay(cal, -1); +// Date time = new Date(calendar.getTime().getTime()); +// // 更新前的数据 +// JclOrgMap jclOrgMapByObjID = getJclOrgMapper().getJclOrgMapByObjID(jclMap.getFDateBegin(), "4", hrmResource.getId().toString()); +// +// getCompTriggerMapper().deleteMap(jclMap.getFType(), jclMap.getFObjId(), jclMap.getFDateBegin()); +// getCompTriggerMapper().updateMap(jclMap.getFType(), jclMap.getFObjId(), jclMap.getFDateBegin(), time); +// if (0 == delete) { +// MapperProxyFactory.getProxy(JclOrgMapper.class).insertMap(jclMap); +// // 更新当前架构图负责人的卡片信息 +// getHrmResourceTriggerMapper().updateLeaders(jclMap.getFDateBegin(), hrmResource.getId().toString(), jclMap.getFLeaderImg(), jclMap.getFLeaderName(), jclMap.getFLeaderJobId(), jclMap.getFLeaderJob(), jclMap.getFLeaderLv(), jclMap.getFLeaderSt()); +// // 更新组织架构图在岗数 +// if (null != jclOrgMapByObjID) { +// new StaffTriggerRunnable(jclOrgMapByObjID.getFObjParentId()).run(); +// } +// new StaffTriggerRunnable(jclMap.getFObjParentId()).run(); +// +// } else if (null != jclOrgMapByObjID) { +// new StaffTriggerRunnable(jclOrgMapByObjID.getFObjParentId()).run(); +// } +// } +// } +//} diff --git a/src/com/engine/organization/thread/JobTriggerRunnable.java b/src/com/engine/organization/thread/JobTriggerRunnable.java index 81effe44..de1cef2d 100644 --- a/src/com/engine/organization/thread/JobTriggerRunnable.java +++ b/src/com/engine/organization/thread/JobTriggerRunnable.java @@ -1,202 +1,202 @@ -package com.engine.organization.thread; - -import com.engine.organization.entity.job.po.JobPO; -import com.engine.organization.entity.logview.bo.FieldBaseEquator; -import com.engine.organization.entity.map.JclOrgMap; -import com.engine.organization.entity.staff.po.StaffPO; -import com.engine.organization.enums.ModuleTypeEnum; -import com.engine.organization.mapper.jclorgmap.JclOrgMapper; -import com.engine.organization.mapper.job.JobMapper; -import com.engine.organization.mapper.staff.StaffMapper; -import com.engine.organization.mapper.trigger.CompTriggerMapper; -import com.engine.organization.mapper.trigger.JobTriggerMapper; -import com.engine.organization.util.OrganizationDateUtil; -import com.engine.organization.util.db.MapperProxyFactory; -import org.apache.commons.collections.CollectionUtils; -import weaver.common.DateUtil; - -import java.sql.Date; -import java.util.Calendar; -import java.util.List; - -/** - * @author:dxfeng - * @createTime: 2022/08/30 - * @version: 1.0 - */ -public class JobTriggerRunnable implements Runnable { - - private final JobPO oldJob; - private final JobPO newJob; - private Boolean forbiddenTag = false; - - private CompTriggerMapper getCompTriggerMapper() { - return MapperProxyFactory.getProxy(CompTriggerMapper.class); - } - - private JobTriggerMapper getJobTriggerMapper() { - return MapperProxyFactory.getProxy(JobTriggerMapper.class); - } - - public JobTriggerRunnable(JobPO oldJob, JobPO newJob) { - this.oldJob = oldJob; - this.newJob = newJob; - } - - public JobTriggerRunnable(Boolean forbiddenTag, JobPO oldJob, JobPO newJob) { - this.oldJob = oldJob; - this.newJob = newJob; - this.forbiddenTag = forbiddenTag; - } - - public JobTriggerRunnable(Long jobId) { - this.oldJob = new JobPO(); - this.newJob = MapperProxyFactory.getProxy(JobMapper.class).getJobById(jobId); - } - - public JobTriggerRunnable(Long oldJobId, Long newJobId) { - this.oldJob = MapperProxyFactory.getProxy(JobMapper.class).getJobById(oldJobId); - this.newJob = MapperProxyFactory.getProxy(JobMapper.class).getJobById(newJobId); - } - - public JobTriggerRunnable(JobPO newJob) { - this.oldJob = new JobPO(); - this.newJob = newJob; - this.newJob.setDeleteType(1); - } - - @Override - public void run() { - FieldBaseEquator fieldBaseEquator = new FieldBaseEquator(); - List diffFields = fieldBaseEquator.getDiffFieldList(oldJob, newJob); - if (CollectionUtils.isEmpty(diffFields)) { - return; - } - // 判断 - JclOrgMap jclMap = new JclOrgMap(); - int st = 100000000; - int sj = 200000000; - jclMap.setFType(3); - // 更新逻辑 - jclMap.setFObjId(newJob.getId().intValue()); - jclMap.setId(newJob.getId().intValue() + sj); - jclMap.setFNumber(newJob.getJobNo()); - jclMap.setFName(newJob.getJobName()); - jclMap.setFParentId(null == newJob.getParentJob() ? newJob.getParentDept().intValue() + st : newJob.getParentJob().intValue() + sj); - jclMap.setFObjParentId(null == newJob.getParentJob() ? newJob.getParentDept().intValue() : newJob.getParentJob().intValue()); - Integer parentdept = newJob.getParentDept().intValue(); - - jclMap.setFClass(0); - jclMap.setFClassName("行政维度"); - - String currentDate = OrganizationDateUtil.getFormatLocalDate(new java.util.Date()); - jclMap.setFDateBegin(new Date(OrganizationDateUtil.stringToDate(currentDate).getTime())); - jclMap.setFDateEnd(new Date(OrganizationDateUtil.stringToDate("2099-12-31").getTime())); - - JclOrgMap jclOrgMapByObjID = MapperProxyFactory.getProxy(JclOrgMapper.class).getJclOrgMapByObjID(jclMap.getFDateBegin(), ModuleTypeEnum.jobfielddefined.getValue().toString(), jclMap.getFObjId().toString()); - - // 该岗位有下级岗位时,查询 - JclOrgMap jclOrgMap = MapperProxyFactory.getProxy(JclOrgMapper.class).getSumPlanAndJobByFParentId(jclMap.getFDateBegin(), jclMap.getId().toString()); - - StaffPO staffPO = new StaffPO(); - switch (jclMap.getFType()) { - // 部门 - case 2: - staffPO = MapperProxyFactory.getProxy(StaffMapper.class).getStaffsByParamId(2, null, jclMap.getFObjId().toString(), null); - break; - // 岗位 - case 3: - staffPO = MapperProxyFactory.getProxy(StaffMapper.class).getStaffsByParamId(3, null, null, jclMap.getFObjId().toString()); - break; - default: - break; - } - if (null != jclOrgMapByObjID) { - if (null != jclOrgMap) { - jclMap.setFPlan((null != staffPO ? staffPO.getStaffNum() : 0) + jclOrgMap.getFPlan()); - jclMap.setFOnJob(jclOrgMapByObjID.getFOnJob() + jclOrgMap.getFOnJob()); - } else { - jclMap.setFPlan(null != staffPO ? staffPO.getStaffNum() : 0); - jclMap.setFOnJob(jclOrgMapByObjID.getFOnJob()); - } - } else { - jclMap.setFPlan(null != staffPO ? staffPO.getStaffNum() : 0); - jclMap.setFOnJob(0); - } - jclMap.setFIsVitual(0); - - Calendar cal = Calendar.getInstance(); - cal.setTime(jclMap.getFDateBegin()); - Calendar calendar = DateUtil.addDay(cal, -1); - Date time = new Date(calendar.getTime().getTime()); - getCompTriggerMapper().deleteMap(jclMap.getFType(), jclMap.getFObjId(), jclMap.getFDateBegin()); - getCompTriggerMapper().updateMap(jclMap.getFType(), jclMap.getFObjId(), jclMap.getFDateBegin(), time); - - if (1 != newJob.getDeleteType() && 1 != newJob.getForbiddenTag()) { - MapperProxyFactory.getProxy(JclOrgMapper.class).insertMap(jclMap); - } - if (null != jclOrgMapByObjID) { - if (null != jclOrgMapByObjID.getFParentId()) { - updateParentPlanAndJob(jclMap.getFDateBegin(), jclOrgMapByObjID.getFParentId().toString()); - } - } - // 部门启用,刷新上级数据 - if (forbiddenTag) { - updateParentPlanAndJob(jclMap.getFDateBegin(), jclMap.getFParentId().toString()); - } - if (null != oldJob) { - if (null != oldJob.getId()) { - updateParentPlanAndJob(jclMap.getFDateBegin(), oldJob.getId().toString()); - } - } - - } - - /** - * 更新上级部门在编、在岗数 - */ - void updateParentPlanAndJob(Date currentDate, String parentId) { - JclOrgMap parentJclOrgMap = MapperProxyFactory.getProxy(JclOrgMapper.class).getJclOrgMapById(currentDate, parentId); - if (null != parentJclOrgMap) { - // 上级部门当前在编、在岗数 - JclOrgMap jclOrgMapSum = MapperProxyFactory.getProxy(JclOrgMapper.class).getSumPlanAndJobByFParentId(currentDate, parentJclOrgMap.getId().toString()); - StaffPO staffPO = new StaffPO(); - switch (parentJclOrgMap.getFType()) { - // 分部 - case 1: - staffPO = MapperProxyFactory.getProxy(StaffMapper.class).getStaffsByParamId(1, parentJclOrgMap.getFObjId().toString(), null, null); - break; - // 部门 - case 2: - staffPO = MapperProxyFactory.getProxy(StaffMapper.class).getStaffsByParamId(2, null, parentJclOrgMap.getFObjId().toString(), null); - break; - // 岗位 - case 3: - staffPO = MapperProxyFactory.getProxy(StaffMapper.class).getStaffsByParamId(3, null, parentJclOrgMap.getFObjId().toString(), null); - break; - default: - break; - } - if (null != jclOrgMapSum) { - parentJclOrgMap.setFPlan((null != staffPO ? staffPO.getStaffNum() : 0) + jclOrgMapSum.getFPlan()); - parentJclOrgMap.setFOnJob(jclOrgMapSum.getFOnJob()); - } else { - parentJclOrgMap.setFPlan(null != staffPO ? staffPO.getStaffNum() : 0); - parentJclOrgMap.setFOnJob(0); - } - parentJclOrgMap.setFDateBegin(currentDate); - parentJclOrgMap.setFDateEnd(new Date(OrganizationDateUtil.stringToDate("2099-12-31").getTime())); - - Calendar cal = Calendar.getInstance(); - cal.setTime(parentJclOrgMap.getFDateBegin()); - Calendar calendar = DateUtil.addDay(cal, -1); - Date time = new Date(calendar.getTime().getTime()); - getCompTriggerMapper().deleteMap(parentJclOrgMap.getFType(), parentJclOrgMap.getFObjId(), parentJclOrgMap.getFDateBegin()); - getCompTriggerMapper().updateMap(parentJclOrgMap.getFType(), parentJclOrgMap.getFObjId(), parentJclOrgMap.getFDateBegin(), time); - MapperProxyFactory.getProxy(JclOrgMapper.class).insertMap(parentJclOrgMap); - if (null != parentJclOrgMap.getFParentId() && -1 != parentJclOrgMap.getFParentId()) { - updateParentPlanAndJob(currentDate, parentJclOrgMap.getFParentId().toString()); - } - } - } -} \ No newline at end of file +//package com.engine.organization.thread; +// +//import com.engine.organization.entity.job.po.JobPO; +//import com.engine.organization.entity.logview.bo.FieldBaseEquator; +//import com.engine.organization.entity.map.JclOrgMap; +//import com.engine.organization.entity.staff.po.StaffPO; +//import com.engine.organization.enums.ModuleTypeEnum; +//import com.engine.organization.mapper.jclorgmap.JclOrgMapper; +//import com.engine.organization.mapper.job.JobMapper; +//import com.engine.organization.mapper.staff.StaffMapper; +//import com.engine.organization.mapper.trigger.CompTriggerMapper; +//import com.engine.organization.mapper.trigger.JobTriggerMapper; +//import com.engine.organization.util.OrganizationDateUtil; +//import com.engine.organization.util.db.MapperProxyFactory; +//import org.apache.commons.collections.CollectionUtils; +//import weaver.common.DateUtil; +// +//import java.sql.Date; +//import java.util.Calendar; +//import java.util.List; +// +///** +// * @author:dxfeng +// * @createTime: 2022/08/30 +// * @version: 1.0 +// */ +//public class JobTriggerRunnable implements Runnable { +// +// private final JobPO oldJob; +// private final JobPO newJob; +// private Boolean forbiddenTag = false; +// +// private CompTriggerMapper getCompTriggerMapper() { +// return MapperProxyFactory.getProxy(CompTriggerMapper.class); +// } +// +// private JobTriggerMapper getJobTriggerMapper() { +// return MapperProxyFactory.getProxy(JobTriggerMapper.class); +// } +// +// public JobTriggerRunnable(JobPO oldJob, JobPO newJob) { +// this.oldJob = oldJob; +// this.newJob = newJob; +// } +// +// public JobTriggerRunnable(Boolean forbiddenTag, JobPO oldJob, JobPO newJob) { +// this.oldJob = oldJob; +// this.newJob = newJob; +// this.forbiddenTag = forbiddenTag; +// } +// +// public JobTriggerRunnable(Long jobId) { +// this.oldJob = new JobPO(); +// this.newJob = MapperProxyFactory.getProxy(JobMapper.class).getJobById(jobId); +// } +// +// public JobTriggerRunnable(Long oldJobId, Long newJobId) { +// this.oldJob = MapperProxyFactory.getProxy(JobMapper.class).getJobById(oldJobId); +// this.newJob = MapperProxyFactory.getProxy(JobMapper.class).getJobById(newJobId); +// } +// +// public JobTriggerRunnable(JobPO newJob) { +// this.oldJob = new JobPO(); +// this.newJob = newJob; +// this.newJob.setDeleteType(1); +// } +// +// @Override +// public void run() { +// FieldBaseEquator fieldBaseEquator = new FieldBaseEquator(); +// List diffFields = fieldBaseEquator.getDiffFieldList(oldJob, newJob); +// if (CollectionUtils.isEmpty(diffFields)) { +// return; +// } +// // 判断 +// JclOrgMap jclMap = new JclOrgMap(); +// int st = 100000000; +// int sj = 200000000; +// jclMap.setFType(3); +// // 更新逻辑 +// jclMap.setFObjId(newJob.getId().intValue()); +// jclMap.setId(newJob.getId().intValue() + sj); +// jclMap.setFNumber(newJob.getJobNo()); +// jclMap.setFName(newJob.getJobName()); +// jclMap.setFParentId(null == newJob.getParentJob() ? newJob.getParentDept().intValue() + st : newJob.getParentJob().intValue() + sj); +// jclMap.setFObjParentId(null == newJob.getParentJob() ? newJob.getParentDept().intValue() : newJob.getParentJob().intValue()); +// Integer parentdept = newJob.getParentDept().intValue(); +// +// jclMap.setFClass(0); +// jclMap.setFClassName("行政维度"); +// +// String currentDate = OrganizationDateUtil.getFormatLocalDate(new java.util.Date()); +// jclMap.setFDateBegin(new Date(OrganizationDateUtil.stringToDate(currentDate).getTime())); +// jclMap.setFDateEnd(new Date(OrganizationDateUtil.stringToDate("2099-12-31").getTime())); +// +// JclOrgMap jclOrgMapByObjID = MapperProxyFactory.getProxy(JclOrgMapper.class).getJclOrgMapByObjID(jclMap.getFDateBegin(), ModuleTypeEnum.jobfielddefined.getValue().toString(), jclMap.getFObjId().toString()); +// +// // 该岗位有下级岗位时,查询 +// JclOrgMap jclOrgMap = MapperProxyFactory.getProxy(JclOrgMapper.class).getSumPlanAndJobByFParentId(jclMap.getFDateBegin(), jclMap.getId().toString()); +// +// StaffPO staffPO = new StaffPO(); +// switch (jclMap.getFType()) { +// // 部门 +// case 2: +// staffPO = MapperProxyFactory.getProxy(StaffMapper.class).getStaffsByParamId(2, null, jclMap.getFObjId().toString(), null); +// break; +// // 岗位 +// case 3: +// staffPO = MapperProxyFactory.getProxy(StaffMapper.class).getStaffsByParamId(3, null, null, jclMap.getFObjId().toString()); +// break; +// default: +// break; +// } +// if (null != jclOrgMapByObjID) { +// if (null != jclOrgMap) { +// jclMap.setFPlan((null != staffPO ? staffPO.getStaffNum() : 0) + jclOrgMap.getFPlan()); +// jclMap.setFOnJob(jclOrgMapByObjID.getFOnJob() + jclOrgMap.getFOnJob()); +// } else { +// jclMap.setFPlan(null != staffPO ? staffPO.getStaffNum() : 0); +// jclMap.setFOnJob(jclOrgMapByObjID.getFOnJob()); +// } +// } else { +// jclMap.setFPlan(null != staffPO ? staffPO.getStaffNum() : 0); +// jclMap.setFOnJob(0); +// } +// jclMap.setFIsVitual(0); +// +// Calendar cal = Calendar.getInstance(); +// cal.setTime(jclMap.getFDateBegin()); +// Calendar calendar = DateUtil.addDay(cal, -1); +// Date time = new Date(calendar.getTime().getTime()); +// getCompTriggerMapper().deleteMap(jclMap.getFType(), jclMap.getFObjId(), jclMap.getFDateBegin()); +// getCompTriggerMapper().updateMap(jclMap.getFType(), jclMap.getFObjId(), jclMap.getFDateBegin(), time); +// +// if (1 != newJob.getDeleteType() && 1 != newJob.getForbiddenTag()) { +// MapperProxyFactory.getProxy(JclOrgMapper.class).insertMap(jclMap); +// } +// if (null != jclOrgMapByObjID) { +// if (null != jclOrgMapByObjID.getFParentId()) { +// updateParentPlanAndJob(jclMap.getFDateBegin(), jclOrgMapByObjID.getFParentId().toString()); +// } +// } +// // 部门启用,刷新上级数据 +// if (forbiddenTag) { +// updateParentPlanAndJob(jclMap.getFDateBegin(), jclMap.getFParentId().toString()); +// } +// if (null != oldJob) { +// if (null != oldJob.getId()) { +// updateParentPlanAndJob(jclMap.getFDateBegin(), oldJob.getId().toString()); +// } +// } +// +// } +// +// /** +// * 更新上级部门在编、在岗数 +// */ +// void updateParentPlanAndJob(Date currentDate, String parentId) { +// JclOrgMap parentJclOrgMap = MapperProxyFactory.getProxy(JclOrgMapper.class).getJclOrgMapById(currentDate, parentId); +// if (null != parentJclOrgMap) { +// // 上级部门当前在编、在岗数 +// JclOrgMap jclOrgMapSum = MapperProxyFactory.getProxy(JclOrgMapper.class).getSumPlanAndJobByFParentId(currentDate, parentJclOrgMap.getId().toString()); +// StaffPO staffPO = new StaffPO(); +// switch (parentJclOrgMap.getFType()) { +// // 分部 +// case 1: +// staffPO = MapperProxyFactory.getProxy(StaffMapper.class).getStaffsByParamId(1, parentJclOrgMap.getFObjId().toString(), null, null); +// break; +// // 部门 +// case 2: +// staffPO = MapperProxyFactory.getProxy(StaffMapper.class).getStaffsByParamId(2, null, parentJclOrgMap.getFObjId().toString(), null); +// break; +// // 岗位 +// case 3: +// staffPO = MapperProxyFactory.getProxy(StaffMapper.class).getStaffsByParamId(3, null, parentJclOrgMap.getFObjId().toString(), null); +// break; +// default: +// break; +// } +// if (null != jclOrgMapSum) { +// parentJclOrgMap.setFPlan((null != staffPO ? staffPO.getStaffNum() : 0) + jclOrgMapSum.getFPlan()); +// parentJclOrgMap.setFOnJob(jclOrgMapSum.getFOnJob()); +// } else { +// parentJclOrgMap.setFPlan(null != staffPO ? staffPO.getStaffNum() : 0); +// parentJclOrgMap.setFOnJob(0); +// } +// parentJclOrgMap.setFDateBegin(currentDate); +// parentJclOrgMap.setFDateEnd(new Date(OrganizationDateUtil.stringToDate("2099-12-31").getTime())); +// +// Calendar cal = Calendar.getInstance(); +// cal.setTime(parentJclOrgMap.getFDateBegin()); +// Calendar calendar = DateUtil.addDay(cal, -1); +// Date time = new Date(calendar.getTime().getTime()); +// getCompTriggerMapper().deleteMap(parentJclOrgMap.getFType(), parentJclOrgMap.getFObjId(), parentJclOrgMap.getFDateBegin()); +// getCompTriggerMapper().updateMap(parentJclOrgMap.getFType(), parentJclOrgMap.getFObjId(), parentJclOrgMap.getFDateBegin(), time); +// MapperProxyFactory.getProxy(JclOrgMapper.class).insertMap(parentJclOrgMap); +// if (null != parentJclOrgMap.getFParentId() && -1 != parentJclOrgMap.getFParentId()) { +// updateParentPlanAndJob(currentDate, parentJclOrgMap.getFParentId().toString()); +// } +// } +// } +//} \ No newline at end of file