BUG修复

pull/66/head
dxfeng 2 years ago
parent bb071c3ad9
commit 05364f9265

@ -206,12 +206,19 @@ public class ExtendInfoBO {
fieldItem.setViewAttr(2); fieldItem.setViewAttr(2);
} }
} }
switch (fieldItem.getType()) {
// 浏览按钮特殊处理 case BROWSER:
if (FieldType.BROWSER.equals(fieldItem.getType())) { String browserId = SelectOptionParam.getCustomBrowserId(extendInfoPO.getCustomValue());
String browserId = SelectOptionParam.getCustomBrowserId(extendInfoPO.getCustomValue()); BrowserBean browserConditionParam = OrganizationFormItemUtil.browserItem(user, 2, 16, fieldItem.getViewAttr(), false, extendInfoPO.getFieldNameDesc(), extendInfoPO.getBrowserType(), extendInfoPO.getFieldName(), browserId).getBrowserConditionParam();
BrowserBean browserConditionParam = OrganizationFormItemUtil.browserItem(user, 2, 16, fieldItem.getViewAttr(), false, extendInfoPO.getFieldNameDesc(), extendInfoPO.getBrowserType(), extendInfoPO.getFieldName(), browserId).getBrowserConditionParam(); fieldItem.setBrowserConditionParam(browserConditionParam);
fieldItem.setBrowserConditionParam(browserConditionParam); break;
case SELECT:
String customValue = Util.null2String(extendInfoPO.getCustomValue());
List<SearchConditionOption> searchConditionOptions = SelectOptionParam.convertJsonToListOption(customValue);
fieldItem.setOptions(searchConditionOptions);
break;
default:
break;
} }
fieldItem.setWidth(width + "%"); fieldItem.setWidth(width + "%");

@ -31,7 +31,7 @@ public class CardButtonPO {
private Integer showOrder; private Integer showOrder;
private Integer open; private Integer openType;
private Long creator; private Long creator;

@ -9,7 +9,7 @@
<result column="roles" property="roles"/> <result column="roles" property="roles"/>
<result column="sys_default" property="sysDefault"/> <result column="sys_default" property="sysDefault"/>
<result column="show_order" property="showOrder"/> <result column="show_order" property="showOrder"/>
<result column="open" property="open"/> <result column="open_type" property="openType"/>
<result column="creator" property="creator"/> <result column="creator" property="creator"/>
<result column="delete_type" property="deleteType"/> <result column="delete_type" property="deleteType"/>
<result column="create_time" property="createTime"/> <result column="create_time" property="createTime"/>
@ -28,7 +28,7 @@
, t.roles , t.roles
, t.sys_default , t.sys_default
, t.show_order , t.show_order
, t.open , t.open_type
, t.creator , t.creator
, t.delete_type , t.delete_type
, t.create_time , t.create_time

@ -197,30 +197,30 @@ public class CompServiceImpl extends Service implements CompService {
HasRightUtil.hasRight(user, RIGHT_NAME, false); HasRightUtil.hasRight(user, RIGHT_NAME, false);
CompSearchParam searchParam = JSONObject.parseObject(JSONObject.toJSONString(params), CompSearchParam.class); CompSearchParam searchParam = JSONObject.parseObject(JSONObject.toJSONString(params), CompSearchParam.class);
String groupId = (String) params.get("viewCondition"); String groupId = (String) params.get("viewCondition");
if ("0".equals(groupId)) { if ("0".equals(groupId) || GROUP_ID.toString().equals(groupId)) {
groupId = GROUP_ID.toString(); String oldCompNo = getCompMapper().listById(searchParam.getId()).getCompNo();
} String compNo = searchParam.getCompNo();
String oldCompNo = getCompMapper().listById(searchParam.getId()).getCompNo(); if (!compNo.equals(oldCompNo)) {
String compNo = searchParam.getCompNo(); compNo = repeatDetermine(compNo);
if (!compNo.equals(oldCompNo)) { params.put("comp_no", compNo);
compNo = repeatDetermine(compNo); }
params.put("comp_no", compNo); // 上级分部
} String ecCompany = Util.null2String(params.get("ec_company"));
// 上级分部 if (StringUtils.isNotBlank(ecCompany)) {
String ecCompany = Util.null2String(params.get("ec_company")); Long parent_company = Objects.requireNonNull(EcHrmRelationUtil.getJclCompanyId(ecCompany)).getId();
if (StringUtils.isNotBlank(ecCompany)) { // 上级分部不能选择本身
Long parent_company = Objects.requireNonNull(EcHrmRelationUtil.getJclCompanyId(ecCompany)).getId(); OrganizationAssert.isFalse(parent_company.equals(searchParam.getId()), "上级分部不能选择本身");
// 上级分部不能选择本身 params.put("parent_company", parent_company);
OrganizationAssert.isFalse(parent_company.equals(searchParam.getId()), "上级分部不能选择本身"); } else {
params.put("parent_company", parent_company); params.put("parent_company", "");
}else{ }
params.put("parent_company", ""); new OrganizationSyncEc(user, LogModuleNameEnum.COMPANY, OperateTypeEnum.UPDATE, params).sync();
// 更新主表数据
getExtService(user).updateExtForm(user, EXTEND_TYPE, JCL_ORG_COMP, params, "", searchParam.getId());
} }
new OrganizationSyncEc(user, LogModuleNameEnum.COMPANY, OperateTypeEnum.UPDATE, params).sync();
// 更新主表数据
getExtService(user).updateExtForm(user, EXTEND_TYPE, JCL_ORG_COMP, params, "", searchParam.getId());
// 更新主表拓展表 // 更新主表拓展表
getExtService(user).updateExtForm(user, EXTEND_TYPE, JCL_ORG_COMPEXT, params, groupId, searchParam.getId()); getExtService(user).updateExtForm(user, EXTEND_TYPE, JCL_ORG_COMPEXT, params, "", searchParam.getId());
//更新明细表 //更新明细表
getExtService(user).updateExtDT(user, EXTEND_TYPE, JCL_ORG_COMPEXT_DT1, params, searchParam.getId()); getExtService(user).updateExtDT(user, EXTEND_TYPE, JCL_ORG_COMPEXT_DT1, params, searchParam.getId());
@ -237,7 +237,7 @@ public class CompServiceImpl extends Service implements CompService {
new OrganizationSyncEc(user, LogModuleNameEnum.COMPANY, OperateTypeEnum.CANCELED, map).sync(); new OrganizationSyncEc(user, LogModuleNameEnum.COMPANY, OperateTypeEnum.CANCELED, map).sync();
// 删除拓展表、明细表 // 删除拓展表、明细表
MapperProxyFactory.getProxy(ExtMapper.class).deleteByID("jcl_org_compext", id); MapperProxyFactory.getProxy(ExtMapper.class).deleteByID("jcl_org_compext", id);
MapperProxyFactory.getProxy(ExtDTMapper.class).deleteByMainID("jcl_org_compext_dt1", id,null); MapperProxyFactory.getProxy(ExtDTMapper.class).deleteByMainID("jcl_org_compext_dt1", id, null);
} }
return getCompMapper().deleteByIds(ids); return getCompMapper().deleteByIds(ids);
} }

@ -281,58 +281,56 @@ public class DepartmentServiceImpl extends Service implements DepartmentService
HasRightUtil.hasRight(user, RIGHT_NAME, false); HasRightUtil.hasRight(user, RIGHT_NAME, false);
DeptSearchParam searchParam = JSONObject.parseObject(JSONObject.toJSONString(params), DeptSearchParam.class); DeptSearchParam searchParam = JSONObject.parseObject(JSONObject.toJSONString(params), DeptSearchParam.class);
String groupId = (String) params.get("viewCondition"); String groupId = (String) params.get("viewCondition");
if ("0".equals(groupId)) { if ("0".equals(groupId) || GROUP_ID.toString().equals(groupId)) {
groupId = GROUP_ID.toString(); DepartmentPO oldDept = getDepartmentMapper().getDeptById(searchParam.getId());
} String deptNo = searchParam.getDeptNo();
if (!deptNo.equals(oldDept.getDeptNo())) {
DepartmentPO oldDept = getDepartmentMapper().getDeptById(searchParam.getId()); deptNo = repeatDetermine(deptNo);
String deptNo = searchParam.getDeptNo(); params.put("dept_no", deptNo);
if (!deptNo.equals(oldDept.getDeptNo())) {
deptNo = repeatDetermine(deptNo);
params.put("dept_no", deptNo);
}
// 上级分部
String ecCompany = Util.null2String(params.get("ec_company"));
if (StringUtils.isNotBlank(ecCompany)) {
CompPO jclCompanyId = EcHrmRelationUtil.getJclCompanyId(ecCompany);
if (null != jclCompanyId) {
params.put("parent_comp", jclCompanyId.getId());
} }
} // 上级分部
// 上级部门 String ecCompany = Util.null2String(params.get("ec_company"));
String ecDepartment = Util.null2String(params.get("ec_department")); if (StringUtils.isNotBlank(ecCompany)) {
if (StringUtils.isNotBlank(ecDepartment)) { CompPO jclCompanyId = EcHrmRelationUtil.getJclCompanyId(ecCompany);
DepartmentPO jclDepartmentId = EcHrmRelationUtil.getJclDepartmentId(ecDepartment); if (null != jclCompanyId) {
if (null != jclDepartmentId) { params.put("parent_comp", jclCompanyId.getId());
// 上级部门不能选择本身 }
OrganizationAssert.isFalse(jclDepartmentId.getId().equals(searchParam.getId()), "上级部门不能选择本身");
params.put("parent_dept", jclDepartmentId.getId());
// 部门不为空,自动指定所属分部
params.put("parent_comp", jclDepartmentId.getParentComp());
params.put("ec_company", EcHrmRelationUtil.getEcCompanyId(Util.null2String(jclDepartmentId.getParentComp())));
} }
// 上级部门
String ecDepartment = Util.null2String(params.get("ec_department"));
if (StringUtils.isNotBlank(ecDepartment)) {
DepartmentPO jclDepartmentId = EcHrmRelationUtil.getJclDepartmentId(ecDepartment);
if (null != jclDepartmentId) {
// 上级部门不能选择本身
OrganizationAssert.isFalse(jclDepartmentId.getId().equals(searchParam.getId()), "上级部门不能选择本身");
params.put("parent_dept", jclDepartmentId.getId());
// 部门不为空,自动指定所属分部
params.put("parent_comp", jclDepartmentId.getParentComp());
params.put("ec_company", EcHrmRelationUtil.getEcCompanyId(Util.null2String(jclDepartmentId.getParentComp())));
}
} else { } else {
params.put("parent_dept", ""); params.put("parent_dept", "");
}
new OrganizationSyncEc(user, LogModuleNameEnum.DEPARTMENT, OperateTypeEnum.UPDATE, params).sync();
// 更新主表数据
getExtService(user).updateExtForm(user, EXTEND_TYPE, JCL_ORG_DEPT, params, "", searchParam.getId());
DepartmentPO newDeptById = getDepartmentMapper().getDeptById(searchParam.getId());
new DepartmentTriggerRunnable(oldDept, newDeptById).run();
Long parentComp = StringUtils.isNotEmpty(Util.null2String(params.get("parent_comp"))) ? Long.parseLong(Util.null2String(params.get("parent_comp"))) : null;
// 刷新岗位所属分部
refreshJobComp(searchParam.getId(), parentComp);
List<DepartmentPO> childList = getDepartmentMapper().getDeptListByPId(searchParam.getId());
String ecCompanyId = EcHrmRelationUtil.getEcCompanyId(Util.null2String(parentComp));
forbiddenChildTag(parentComp, ecCompanyId, childList);
} }
new OrganizationSyncEc(user, LogModuleNameEnum.DEPARTMENT, OperateTypeEnum.UPDATE, params).sync();
// 更新主表数据
getExtService(user).updateExtForm(user, EXTEND_TYPE, JCL_ORG_DEPT, params, "", searchParam.getId());
// 更新主表拓展表 // 更新主表拓展表
getExtService(user).updateExtForm(user, EXTEND_TYPE, JCL_ORG_DEPTEXT, params, groupId, searchParam.getId()); getExtService(user).updateExtForm(user, EXTEND_TYPE, JCL_ORG_DEPTEXT, params, "", searchParam.getId());
//更新明细表 //更新明细表
getExtService(user).updateExtDT(user, EXTEND_TYPE, JCL_ORG_DEPTEXT_DT1, params, searchParam.getId()); getExtService(user).updateExtDT(user, EXTEND_TYPE, JCL_ORG_DEPTEXT_DT1, params, searchParam.getId());
DepartmentPO newDeptById = getDepartmentMapper().getDeptById(searchParam.getId());
new DepartmentTriggerRunnable(oldDept, newDeptById).run();
Long parentComp = StringUtils.isNotEmpty(Util.null2String(params.get("parent_comp"))) ? Long.parseLong(Util.null2String(params.get("parent_comp"))) : null;
// 刷新岗位所属分部
refreshJobComp(searchParam.getId(), parentComp);
List<DepartmentPO> childList = getDepartmentMapper().getDeptListByPId(searchParam.getId());
String ecCompanyId = EcHrmRelationUtil.getEcCompanyId(Util.null2String(parentComp));
forbiddenChildTag(parentComp, ecCompanyId, childList);
return searchParam.getId(); return searchParam.getId();
} }
@ -642,7 +640,7 @@ public class DepartmentServiceImpl extends Service implements DepartmentService
updateEcDepartment(departmentPO); updateEcDepartment(departmentPO);
getDepartmentMapper().updateBaseDept(departmentPO); getDepartmentMapper().updateBaseDept(departmentPO);
// 更新组织架构图 // 更新组织架构图
new DepartmentTriggerRunnable(departmentPO.getId()).run(); new DepartmentTriggerRunnable(departmentPO.getId()).run();
} }
// 查询该部门一级岗位、更新岗位所属分部、所属部门 // 查询该部门一级岗位、更新岗位所属分部、所属部门
List<JobPO> firstChildJobList = getJobMapper().listJobsByDepartmentId(mergeParam.getId()); List<JobPO> firstChildJobList = getJobMapper().listJobsByDepartmentId(mergeParam.getId());
@ -687,7 +685,7 @@ public class DepartmentServiceImpl extends Service implements DepartmentService
updateEcDepartment(targetDepartment); updateEcDepartment(targetDepartment);
getDepartmentMapper().updateBaseDept(targetDepartment); getDepartmentMapper().updateBaseDept(targetDepartment);
// 更新组织架构图 // 更新组织架构图
new DepartmentTriggerRunnable(oldFParentId,targetDepartment.getId()).run(); new DepartmentTriggerRunnable(oldFParentId, targetDepartment.getId()).run();
return 0; return 0;
} }
@ -730,7 +728,7 @@ public class DepartmentServiceImpl extends Service implements DepartmentService
deptById.setEcDepartment(null); deptById.setEcDepartment(null);
// 更新组织架构图 // 更新组织架构图
new DepartmentTriggerRunnable(company.toString(),deptById).run(); new DepartmentTriggerRunnable(company.toString(), deptById).run();
} else if ("1".equals(moveParam.getMoveType())) { } else if ("1".equals(moveParam.getMoveType())) {
Long department = moveParam.getDepartment(); Long department = moveParam.getDepartment();
Long departmentId = Objects.requireNonNull(EcHrmRelationUtil.getJclDepartmentId(Util.null2String(department))).getId(); Long departmentId = Objects.requireNonNull(EcHrmRelationUtil.getJclDepartmentId(Util.null2String(department))).getId();
@ -749,7 +747,7 @@ public class DepartmentServiceImpl extends Service implements DepartmentService
deptById.setEcCompany(parentDepartment.getEcCompany()); deptById.setEcCompany(parentDepartment.getEcCompany());
// 更新组织架构图 // 更新组织架构图
new DepartmentTriggerRunnable(Integer.toString(100000000+department.intValue()),deptById).run(); new DepartmentTriggerRunnable(Integer.toString(100000000 + department.intValue()), deptById).run();
} }
// 更新EC部门 // 更新EC部门
updateEcDepartment(deptById); updateEcDepartment(deptById);
@ -847,7 +845,7 @@ public class DepartmentServiceImpl extends Service implements DepartmentService
Set<CompPO> builderComps = new HashSet<>(); Set<CompPO> builderComps = new HashSet<>();
for (CompPO compPO : filterComps) { for (CompPO compPO : filterComps) {
buildParentComps(compPO, builderComps,allMaps); buildParentComps(compPO, builderComps, allMaps);
} }
return SearchTreeUtil.builderTreeMode(CompBO.buildSetToSearchTree(builderComps)); return SearchTreeUtil.builderTreeMode(CompBO.buildSetToSearchTree(builderComps));

@ -163,7 +163,7 @@ public class ExtServiceImpl extends Service implements ExtService {
String ecResourceId = MapperProxyFactory.getProxy(HrmResourceMapper.class).getEcResourceId(String.valueOf(id)); String ecResourceId = MapperProxyFactory.getProxy(HrmResourceMapper.class).getEcResourceId(String.valueOf(id));
if (Util.null2String(user.getUID()).equals(ecResourceId)) { if (Util.null2String(user.getUID()).equals(ecResourceId)) {
infoPOList.removeIf(item -> !"1".equals(Util.null2String(item.getIsModify()))); infoPOList.removeIf(item -> !"1".equals(Util.null2String(item.getIsModify())));
}else{ } else {
infoPOList = new ArrayList<>(); infoPOList = new ArrayList<>();
} }
} }
@ -195,7 +195,12 @@ public class ExtServiceImpl extends Service implements ExtService {
Map<String, Object> resultMap = new HashMap<>(); Map<String, Object> resultMap = new HashMap<>();
Set<String> keys = item.keySet(); Set<String> keys = item.keySet();
for (String key : keys) { for (String key : keys) {
resultMap.put(key.toLowerCase(), item.get(key)); Object o = item.get(key);
if (o instanceof Integer) {
resultMap.put(key.toLowerCase(), Integer.toString((int) o));
} else {
resultMap.put(key.toLowerCase(), o);
}
} }
resultMap.put("viewAttr", finalCheckRight ? viewAttr : 1); resultMap.put("viewAttr", finalCheckRight ? viewAttr : 1);
return resultMap; return resultMap;
@ -250,9 +255,6 @@ public class ExtServiceImpl extends Service implements ExtService {
value = null; value = null;
} }
if (null == value) { if (null == value) {
if ("int".equals(collect.get(key).getFieldType())) {
value = null;
}
// 兼容sqlServer数据库text字段类型 // 兼容sqlServer数据库text字段类型
if ("text".equals(collect.get(key).getFieldType())) { if ("text".equals(collect.get(key).getFieldType())) {
value = ""; value = "";
@ -308,9 +310,9 @@ public class ExtServiceImpl extends Service implements ExtService {
Map<String, Object> map = new HashMap<>(); Map<String, Object> map = new HashMap<>();
for (ExtendInfoPO extendInfoPO : filterS) { for (ExtendInfoPO extendInfoPO : filterS) {
if (BROWSER_TYPE.equals(extendInfoPO.getControlType())) { if (BROWSER_TYPE.equals(extendInfoPO.getControlType())) {
map.put(extendInfoPO.getFieldName() + "span", params.get(extendInfoPO.getFieldName() + "span_" + i)); map.put(extendInfoPO.getFieldName() + "span", parseDetailValue(params.get(extendInfoPO.getFieldName() + "span_" + i)));
} }
map.put(extendInfoPO.getFieldName(), params.get(extendInfoPO.getFieldName() + "_" + i)); map.put(extendInfoPO.getFieldName(), parseDetailValue(params.get(extendInfoPO.getFieldName() + "_" + i)));
} }
map.put("mainid", id); map.put("mainid", id);
map.put("group_id", groupId); map.put("group_id", groupId);
@ -322,4 +324,11 @@ public class ExtServiceImpl extends Service implements ExtService {
} }
} }
} }
private Object parseDetailValue(Object obj) {
if (null == obj || StringUtils.isBlank(Util.null2String(obj))) {
return null;
}
return obj;
}
} }

@ -284,34 +284,35 @@ public class HrmResourceServiceImpl extends Service implements HrmResourceServic
public int updateForm(Map<String, Object> params) { public int updateForm(Map<String, Object> params) {
Long id = Long.parseLong((String) params.get("id")); Long id = Long.parseLong((String) params.get("id"));
String groupId = (String) params.get("viewCondition"); String groupId = (String) params.get("viewCondition");
if ("0".equals(groupId)) { int updateCount = 0;
groupId = GROUP_ID.toString(); if ("0".equals(groupId) || GROUP_ID.toString().equals(groupId)) {
} // 判断编号是否重复
// 判断编号是否重复 String workCode = Util.null2String(params.get("work_code"));
String workCode = Util.null2String(params.get("work_code")); HrmResourcePO resourceById = getResourceMapper().getResourceById(id.toString());
HrmResourcePO resourceById = getResourceMapper().getResourceById(id.toString()); if (!workCode.equals(resourceById.getWorkCode())) {
if (!workCode.equals(resourceById.getWorkCode())) { workCode = repeatDetermine(workCode);
workCode = repeatDetermine(workCode); params.put("work_code", workCode);
params.put("work_code", workCode); }
}
// 完善更新参数 // 完善更新参数
completeParams(params); completeParams(params);
// 更新EC人员,更新成功后,更新聚才林人员表 // 更新EC人员,更新成功后,更新聚才林人员表
Map<String, Object> syncMap = new OrganizationSyncEc(user, LogModuleNameEnum.RESOURCE, OperateTypeEnum.UPDATE, params).sync(); Map<String, Object> syncMap = new OrganizationSyncEc(user, LogModuleNameEnum.RESOURCE, OperateTypeEnum.UPDATE, params).sync();
String ecResourceId = Util.null2String(syncMap.get("id")); String ecResourceId = Util.null2String(syncMap.get("id"));
OrganizationAssert.isTrue(StringUtils.isNotBlank(ecResourceId), Util.null2String(syncMap.get("message"))); OrganizationAssert.isTrue(StringUtils.isNotBlank(ecResourceId), Util.null2String(syncMap.get("message")));
int updateCount = 0; // 更新主表数据
// 更新主表数据 updateCount += getExtService(user).updateExtForm(user, EXTEND_TYPE, JCL_ORG_HRM, params, "", id);
updateCount += getExtService(user).updateExtForm(user, EXTEND_TYPE, JCL_ORG_HRM, params, "", id);
// 更新主表拓展表 new HrmResourceTriggerRunnable(id).run();
getExtService(user).updateExtForm(user, EXTEND_TYPE, JCL_ORG_HRMEXT, params, groupId, id); } else {
// 更新主表拓展表
getExtService(user).updateExtForm(user, EXTEND_TYPE, JCL_ORG_HRMEXT, params, "", id);
}
//更新明细表 //更新明细表
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 HrmResourceTriggerRunnable(id).run();
return updateCount; return updateCount;
} }

@ -404,45 +404,45 @@ public class JobServiceImpl extends Service implements JobService {
if (StringUtils.isNotBlank(parent_job)) { if (StringUtils.isNotBlank(parent_job)) {
OrganizationAssert.isFalse(parent_job.equals(searchParam.getId().toString()), "上级岗位不能选择本身"); OrganizationAssert.isFalse(parent_job.equals(searchParam.getId().toString()), "上级岗位不能选择本身");
} }
if ("0".equals(groupId)) { if ("0".equals(groupId) || GROUP_ID.toString().equals(groupId)) {
groupId = GROUP_ID.toString(); JobPO oldJobPO = getJobMapper().getJobById(searchParam.getId());
} String oldJobNo = oldJobPO.getJobNo();
JobPO oldJobPO = getJobMapper().getJobById(searchParam.getId()); String jobNo = searchParam.getJobNo();
String oldJobNo = oldJobPO.getJobNo(); if (!jobNo.equals(oldJobNo)) {
String jobNo = searchParam.getJobNo(); jobNo = repeatDetermine(jobNo);
if (!jobNo.equals(oldJobNo)) { params.put("job_no", jobNo);
jobNo = repeatDetermine(jobNo); }
params.put("job_no", jobNo);
}
// 更新主表数据 // 更新主表数据
params.put("is_key", searchParam.getIsKey()); params.put("is_key", searchParam.getIsKey());
if (null != searchParam.getParentJob()) { if (null != searchParam.getParentJob()) {
JobPO parentJob = getJobMapper().getJobById(searchParam.getParentJob()); JobPO parentJob = getJobMapper().getJobById(searchParam.getParentJob());
params.put("parent_dept", parentJob.getParentDept()); params.put("parent_dept", parentJob.getParentDept());
params.put("parent_comp", parentJob.getParentComp()); params.put("parent_comp", parentJob.getParentComp());
params.put("ec_company", parentJob.getEcCompany()); params.put("ec_company", parentJob.getEcCompany());
params.put("ec_department", parentJob.getEcDepartment()); params.put("ec_department", parentJob.getEcDepartment());
} else { } else {
Long ecDepartment = searchParam.getEcDepartment(); Long ecDepartment = searchParam.getEcDepartment();
DepartmentPO jclDepartment = EcHrmRelationUtil.getJclDepartmentId(Util.null2String(ecDepartment)); DepartmentPO jclDepartment = EcHrmRelationUtil.getJclDepartmentId(Util.null2String(ecDepartment));
params.put("parent_dept", jclDepartment.getId()); params.put("parent_dept", jclDepartment.getId());
params.put("parent_comp", jclDepartment.getParentComp()); params.put("parent_comp", jclDepartment.getParentComp());
if (null != jclDepartment.getParentComp()) { if (null != jclDepartment.getParentComp()) {
params.put("ec_company", EcHrmRelationUtil.getEcCompanyId(Util.null2String(jclDepartment.getParentComp()))); params.put("ec_company", EcHrmRelationUtil.getEcCompanyId(Util.null2String(jclDepartment.getParentComp())));
}
} }
params.put("jobactivityid", JOB_ACTIVITY_ID);
new OrganizationSyncEc(user, LogModuleNameEnum.JOB, OperateTypeEnum.UPDATE, params, oldJobPO).sync();
getExtService(user).updateExtForm(user, EXTEND_TYPE, JCL_ORG_JOB, params, "", searchParam.getId());
JobPO jobById = getJobMapper().getJobById(searchParam.getId());
new JobTriggerRunnable(oldJobPO, jobById).run();
// 更新人员关联字段
updateResourceJob(jobById);
} }
params.put("jobactivityid", JOB_ACTIVITY_ID);
new OrganizationSyncEc(user, LogModuleNameEnum.JOB, OperateTypeEnum.UPDATE, params, oldJobPO).sync();
getExtService(user).updateExtForm(user, EXTEND_TYPE, JCL_ORG_JOB, params, "", searchParam.getId());
// 更新主表拓展表 // 更新主表拓展表
getExtService(user).updateExtForm(user, EXTEND_TYPE, JCL_ORG_JOBEXT, params, groupId, searchParam.getId()); getExtService(user).updateExtForm(user, EXTEND_TYPE, JCL_ORG_JOBEXT, params, "", searchParam.getId());
// 更新明细表 // 更新明细表
getExtService(user).updateExtDT(user, EXTEND_TYPE, JCL_ORG_JOBEXT_DT1, params, searchParam.getId()); getExtService(user).updateExtDT(user, EXTEND_TYPE, JCL_ORG_JOBEXT_DT1, params, searchParam.getId());
JobPO jobById = getJobMapper().getJobById(searchParam.getId());
new JobTriggerRunnable(oldJobPO, jobById).run();
// 更新人员关联字段
updateResourceJob(jobById);
return searchParam.getId(); return searchParam.getId();
} }
@ -590,7 +590,7 @@ public class JobServiceImpl extends Service implements JobService {
targetJob.setJobName(mergeParam.getMergeName()); targetJob.setJobName(mergeParam.getMergeName());
getJobMapper().updateBaseJob(targetJob); getJobMapper().updateBaseJob(targetJob);
new JobTriggerRunnable(jobById.getId(),targetJob.getId()).run(); new JobTriggerRunnable(jobById.getId(), targetJob.getId()).run();
// 原岗位删除 // 原岗位删除
new OrganizationSyncEc(user, LogModuleNameEnum.JOB, OperateTypeEnum.CANCELED, null, jobById).sync(); new OrganizationSyncEc(user, LogModuleNameEnum.JOB, OperateTypeEnum.CANCELED, null, jobById).sync();
getJobMapper().deleteByIds(Collections.singletonList(jobById.getId())); getJobMapper().deleteByIds(Collections.singletonList(jobById.getId()));
@ -642,11 +642,11 @@ public class JobServiceImpl extends Service implements JobService {
* @param compPO * @param compPO
* @param builderComps * @param builderComps
*/ */
private void buildParentComps(CompPO compPO, Set<CompPO> builderComps,Map<Long, CompPO> allMaps) { private void buildParentComps(CompPO compPO, Set<CompPO> builderComps, Map<Long, CompPO> allMaps) {
builderComps.add(compPO); builderComps.add(compPO);
CompPO parentComp = allMaps.get(compPO.getParentCompany()); CompPO parentComp = allMaps.get(compPO.getParentCompany());
if (null != parentComp && 0 == parentComp.getForbiddenTag()) { if (null != parentComp && 0 == parentComp.getForbiddenTag()) {
buildParentComps(parentComp, builderComps,allMaps); buildParentComps(parentComp, builderComps, allMaps);
} }
} }
@ -711,7 +711,7 @@ public class JobServiceImpl extends Service implements JobService {
Map<Long, CompPO> allMaps = allCompanys.stream().collect(Collectors.toMap(CompPO::getId, item -> item, (k1, k2) -> k1)); Map<Long, CompPO> allMaps = allCompanys.stream().collect(Collectors.toMap(CompPO::getId, item -> item, (k1, k2) -> k1));
Set<CompPO> builderComps = new HashSet<>(); Set<CompPO> builderComps = new HashSet<>();
for (CompPO compPO : filterComps) { for (CompPO compPO : filterComps) {
buildParentComps(compPO, builderComps,allMaps); buildParentComps(compPO, builderComps, allMaps);
} }
return SearchTreeUtil.builderTreeMode(CompBO.buildSetToSearchTree(builderComps), deptTrees); return SearchTreeUtil.builderTreeMode(CompBO.buildSetToSearchTree(builderComps), deptTrees);
} }

@ -50,16 +50,16 @@ public class OrgChartServiceImpl extends Service implements OrgChartService {
item.put("companyname", rs.getString("companyname")); item.put("companyname", rs.getString("companyname"));
fclasslist.add(item); fclasslist.add(item);
} }
String sql = "select distinct id, fnumber, fname, ftype from jcl_org_map where ftype in (0, 1) "; String sql = "select id, fnumber, fname, ftype from jcl_org_map where ftype in (0, 1) ";
// 分部分权过滤 // 分部分权过滤
DetachUtil detachUtil = new DetachUtil(user.getUID()); DetachUtil detachUtil = new DetachUtil(user.getUID());
if (detachUtil.isDETACH()) { if (detachUtil.isDETACH()) {
String jclRoleLevels = detachUtil.getJclRoleLevels(); String jclRoleLevels = detachUtil.getJclRoleLevels();
if (StringUtils.isNotBlank(jclRoleLevels)) { if (StringUtils.isNotBlank(jclRoleLevels)) {
sql = "select distinct id, fnumber, fname, ftype from jcl_org_map where (ftype = 0 or (ftype = 1 and fobjid in(" + jclRoleLevels + "))) "; sql = "select id, fnumber, fname, ftype from jcl_org_map where (ftype = 0 or (ftype = 1 and fobjid in(" + jclRoleLevels + "))) ";
} else { } else {
sql = "select distinct id, fnumber, fname, ftype from jcl_org_map where ftype = 0 "; sql = "select id, fnumber, fname, ftype from jcl_org_map where ftype = 0 ";
} }
} }
rs.executeQuery(sql + " and fdateend > " + DBType.get(new RecordSet().getDBType()).currentDate() + " order by ftype , id,fdateend desc "); rs.executeQuery(sql + " and fdateend > " + DBType.get(new RecordSet().getDBType()).currentDate() + " order by ftype , id,fdateend desc ");

Loading…
Cancel
Save