|
|
|
@ -65,50 +65,52 @@ public class CusFieldDataTrigger {
|
|
|
|
|
directionData.setField100002(sourceField100002);
|
|
|
|
|
Long gwId = Long.parseLong(sourceField100002);
|
|
|
|
|
JobPO jobById = MapperProxyFactory.getProxy(JobMapper.class).getJobById(gwId);
|
|
|
|
|
RecordInfo hrmJobTitleByName = MapperProxyFactory.getProxy(SystemDataMapper.class).getHrmJobTitleByName(jobById.getJobName());
|
|
|
|
|
Long ecGwId = StringUtils.isNotBlank(hrmJobTitleByName.getId()) ? Long.parseLong(hrmJobTitleByName.getId()) : null;
|
|
|
|
|
Long ecBmId = jobById.getEcDepartment();
|
|
|
|
|
Long ecGsId = jobById.getEcCompany();
|
|
|
|
|
Map<String, Object> hrmResourceMap = new HashMap<>();
|
|
|
|
|
// 岗位
|
|
|
|
|
hrmResourceMap.put("jobtitle", ecGwId);
|
|
|
|
|
// 部门
|
|
|
|
|
hrmResourceMap.put("departmentid", ecBmId);
|
|
|
|
|
// 公司
|
|
|
|
|
hrmResourceMap.put("subcompanyid1", ecGsId);
|
|
|
|
|
MapperProxyFactory.getProxy(ExtMapper.class).updateTable(ExtendInfoParams.builder().id(id).tableName("hrmresource").params(hrmResourceMap).build());
|
|
|
|
|
updateFlag = true;
|
|
|
|
|
if (null != jobById) {
|
|
|
|
|
RecordInfo hrmJobTitleByName = MapperProxyFactory.getProxy(SystemDataMapper.class).getHrmJobTitleByName(jobById.getJobName());
|
|
|
|
|
Long ecGwId = StringUtils.isNotBlank(hrmJobTitleByName.getId()) ? Long.parseLong(hrmJobTitleByName.getId()) : null;
|
|
|
|
|
Long ecBmId = jobById.getEcDepartment();
|
|
|
|
|
Long ecGsId = jobById.getEcCompany();
|
|
|
|
|
Map<String, Object> hrmResourceMap = new HashMap<>();
|
|
|
|
|
// 岗位
|
|
|
|
|
hrmResourceMap.put("jobtitle", ecGwId);
|
|
|
|
|
// 部门
|
|
|
|
|
hrmResourceMap.put("departmentid", ecBmId);
|
|
|
|
|
// 公司
|
|
|
|
|
hrmResourceMap.put("subcompanyid1", ecGsId);
|
|
|
|
|
MapperProxyFactory.getProxy(ExtMapper.class).updateTable(ExtendInfoParams.builder().id(id).tableName("hrmresource").params(hrmResourceMap).build());
|
|
|
|
|
updateFlag = true;
|
|
|
|
|
|
|
|
|
|
// 职等职级为空,从岗位取值、更新
|
|
|
|
|
if (StringUtils.isBlank(sourceField100001)) {
|
|
|
|
|
if (StringUtils.isNotBlank(jobById.getLevelId())) {
|
|
|
|
|
// 通过岗位关联,如有多个职等,选取第一个
|
|
|
|
|
String[] levelArray = jobById.getLevelId().split(",");
|
|
|
|
|
LevelPO levelByID = MapperProxyFactory.getProxy(LevelMapper.class).getLevelByID(Long.parseLong(levelArray[0]));
|
|
|
|
|
directionData.setField100008(levelByID.getLevelName());
|
|
|
|
|
} else {
|
|
|
|
|
directionData.setField100008(null);
|
|
|
|
|
}
|
|
|
|
|
// 职等职级方案
|
|
|
|
|
if (StringUtils.isNotBlank(Util.null2String(jobById.getSchemeId()))) {
|
|
|
|
|
SchemePO schemeByID = MapperProxyFactory.getProxy(SchemeMapper.class).getSchemeByID(jobById.getSchemeId());
|
|
|
|
|
directionData.setField100006(schemeByID.getSchemeName());
|
|
|
|
|
} else {
|
|
|
|
|
directionData.setField100006(null);
|
|
|
|
|
}
|
|
|
|
|
// 职级
|
|
|
|
|
if (StringUtils.isNotBlank(jobById.getGradeId())) {
|
|
|
|
|
GradePO gradeByLevelId = MapperProxyFactory.getProxy(GradeMapper.class).getGradeByID(Long.parseLong(jobById.getGradeId()));
|
|
|
|
|
directionData.setField100007(gradeByLevelId.getGradeName());
|
|
|
|
|
} else {
|
|
|
|
|
directionData.setField100007(null);
|
|
|
|
|
}
|
|
|
|
|
// 岗位序列
|
|
|
|
|
if (StringUtils.isNotBlank(Util.null2String(jobById.getSequenceId()))) {
|
|
|
|
|
SequencePO sequenceBySchemeId = MapperProxyFactory.getProxy(SequenceMapper.class).getSequenceByID(jobById.getSequenceId());
|
|
|
|
|
directionData.setField100005(sequenceBySchemeId.getSequenceName());
|
|
|
|
|
} else {
|
|
|
|
|
directionData.setField100005(null);
|
|
|
|
|
// 职等职级为空,从岗位取值、更新
|
|
|
|
|
if (StringUtils.isBlank(sourceField100001)) {
|
|
|
|
|
if (StringUtils.isNotBlank(jobById.getLevelId())) {
|
|
|
|
|
// 通过岗位关联,如有多个职等,选取第一个
|
|
|
|
|
String[] levelArray = jobById.getLevelId().split(",");
|
|
|
|
|
LevelPO levelByID = MapperProxyFactory.getProxy(LevelMapper.class).getLevelByID(Long.parseLong(levelArray[0]));
|
|
|
|
|
directionData.setField100008(levelByID.getLevelName());
|
|
|
|
|
} else {
|
|
|
|
|
directionData.setField100008(null);
|
|
|
|
|
}
|
|
|
|
|
// 职等职级方案
|
|
|
|
|
if (StringUtils.isNotBlank(Util.null2String(jobById.getSchemeId()))) {
|
|
|
|
|
SchemePO schemeByID = MapperProxyFactory.getProxy(SchemeMapper.class).getSchemeByID(jobById.getSchemeId());
|
|
|
|
|
directionData.setField100006(schemeByID.getSchemeName());
|
|
|
|
|
} else {
|
|
|
|
|
directionData.setField100006(null);
|
|
|
|
|
}
|
|
|
|
|
// 职级
|
|
|
|
|
if (StringUtils.isNotBlank(jobById.getGradeId())) {
|
|
|
|
|
GradePO gradeByLevelId = MapperProxyFactory.getProxy(GradeMapper.class).getGradeByID(Long.parseLong(jobById.getGradeId()));
|
|
|
|
|
directionData.setField100007(gradeByLevelId.getGradeName());
|
|
|
|
|
} else {
|
|
|
|
|
directionData.setField100007(null);
|
|
|
|
|
}
|
|
|
|
|
// 岗位序列
|
|
|
|
|
if (StringUtils.isNotBlank(Util.null2String(jobById.getSequenceId()))) {
|
|
|
|
|
SequencePO sequenceBySchemeId = MapperProxyFactory.getProxy(SequenceMapper.class).getSequenceByID(jobById.getSequenceId());
|
|
|
|
|
directionData.setField100005(sequenceBySchemeId.getSequenceName());
|
|
|
|
|
} else {
|
|
|
|
|
directionData.setField100005(null);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|