fix: 修改部门

pull/8/head^2
tangqian 2023-05-31 18:02:53 +08:00
parent 4a2765bd1b
commit a37b5f0fcc
1 changed files with 33 additions and 16 deletions

View File

@ -132,21 +132,38 @@ public class DeptServiceImpl implements DeptService {
reqVO.setParentId(DeptIdEnum.ROOT.getId());
}
validateForCreateOrUpdate(reqVO.getId(), reqVO.getParentId(), reqVO.getName());
// 更新部门
DeptDO updateObj = DeptConvert.INSTANCE.convert(reqVO);
if (DeptIdEnum.ROOT.getId().equals(updateObj.getParentId())) {
updateObj.setParentOrganizationIds(updateObj.getId() + "");
updateObj.setParentOrganizationName(updateObj.getName());
} else {
DeptDO parent = deptMapper.selectById(reqVO.getParentId());
updateObj.setParentOrganizationIds(parent.getParentOrganizationIds() + "," + updateObj.getId());
updateObj.setParentOrganizationName(parent.getParentOrganizationName() + ">" + updateObj.getName());
}
deptMapper.updateById(updateObj);
// // 更新部门
// DeptDO updateObj = DeptConvert.INSTANCE.convert(reqVO);
// if (DeptIdEnum.ROOT.getId().equals(updateObj.getParentId())) {
// updateObj.setParentOrganizationIds(updateObj.getId() + "");
// updateObj.setParentOrganizationName(updateObj.getName());
// } else {
// DeptDO parent = deptMapper.selectById(reqVO.getParentId());
// updateObj.setParentOrganizationIds(parent.getParentOrganizationIds() + "," + updateObj.getId());
// updateObj.setParentOrganizationName(parent.getParentOrganizationName() + ">" + updateObj.getName());
// }
DeptDO deptDO = deptMapper.selectById(reqVO.getId());
List<DeptDO> deptDOS = deptMapper.selectListDeep(Wrappers.<DeptDO>lambdaQuery().like(DeptDO::getParentOrganizationIds, reqVO.getId()));
deptDOS.forEach(x -> {
x.setParentOrganizationName(x.getParentOrganizationName().replace(deptDO.getName(), reqVO.getName()));
});
deptMapper.updateBatch(deptDOS,deptDOS.size());
// deptMapper.updateById(updateObj);
// 发送刷新消息
deptProducer.sendDeptRefreshMessage();
}
public static void main(String[] args) {
String words = "创盈云>测试删除1";
System.out.println("原始字符串是'" + words + "'");
System.out.println("replace(\"r's\",\"is\")结果:" + words.replace("测试删除1", "测试删除"));
}
@Override
public void deleteDept(Long id) {
// 校验是否存在