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()); reqVO.setParentId(DeptIdEnum.ROOT.getId());
} }
validateForCreateOrUpdate(reqVO.getId(), reqVO.getParentId(), reqVO.getName()); validateForCreateOrUpdate(reqVO.getId(), reqVO.getParentId(), reqVO.getName());
// 更新部门 // // 更新部门
DeptDO updateObj = DeptConvert.INSTANCE.convert(reqVO); // DeptDO updateObj = DeptConvert.INSTANCE.convert(reqVO);
if (DeptIdEnum.ROOT.getId().equals(updateObj.getParentId())) { // if (DeptIdEnum.ROOT.getId().equals(updateObj.getParentId())) {
updateObj.setParentOrganizationIds(updateObj.getId() + ""); // updateObj.setParentOrganizationIds(updateObj.getId() + "");
updateObj.setParentOrganizationName(updateObj.getName()); // updateObj.setParentOrganizationName(updateObj.getName());
} else { // } else {
DeptDO parent = deptMapper.selectById(reqVO.getParentId()); // DeptDO parent = deptMapper.selectById(reqVO.getParentId());
updateObj.setParentOrganizationIds(parent.getParentOrganizationIds() + "," + updateObj.getId()); // updateObj.setParentOrganizationIds(parent.getParentOrganizationIds() + "," + updateObj.getId());
updateObj.setParentOrganizationName(parent.getParentOrganizationName() + ">" + updateObj.getName()); // updateObj.setParentOrganizationName(parent.getParentOrganizationName() + ">" + updateObj.getName());
} // }
deptMapper.updateById(updateObj); 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(); 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 @Override
public void deleteDept(Long id) { public void deleteDept(Long id) {
// 校验是否存在 // 校验是否存在