组织架构图相关BUG修复 #27

Merged
dxfeng merged 1 commits from feature/dxf into develop 3 years ago

@ -161,6 +161,65 @@
</trim> </trim>
</insert> </insert>
<insert id="insertIgnoreNull" parameterType="com.engine.organization.entity.hrmresource.po.ResourceItemPO" databaseId="oracle">
<selectKey keyProperty="fid" resultType="int" order="AFTER">
select JCL_ORG_ITEM_ID.currval from dual
</selectKey>
INSERT INTO jcl_org_item
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="fclassid != null">
fclassid,
</if>
<if test="fno != null">
fno,
</if>
<if test="fname != null">
fname,
</if>
<if test="fmemo != null">
fmemo,
</if>
<if test="fdelete != null">
fdelete,
</if>
<if test="creator != null">
creator,
</if>
<if test="createTime != null">
create_time,
</if>
<if test="updateTime != null">
update_time,
</if>
</trim>
<trim prefix="VALUES (" suffix=")" suffixOverrides=",">
<if test="fclassid != null">
#{fclassid},
</if>
<if test="fno != null">
#{fno},
</if>
<if test="fname != null">
#{fname},
</if>
<if test="fmemo != null">
#{fmemo},
</if>
<if test="fdelete != null">
#{fdelete},
</if>
<if test="creator != null">
#{creator},
</if>
<if test="createTime != null">
#{createTime},
</if>
<if test="updateTime != null">
#{updateTime},
</if>
</trim>
</insert>
<!--oracle未处理--> <!--oracle未处理-->
<!--<insert id="insertIgnoreNull" parameterType="com.engine.organization.entity.hrmresource.po.ResourceItemPO"--> <!--<insert id="insertIgnoreNull" parameterType="com.engine.organization.entity.hrmresource.po.ResourceItemPO"-->

@ -3,6 +3,7 @@ package com.engine.organization.mapper.trigger;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import weaver.hrm.passwordprotection.domain.HrmResource; import weaver.hrm.passwordprotection.domain.HrmResource;
import java.sql.Date;
import java.util.List; import java.util.List;
/** /**
@ -13,8 +14,8 @@ import java.util.List;
public interface HrmResourceTriggerMapper { public interface HrmResourceTriggerMapper {
HrmResource getHrmResource(@Param("id") Long id); HrmResource getHrmResource(@Param("id") Long id);
List<Long> getFidsByFleader(@Param("fLeader") String fLeader, @Param("currentDate") String currentDate); List<Long> getFidsByFleader(@Param("fLeader") String fLeader, @Param("currentDate") Date currentDate);
int updateLeaders(@Param("currentDate") String currentDate,@Param("fLeader") String fLeader, @Param("fLeaderImg") String fLeaderImg, @Param("fLeaderName") String fLeaderName, @Param("fLeaderJobId") Integer fLeaderJobId, @Param("fLeaderJob") String fLeaderJob, @Param("fLeaderLv") String fLeaderLv, @Param("fLeaderSt") String fLeaderSt); int updateLeaders(@Param("currentDate") Date currentDate,@Param("fLeader") String fLeader, @Param("fLeaderImg") String fLeaderImg, @Param("fLeaderName") String fLeaderName, @Param("fLeaderJobId") Integer fLeaderJobId, @Param("fLeaderJob") String fLeaderJob, @Param("fLeaderLv") String fLeaderLv, @Param("fLeaderSt") String fLeaderSt);
} }

@ -231,7 +231,7 @@ public class HrmResourceServiceImpl extends Service implements HrmResourceServic
RecordInfo recordInfo = getSystemDataMapper().getHrmObjectByID(HRM_RESOURCE, ecResourceId); RecordInfo recordInfo = getSystemDataMapper().getHrmObjectByID(HRM_RESOURCE, ecResourceId);
params.put("uuid", recordInfo.getUuid()); params.put("uuid", recordInfo.getUuid());
Long resourceId = getExtService(user).updateExtForm(user, EXTEND_TYPE, JCL_ORG_HRM, params, "", null); Long resourceId = getExtService(user).updateExtForm(user, EXTEND_TYPE, JCL_ORG_HRM, params, "", null);
new Thread(new HrmResourceTriggerRunnable(resourceId)).start(); new HrmResourceTriggerRunnable(resourceId).run();
return resourceId; return resourceId;
} }
@ -308,7 +308,7 @@ public class HrmResourceServiceImpl extends Service implements HrmResourceServic
//更新明细表 //更新明细表
getExtService(user).updateExtDT(user, EXTEND_TYPE, JCL_ORG_HRMEXT_DT1, params, id); getExtService(user).updateExtDT(user, EXTEND_TYPE, JCL_ORG_HRMEXT_DT1, params, id);
new Thread(new HrmResourceTriggerRunnable(id)).start(); new HrmResourceTriggerRunnable(id).run();
return updateCount; return updateCount;
} }

@ -324,9 +324,9 @@ public class ImportCommonServiceImpl extends Service implements ImportCommonServ
lsPromptLabel.add(34275); lsPromptLabel.add(34275);
lsPromptLabel.add(125452); lsPromptLabel.add(125452);
lsPromptLabel.add(125466); lsPromptLabel.add(125466);
lsPromptLabel.add(522355); //lsPromptLabel.add(522355);
lsPromptLabel.add(522356); //lsPromptLabel.add(522356);
lsPromptLabel.add(522357); //lsPromptLabel.add(522357);
//lsPromptLabel.add(530411); //lsPromptLabel.add(530411);
for (int i = 0; i < lsPromptLabel.size(); i++) { for (int i = 0; i < lsPromptLabel.size(); i++) {
@ -386,9 +386,9 @@ public class ImportCommonServiceImpl extends Service implements ImportCommonServ
lsPromptLabel.add(34275); lsPromptLabel.add(34275);
lsPromptLabel.add(125452); lsPromptLabel.add(125452);
lsPromptLabel.add(125466); lsPromptLabel.add(125466);
lsPromptLabel.add(522355); //lsPromptLabel.add(522355);
lsPromptLabel.add(522356); //lsPromptLabel.add(522356);
lsPromptLabel.add(522357); //lsPromptLabel.add(522357);
//lsPromptLabel.add(530411); //lsPromptLabel.add(530411);
for (int i = 0; i < lsPromptLabel.size(); i++) { for (int i = 0; i < lsPromptLabel.size(); i++) {
@ -521,7 +521,7 @@ public class ImportCommonServiceImpl extends Service implements ImportCommonServ
lsPromptLabel.add(81699); lsPromptLabel.add(81699);
lsPromptLabel.add(516263); lsPromptLabel.add(516263);
//lsPromptLabel.add(81701); //lsPromptLabel.add(81701);
lsPromptLabel.add(388880); //lsPromptLabel.add(388880);
lsPromptLabel.add(81702); lsPromptLabel.add(81702);
lsPromptLabel.add(81703); lsPromptLabel.add(81703);
lsPromptLabel.add(125869); lsPromptLabel.add(125869);
@ -1132,16 +1132,14 @@ public class ImportCommonServiceImpl extends Service implements ImportCommonServ
ExtendInfoParams infoParams = ExtendInfoParams.builder().tableName("JCL_ORG_JOB").params(map).build(); ExtendInfoParams infoParams = ExtendInfoParams.builder().tableName("JCL_ORG_JOB").params(map).build();
map.put("jobactivityid", JobServiceImpl.JOB_ACTIVITY_ID); map.put("jobactivityid", JobServiceImpl.JOB_ACTIVITY_ID);
map.put("id", infoParams.getId());
Map<String, Object> syncMap = new OrganizationSyncEc(user, LogModuleNameEnum.JOB, OperateTypeEnum.ADD, map, false).sync(); Map<String, Object> syncMap = new OrganizationSyncEc(user, LogModuleNameEnum.JOB, OperateTypeEnum.ADD, map, false).sync();
if (isThrowError(syncMap)) { if (isThrowError(syncMap)) {
boolean assertNameRepeat = JobServiceImpl.assertNameRepeat(null, Util.null2String(map.get("ec_department")), Util.null2String(map.get("parent_job")), Util.null2String(map.get("job_name"))); boolean assertNameRepeat = JobServiceImpl.assertNameRepeat(null, Util.null2String(map.get("ec_department")), Util.null2String(map.get("parent_job")), Util.null2String(map.get("job_name")));
if (assertNameRepeat) { if (assertNameRepeat) {
map.remove("id");
map.remove("jobactivityid"); map.remove("jobactivityid");
MapperProxyFactory.getProxy(ExtMapper.class).insertTable(infoParams); MapperProxyFactory.getProxy(ExtMapper.class).insertTable(infoParams);
// 更新组织架构图 // 更新组织架构图
new Thread(new JobTriggerRunnable(jobId)).start(); new Thread(new JobTriggerRunnable(infoParams.getId())).start();
historyDetailPO.setOperateDetail("添加成功"); historyDetailPO.setOperateDetail("添加成功");
historyDetailPO.setStatus("1"); historyDetailPO.setStatus("1");
} else { } else {
@ -1409,7 +1407,7 @@ public class ImportCommonServiceImpl extends Service implements ImportCommonServ
map.remove("id"); map.remove("id");
MapperProxyFactory.getProxy(ExtMapper.class).insertTable(infoParams); MapperProxyFactory.getProxy(ExtMapper.class).insertTable(infoParams);
// 更新组织架构图 // 更新组织架构图
new Thread(new HrmResourceTriggerRunnable(infoParams.getId())).start(); new HrmResourceTriggerRunnable(infoParams.getId()).run();
historyDetailPO.setOperateDetail("添加成功"); historyDetailPO.setOperateDetail("添加成功");
historyDetailPO.setStatus("1"); historyDetailPO.setStatus("1");
@ -1433,7 +1431,7 @@ public class ImportCommonServiceImpl extends Service implements ImportCommonServ
map.remove("id"); map.remove("id");
MapperProxyFactory.getProxy(ExtMapper.class).updateTable(ExtendInfoParams.builder().id(resourceId).tableName("JCL_ORG_HRMRESOURCE").params(map).build()); MapperProxyFactory.getProxy(ExtMapper.class).updateTable(ExtendInfoParams.builder().id(resourceId).tableName("JCL_ORG_HRMRESOURCE").params(map).build());
// 更新组织架构图 // 更新组织架构图
new Thread(new HrmResourceTriggerRunnable(resourceId)).start(); new HrmResourceTriggerRunnable(resourceId).run();
historyDetailPO.setOperateDetail("更新成功"); historyDetailPO.setOperateDetail("更新成功");
historyDetailPO.setStatus("1"); historyDetailPO.setStatus("1");
@ -1527,10 +1525,10 @@ public class ImportCommonServiceImpl extends Service implements ImportCommonServ
Map<String, String> optionMap = options.stream().collect(Collectors.toMap(FieldSelectOptionBean::getOption, FieldSelectOptionBean::getId, (k1, k2) -> k1)); Map<String, String> optionMap = options.stream().collect(Collectors.toMap(FieldSelectOptionBean::getOption, FieldSelectOptionBean::getId, (k1, k2) -> k1));
object = optionMap.get(cellValue); object = optionMap.get(cellValue);
break; break;
case 4:// CHECKBOX
case 6: case 6:
// FILEUPLOAD // FILEUPLOAD
break; break;
case 4:// CHECKBOX
case 7:// TEXT case 7:// TEXT
case 2:// TEXTAREA case 2:// TEXTAREA
default: default:
@ -1602,7 +1600,7 @@ public class ImportCommonServiceImpl extends Service implements ImportCommonServ
iterator.remove(); iterator.remove();
} }
if ("所属部门".equals(column) || "上级部门".equals(column) || "部门".equals(column)) { if ("所属部门".equals(column) || "上级部门".equals(column)) {
departmentColumn = column; departmentColumn = column;
iterator.remove(); iterator.remove();
} }

@ -2,23 +2,22 @@ package com.engine.organization.thread;
import com.engine.organization.entity.company.po.CompPO; import com.engine.organization.entity.company.po.CompPO;
import com.engine.organization.entity.hrmresource.po.HrmResourcePO; import com.engine.organization.entity.hrmresource.po.HrmResourcePO;
import com.engine.organization.entity.logview.bo.FieldBaseEquator; import com.engine.organization.entity.job.po.JobPO;
import com.engine.organization.entity.map.JclOrgMap; import com.engine.organization.entity.map.JclOrgMap;
import com.engine.organization.entity.personnelcard.User;
import com.engine.organization.entity.staff.po.StaffPO; import com.engine.organization.entity.staff.po.StaffPO;
import com.engine.organization.enums.ModuleTypeEnum; import com.engine.organization.enums.ModuleTypeEnum;
import com.engine.organization.mapper.comp.CompMapper; import com.engine.organization.mapper.comp.CompMapper;
import com.engine.organization.mapper.jclorgmap.JclOrgMapper; 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.staff.StaffMapper;
import com.engine.organization.mapper.trigger.CompTriggerMapper; import com.engine.organization.mapper.trigger.CompTriggerMapper;
import com.engine.organization.util.OrganizationDateUtil; import com.engine.organization.util.OrganizationDateUtil;
import com.engine.organization.util.db.MapperProxyFactory; import com.engine.organization.util.db.MapperProxyFactory;
import org.apache.commons.collections.CollectionUtils;
import weaver.common.DateUtil; import weaver.common.DateUtil;
import weaver.hrm.passwordprotection.domain.HrmResource;
import java.sql.Date; import java.sql.Date;
import java.util.Calendar; import java.util.Calendar;
import java.util.List;
/** /**
* @author:dxfeng * @author:dxfeng
@ -52,13 +51,7 @@ public class CompanyTriggerRunnable implements Runnable {
@Override @Override
public void run() { public void run() {
FieldBaseEquator fieldBaseEquator = new FieldBaseEquator();
List<String> diffFields = fieldBaseEquator.getDiffFieldList(oldCompany, newCompany);
if (CollectionUtils.isEmpty(diffFields)) {
return;
}
// 判断 // 判断
if (diffFields.contains("compName") || diffFields.contains("compPrincipal") || diffFields.contains("parentCompany") || diffFields.contains("forbiddenTag") || diffFields.contains("deleteType")) {
JclOrgMap jclMap = new JclOrgMap(); JclOrgMap jclMap = new JclOrgMap();
jclMap.setFType(1); jclMap.setFType(1);
@ -68,7 +61,6 @@ public class CompanyTriggerRunnable implements Runnable {
jclMap.setUuid(newCompany.getUuid()); jclMap.setUuid(newCompany.getUuid());
jclMap.setFNumber(newCompany.getCompNo()); jclMap.setFNumber(newCompany.getCompNo());
jclMap.setFName(newCompany.getCompName()); jclMap.setFName(newCompany.getCompName());
jclMap.setFLeader(newCompany.getCompPrincipal());
jclMap.setFParentId(null == newCompany.getParentCompany() ? 0 : newCompany.getParentCompany().intValue()); jclMap.setFParentId(null == newCompany.getParentCompany() ? 0 : newCompany.getParentCompany().intValue());
jclMap.setFObjParentId(null == newCompany.getParentCompany() ? 0 : newCompany.getParentCompany().intValue()); jclMap.setFObjParentId(null == newCompany.getParentCompany() ? 0 : newCompany.getParentCompany().intValue());
jclMap.setFEcId(getCompTriggerMapper().getEcCompanyIdByUuid(jclMap.getUuid())); jclMap.setFEcId(getCompTriggerMapper().getEcCompanyIdByUuid(jclMap.getUuid()));
@ -76,27 +68,31 @@ public class CompanyTriggerRunnable implements Runnable {
jclMap.setFClass(0); jclMap.setFClass(0);
jclMap.setFClassName("行政维度"); jclMap.setFClassName("行政维度");
HrmResource hrmResourceById = getCompTriggerMapper().getHrmResourceById(jclMap.getFLeader());
if (null != hrmResourceById) { Integer ecResourceId = newCompany.getCompPrincipal();
jclMap.setFLeaderImg(hrmResourceById.getMessagerurl()); HrmResourcePO hrmResourcePO = getCompTriggerMapper().getResourceByEcId(ecResourceId);
jclMap.setFLeaderName(hrmResourceById.getLastname()); if (null != hrmResourcePO) {
jclMap.setFLeaderJobId(hrmResourceById.getJobtitle()); jclMap.setFLeader(hrmResourcePO.getId().intValue());
jclMap.setFLeaderName(hrmResourcePO.getLastName());
jclMap.setFLeaderJobId(hrmResourcePO.getJobTitle().intValue());
jclMap.setFLeaderSt(hrmResourcePO.getJobGrade());
jclMap.setFLeaderLv(hrmResourcePO.getJobLevel());
String image = User.builder().image(hrmResourcePO.getResourceImageId()).build().getImage();
jclMap.setFLeaderImg(image);
if (null != hrmResourcePO.getJobTitle()) {
JobPO jobById = MapperProxyFactory.getProxy(JobMapper.class).getJobById(hrmResourcePO.getJobTitle());
if (null != jobById) {
jclMap.setFLeaderJob(jobById.getJobName());
}
}
} }
jclMap.setFLeaderJob(getCompTriggerMapper().getJobTitleMarkById(jclMap.getFLeaderJobId()));
HrmResourcePO resourceByEcId = getCompTriggerMapper().getResourceByEcId(jclMap.getFLeader());
if (null != resourceByEcId) {
jclMap.setFLeaderSt(resourceByEcId.getJobGrade());
jclMap.setFLeaderLv(resourceByEcId.getJobLevel());
}
String currentDate = OrganizationDateUtil.getFormatLocalDate(new java.util.Date()); String currentDate = OrganizationDateUtil.getFormatLocalDate(new java.util.Date());
jclMap.setFDateBegin(new Date(OrganizationDateUtil.stringToDate(currentDate).getTime())); jclMap.setFDateBegin(new Date(OrganizationDateUtil.stringToDate(currentDate).getTime()));
jclMap.setFDateEnd(new Date(OrganizationDateUtil.stringToDate("2099-12-31").getTime())); jclMap.setFDateEnd(new Date(OrganizationDateUtil.stringToDate("2099-12-31").getTime()));
StaffPO staffPO = MapperProxyFactory.getProxy(StaffMapper.class).getStaffsByParamId(jclMap.getFType(),jclMap.getFObjId().toString(),null, null); StaffPO staffPO = MapperProxyFactory.getProxy(StaffMapper.class).getStaffsByParamId(jclMap.getFType(), jclMap.getFObjId().toString(), null, null);
JclOrgMap jclOrgMapByObjID = MapperProxyFactory.getProxy(JclOrgMapper.class).getJclOrgMapByObjID(jclMap.getFDateBegin(), ModuleTypeEnum.subcompanyfielddefined.getValue().toString(), jclMap.getFObjId().toString()); JclOrgMap jclOrgMapByObjID = MapperProxyFactory.getProxy(JclOrgMapper.class).getJclOrgMapByObjID(jclMap.getFDateBegin(), ModuleTypeEnum.subcompanyfielddefined.getValue().toString(), jclMap.getFObjId().toString());
if (null != jclOrgMapByObjID) { if (null != jclOrgMapByObjID) {
jclMap.setFPlan(jclOrgMapByObjID.getFPlan()); jclMap.setFPlan(jclOrgMapByObjID.getFPlan());
@ -123,12 +119,11 @@ public class CompanyTriggerRunnable implements Runnable {
} }
} }
if (null != oldCompany) { if (null != oldCompany) {
if(null != oldCompany.getId()){ if (null != oldCompany.getId()) {
updateParentPlanAndJob(jclMap.getFDateBegin(), oldCompany.getId().toString()); updateParentPlanAndJob(jclMap.getFDateBegin(), oldCompany.getId().toString());
} }
} }
} }
}
/** /**
* *
@ -138,9 +133,9 @@ public class CompanyTriggerRunnable implements Runnable {
if (null != parentJclOrgMap) { if (null != parentJclOrgMap) {
// 上级部门当前在编、在岗数 // 上级部门当前在编、在岗数
JclOrgMap jclOrgMapSum = MapperProxyFactory.getProxy(JclOrgMapper.class).getSumPlanAndJobByFParentId(currentDate, parentJclOrgMap.getId().toString()); JclOrgMap jclOrgMapSum = MapperProxyFactory.getProxy(JclOrgMapper.class).getSumPlanAndJobByFParentId(currentDate, parentJclOrgMap.getId().toString());
StaffPO staffPO = MapperProxyFactory.getProxy(StaffMapper.class).getStaffsByParamId(parentJclOrgMap.getFType(),parentId,null, null); StaffPO staffPO = MapperProxyFactory.getProxy(StaffMapper.class).getStaffsByParamId(parentJclOrgMap.getFType(), parentId, null, null);
if (null != jclOrgMapSum) { if (null != jclOrgMapSum) {
parentJclOrgMap.setFPlan((null != staffPO ? staffPO.getStaffNum() : 0 ) + jclOrgMapSum.getFPlan()); parentJclOrgMap.setFPlan((null != staffPO ? staffPO.getStaffNum() : 0) + jclOrgMapSum.getFPlan());
parentJclOrgMap.setFOnJob(jclOrgMapSum.getFOnJob()); parentJclOrgMap.setFOnJob(jclOrgMapSum.getFOnJob());
} else { } else {
parentJclOrgMap.setFPlan(null != staffPO ? staffPO.getStaffNum() : 0); parentJclOrgMap.setFPlan(null != staffPO ? staffPO.getStaffNum() : 0);

@ -2,12 +2,15 @@ package com.engine.organization.thread;
import com.engine.organization.entity.department.po.DepartmentPO; import com.engine.organization.entity.department.po.DepartmentPO;
import com.engine.organization.entity.hrmresource.po.HrmResourcePO; import com.engine.organization.entity.hrmresource.po.HrmResourcePO;
import com.engine.organization.entity.job.po.JobPO;
import com.engine.organization.entity.logview.bo.FieldBaseEquator; import com.engine.organization.entity.logview.bo.FieldBaseEquator;
import com.engine.organization.entity.map.JclOrgMap; import com.engine.organization.entity.map.JclOrgMap;
import com.engine.organization.entity.personnelcard.User;
import com.engine.organization.entity.staff.po.StaffPO; import com.engine.organization.entity.staff.po.StaffPO;
import com.engine.organization.enums.ModuleTypeEnum; import com.engine.organization.enums.ModuleTypeEnum;
import com.engine.organization.mapper.department.DepartmentMapper; import com.engine.organization.mapper.department.DepartmentMapper;
import com.engine.organization.mapper.jclorgmap.JclOrgMapper; 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.staff.StaffMapper;
import com.engine.organization.mapper.trigger.CompTriggerMapper; import com.engine.organization.mapper.trigger.CompTriggerMapper;
import com.engine.organization.mapper.trigger.DepartmentTriggerMapper; import com.engine.organization.mapper.trigger.DepartmentTriggerMapper;
@ -16,7 +19,6 @@ import com.engine.organization.util.db.MapperProxyFactory;
import org.apache.commons.collections.CollectionUtils; import org.apache.commons.collections.CollectionUtils;
import weaver.common.DateUtil; import weaver.common.DateUtil;
import weaver.general.Util; import weaver.general.Util;
import weaver.hrm.passwordprotection.domain.HrmResource;
import java.sql.Date; import java.sql.Date;
import java.util.Calendar; import java.util.Calendar;
@ -96,7 +98,6 @@ public class DepartmentTriggerRunnable implements Runnable {
jclMap.setUuid(newDepartment.getUuid()); jclMap.setUuid(newDepartment.getUuid());
jclMap.setFNumber(newDepartment.getDeptNo()); jclMap.setFNumber(newDepartment.getDeptNo());
jclMap.setFName(newDepartment.getDeptName()); jclMap.setFName(newDepartment.getDeptName());
jclMap.setFLeader(null == newDepartment.getDeptPrincipal() ? null : newDepartment.getDeptPrincipal().intValue());
jclMap.setFParentId(null == newDepartment.getParentDept() ? newDepartment.getParentComp().intValue() : newDepartment.getParentDept().intValue() + st); jclMap.setFParentId(null == newDepartment.getParentDept() ? newDepartment.getParentComp().intValue() : newDepartment.getParentDept().intValue() + st);
jclMap.setFObjParentId(null == newDepartment.getParentDept() ? newDepartment.getParentComp().intValue() : newDepartment.getParentDept().intValue()); jclMap.setFObjParentId(null == newDepartment.getParentDept() ? newDepartment.getParentComp().intValue() : newDepartment.getParentDept().intValue());
@ -104,22 +105,24 @@ public class DepartmentTriggerRunnable implements Runnable {
jclMap.setFClass(0); jclMap.setFClass(0);
jclMap.setFClassName("行政维度"); jclMap.setFClassName("行政维度");
HrmResource hrmResourceById = getCompTriggerMapper().getHrmResourceById(jclMap.getFLeader()); Integer ecResourceId = null == newDepartment.getDeptPrincipal() ? null : newDepartment.getDeptPrincipal().intValue();
HrmResourcePO hrmResourcePO = getCompTriggerMapper().getResourceByEcId(ecResourceId);
if (null != hrmResourceById) { if (null != hrmResourcePO) {
jclMap.setFLeaderImg(hrmResourceById.getMessagerurl()); jclMap.setFLeader(hrmResourcePO.getId().intValue());
jclMap.setFLeaderName(hrmResourceById.getLastname()); jclMap.setFLeaderName(hrmResourcePO.getLastName());
jclMap.setFLeaderJobId(hrmResourceById.getJobtitle()); jclMap.setFLeaderJobId(hrmResourcePO.getJobTitle().intValue());
jclMap.setFLeaderSt(hrmResourcePO.getJobGrade());
jclMap.setFLeaderLv(hrmResourcePO.getJobLevel());
String image = User.builder().image(hrmResourcePO.getResourceImageId()).build().getImage();
jclMap.setFLeaderImg(image);
if (null != hrmResourcePO.getJobTitle()) {
JobPO jobById = MapperProxyFactory.getProxy(JobMapper.class).getJobById(hrmResourcePO.getJobTitle());
if (null != jobById) {
jclMap.setFLeaderJob(jobById.getJobName());
}
} }
jclMap.setFLeaderJob(getCompTriggerMapper().getJobTitleMarkById(jclMap.getFLeaderJobId()));
HrmResourcePO resourceByEcId = getCompTriggerMapper().getResourceByEcId(jclMap.getFLeader());
if (null != resourceByEcId) {
jclMap.setFLeaderSt(resourceByEcId.getJobGrade());
jclMap.setFLeaderLv(resourceByEcId.getJobLevel());
} }
String currentDate = OrganizationDateUtil.getFormatLocalDate(new java.util.Date()); String currentDate = OrganizationDateUtil.getFormatLocalDate(new java.util.Date());
jclMap.setFDateBegin(new Date(OrganizationDateUtil.stringToDate(currentDate).getTime())); jclMap.setFDateBegin(new Date(OrganizationDateUtil.stringToDate(currentDate).getTime()));
jclMap.setFDateEnd(new Date(OrganizationDateUtil.stringToDate("2099-12-31").getTime())); jclMap.setFDateEnd(new Date(OrganizationDateUtil.stringToDate("2099-12-31").getTime()));
@ -127,7 +130,6 @@ public class DepartmentTriggerRunnable implements Runnable {
// 获取当前生效的本部门map记录 // 获取当前生效的本部门map记录
JclOrgMap jclOrgMapByObjID = MapperProxyFactory.getProxy(JclOrgMapper.class).getJclOrgMapByObjID(jclMap.getFDateBegin(), ModuleTypeEnum.departmentfielddefined.getValue().toString(), Util.null2String(jclMap.getFObjId())); JclOrgMap jclOrgMapByObjID = MapperProxyFactory.getProxy(JclOrgMapper.class).getJclOrgMapByObjID(jclMap.getFDateBegin(), ModuleTypeEnum.departmentfielddefined.getValue().toString(), Util.null2String(jclMap.getFObjId()));
StaffPO staffPO = new StaffPO(); StaffPO staffPO = new StaffPO();
// StaffPO staffPO = MapperProxyFactory.getProxy(StaffMapper.class).getStaffsByParamId(null,jclMap.getFObjId().toString(), null);
switch (jclMap.getFType()) { switch (jclMap.getFType()) {
// 分部 // 分部
case 1: case 1:

@ -68,7 +68,6 @@ public class HrmResourceTriggerRunnable implements Runnable {
// 展示为花名册上传的照片 // 展示为花名册上传的照片
String image = User.builder().image(hrmResource.getResourceImageId()).build().getImage(); String image = User.builder().image(hrmResource.getResourceImageId()).build().getImage();
jclMap.setFLeaderImg(image); jclMap.setFLeaderImg(image);
// TODO 是否刷新架构图本人所有的图像
jclMap.setFLeaderName(hrmResource.getLastName()); jclMap.setFLeaderName(hrmResource.getLastName());
jclMap.setFLeaderJobId(hrmResource.getJobTitle().intValue()); jclMap.setFLeaderJobId(hrmResource.getJobTitle().intValue());
if (null != hrmResource.getJobTitle()) { if (null != hrmResource.getJobTitle()) {
@ -100,16 +99,8 @@ public class HrmResourceTriggerRunnable implements Runnable {
if (0 == delete) { if (0 == delete) {
MapperProxyFactory.getProxy(JclOrgMapper.class).insertMap(jclMap); MapperProxyFactory.getProxy(JclOrgMapper.class).insertMap(jclMap);
// 更新当前架构图负责人的卡片信息 // 更新当前架构图负责人的卡片信息
getHrmResourceTriggerMapper().updateLeaders(currentDate, hrmResource.getId().toString(), jclMap.getFLeaderImg(), jclMap.getFLeaderName(), jclMap.getFLeaderJobId(), jclMap.getFLeaderJob(), jclMap.getFLeaderLv(), jclMap.getFLeaderSt()); getHrmResourceTriggerMapper().updateLeaders(jclMap.getFDateBegin(), hrmResource.getId().toString(), jclMap.getFLeaderImg(), jclMap.getFLeaderName(), jclMap.getFLeaderJobId(), jclMap.getFLeaderJob(), jclMap.getFLeaderLv(), jclMap.getFLeaderSt());
// 更新组织架构图在岗数 // 更新组织架构图在岗数
//if (null != jclOrgMapByObjID && !jclMap.getFObjParentId().equals(jclOrgMapByObjID.getFObjParentId())) {
// new StaffTriggerRunnable(jclOrgMapByObjID.getFObjParentId()).run();
// new StaffTriggerRunnable(jclMap.getFObjParentId()).run();
//} else {
// new StaffTriggerRunnable(jclMap.getFObjParentId()).run();
//}
if (null != jclOrgMapByObjID) { if (null != jclOrgMapByObjID) {
new StaffTriggerRunnable(jclOrgMapByObjID.getFObjParentId()).run(); new StaffTriggerRunnable(jclOrgMapByObjID.getFObjParentId()).run();
} }

@ -138,7 +138,7 @@ public class StaffInfoImportUtil {
// 分部 // 分部
if ("comp_id".equals(infoPO.getFieldName())) { if ("comp_id".equals(infoPO.getFieldName())) {
String[] split = cellValue.split(">"); String[] split = cellValue.split(">");
if (split.length > 0) { if (split.length > 0 && StringUtils.isNotBlank(cellValue)) {
if (split.length > 8) { if (split.length > 8) {
historyDetailPO.setOperateDetail("分部层级不能大于10"); historyDetailPO.setOperateDetail("分部层级不能大于10");
historyDetailPO.setStatus("0"); historyDetailPO.setStatus("0");
@ -161,7 +161,7 @@ public class StaffInfoImportUtil {
// 部门 // 部门
if ("dept_id".equals(infoPO.getFieldName())) { if ("dept_id".equals(infoPO.getFieldName())) {
String[] split = cellValue.split(">"); String[] split = cellValue.split(">");
if (split.length > 0) { if (split.length > 0 && StringUtils.isNotBlank(cellValue)) {
if (split.length > 8) { if (split.length > 8) {
historyDetailPO.setOperateDetail("部门层级不能大于10"); historyDetailPO.setOperateDetail("部门层级不能大于10");
historyDetailPO.setStatus("0"); historyDetailPO.setStatus("0");
@ -194,7 +194,7 @@ public class StaffInfoImportUtil {
continue nextRow; continue nextRow;
} }
String[] split = cellValue.split(">"); String[] split = cellValue.split(">");
if (split.length > 0) { if (split.length > 0 && StringUtils.isNotBlank(cellValue)) {
if (split.length > 8) { if (split.length > 8) {
historyDetailPO.setOperateDetail("岗位层级不能大于10"); historyDetailPO.setOperateDetail("岗位层级不能大于10");
historyDetailPO.setStatus("0"); historyDetailPO.setStatus("0");

Loading…
Cancel
Save