代码优化

This commit is contained in:
Administrator 2025-09-19 15:58:03 +08:00
parent aadb31c617
commit 60bc8e4b48
1 changed files with 75 additions and 59 deletions

View File

@ -102,17 +102,20 @@ public class SyncDepartmentChanges implements EsbServerlessRpcRemoteInterface {
for (Map<String, Object> addedChange : addedChanges) {
String changed = null!=addedChange.get("changed")?String.valueOf(addedChange.get("changed").toString()):"";
log.error("SyncDepartmentChanges111.changed:{}", changed);
// 去掉大括号并按逗号分割
String[] entries = changed.substring(1, changed.length() - 1).split(", ");
// 使用 Stream 转换为 Map
Map<String, String> map = Arrays.stream(entries)
.map(entry -> entry.split("=", 2)) // 防止值里有 "="
.collect(Collectors.toMap(
arr -> arr[0], // key
arr -> arr.length > 1 ? arr[1] : "" // value处理空值
));
log.error("SyncDepartmentChanges111.map:{}", map);
addSysDept(map, apiInfo, host, form_id, layout_id);
//增加判空
if(StringUtils.isNotBlank(changed)){
// 去掉大括号并按逗号分割
String[] entries = changed.substring(1, changed.length() - 1).split(", ");
// 使用 Stream 转换为 Map
Map<String, String> map = Arrays.stream(entries)
.map(entry -> entry.split("=", 2)) // 防止值里有 "="
.collect(Collectors.toMap(
arr -> arr[0], // key
arr -> arr.length > 1 ? arr[1] : "" // value处理空值
));
log.error("SyncDepartmentChanges111.map:{}", map);
addSysDept(map, apiInfo, host, form_id, layout_id);
}
}
}
//删除
@ -134,52 +137,63 @@ public class SyncDepartmentChanges implements EsbServerlessRpcRemoteInterface {
for (Map<String, Object> deletedChange : deletedChanges) {
String changed = null!=deletedChange.get("changed")?String.valueOf(deletedChange.get("changed").toString()):"";
log.error("SyncDepartmentChanges222.changed:{}", changed);
// 去掉大括号并按逗号分割
String[] entries = changed.substring(1, changed.length() - 1).split(", ");
// 使用 Stream 转换为 Map
map = Arrays.stream(entries)
.map(entry -> entry.split("=", 2)) // 防止值里有 "="
.collect(Collectors.toMap(
arr -> arr[0], // key
arr -> arr.length > 1 ? arr[1] : "" // value处理空值
));
log.error("SyncDepartmentChanges222.map:{}", map);
String bh = null!=map.get("bh")? map.get("bh") :"";
String czlx = null!=map.get("czlx")? map.get("czlx") :"";
String bgly = null!=map.get("bgly")? map.get("bgly") :"";
insertZzbgjl( bh, czlx, bgly, bgsxrq);
//增加判空
if(StringUtils.isNotBlank(changed)){
// 去掉大括号并按逗号分割
String[] entries = changed.substring(1, changed.length() - 1).split(", ");
// 使用 Stream 转换为 Map
map = Arrays.stream(entries)
.map(entry -> entry.split("=", 2)) // 防止值里有 "="
.collect(Collectors.toMap(
arr -> arr[0], // key
arr -> arr.length > 1 ? arr[1] : "" // value处理空值
));
log.error("SyncDepartmentChanges222.map:{}", map);
String bh = null!=map.get("bh")? map.get("bh") :"";
String czlx = null!=map.get("czlx")? map.get("czlx") :"";
String bgly = null!=map.get("bgly")? map.get("bgly") :"";
insertZzbgjl( bh, czlx, bgly, bgsxrq);
}
}
}
//修改1
if (CollectionUtils.isNotEmpty(addedChanges)) {
for (Map<String, Object> addedChange : addedChanges) {
String modified = null!=addedChange.get("changed")?String.valueOf(addedChange.get("changed").toString()):"";
// 去掉大括号并按逗号分割
String[] entries = modified.substring(1, modified.length() - 1).split(", ");
// 使用 Stream 转换为 Map
Map<String, String> map = Arrays.stream(entries)
.map(entry -> entry.split("=", 2)) // 防止值里有 "="
.collect(Collectors.toMap(
arr -> arr[0], // key
arr -> arr.length > 1 ? arr[1] : "" // value处理空值
));
updateSysDept(map, apiInfo, host, form_id, layout_id);
log.error("SyncDepartmentChanges333.modified:{}", modified);
//增加判空
if(StringUtils.isNotBlank(modified)){
// 去掉大括号并按逗号分割
String[] entries = modified.substring(1, modified.length() - 1).split(", ");
// 使用 Stream 转换为 Map
Map<String, String> map = Arrays.stream(entries)
.map(entry -> entry.split("=", 2)) // 防止值里有 "="
.collect(Collectors.toMap(
arr -> arr[0], // key
arr -> arr.length > 1 ? arr[1] : "" // value处理空值
));
updateSysDept(map, apiInfo, host, form_id, layout_id);
}
}
}
//修改2
if (CollectionUtils.isNotEmpty(modifiedChanges)) {
for (Map<String, Object> modifiedChange : modifiedChanges) {
String modified = null!=modifiedChange.get("changed")?String.valueOf(modifiedChange.get("changed").toString()):"";
// 去掉大括号并按逗号分割
String[] entries = modified.substring(1, modified.length() - 1).split(", ");
// 使用 Stream 转换为 Map
Map<String, String> map = Arrays.stream(entries)
.map(entry -> entry.split("=", 2)) // 防止值里有 "="
.collect(Collectors.toMap(
arr -> arr[0], // key
arr -> arr.length > 1 ? arr[1] : "" // value处理空值
));
updateSysDept(map, apiInfo, host, form_id, layout_id);
log.error("SyncDepartmentChanges444.modified:{}", modified);
//增加判空
if(StringUtils.isNotBlank(modified)){
// 去掉大括号并按逗号分割
String[] entries = modified.substring(1, modified.length() - 1).split(", ");
// 使用 Stream 转换为 Map
Map<String, String> map = Arrays.stream(entries)
.map(entry -> entry.split("=", 2)) // 防止值里有 "="
.collect(Collectors.toMap(
arr -> arr[0], // key
arr -> arr.length > 1 ? arr[1] : "" // value处理空值
));
updateSysDept(map, apiInfo, host, form_id, layout_id);
}
}
}
//合并
@ -189,19 +203,21 @@ public class SyncDepartmentChanges implements EsbServerlessRpcRemoteInterface {
.filter(map -> Objects.equals(map.get("czlx"), 3)) // 防止 NullPointerException
.collect(Collectors.toList());
//迁移被合并部门下级部门和人员到合并后部门新增部门
for (Map<String, Object> map : filteredList) {
//查询被合并部门下所有人员
/**
* 查询被合并部门的一级下级部门
*/
String bhbbmcode = null != map.get("bhbbmid") ? String.valueOf(map.get("bhbbmid").toString()) : "";
String code = null != map.get("bh") ? String.valueOf(map.get("bh").toString()) : "";
List<String> firstLevelDepts = getFirstLevelDepts(bhbbmcode);
log.error("SyncDepartmentChanges.firstLevelDepts:{}", firstLevelDepts);
/**
* 更改下级部门的上级部门为新增部门以及被合并部门下的全部人员
*/
updateFirstLevelDeptAndEmployee(code, firstLevelDepts, bhbbmcode);
if (CollectionUtils.isNotEmpty(filteredList)) {
for (Map<String, Object> map : filteredList) {
//查询被合并部门下所有人员
/**
* 查询被合并部门的一级下级部门
*/
String bhbbmcode = null != map.get("bhbbmid") ? String.valueOf(map.get("bhbbmid").toString()) : "";
String code = null != map.get("bh") ? String.valueOf(map.get("bh").toString()) : "";
List<String> firstLevelDepts = getFirstLevelDepts(bhbbmcode);
log.error("SyncDepartmentChanges.firstLevelDepts:{}", firstLevelDepts);
/**
* 更改下级部门的上级部门为新增部门以及被合并部门下的全部人员
*/
updateFirstLevelDeptAndEmployee(code, firstLevelDepts, bhbbmcode);
}
}
}
//拆分没有下级部门且部门没有人员的部门才可被拆分因此被拆分部门1.新增 2.删除
@ -914,7 +930,7 @@ public class SyncDepartmentChanges implements EsbServerlessRpcRemoteInterface {
sql = "select a.bgzz,a.bgly,a.bgsxrq,b.* from uf_organization_zzsj b \n" +
"left join uf_organizational_changes a on a.id = b.form_data_id where a.delete_type = 0 and b.delete_type = 0 ";
}else if("1".equals(flag)){
sql = "select a.bgzz,b.* from uf_organization_bghzzsj b \n" +
sql = "select a.bgzz,a.bgly,a.bgsxrq,b.* from uf_organization_bghzzsj b \n" +
"left join uf_organizational_changes a on a.id = b.form_data_id where a.delete_type = 0 and b.delete_type = 0 ";
}
if(StringUtils.isNotBlank(bgsxrq)){