Commit a84e02dc by gdj

修复重新增加团队报错问题。

parent b9d19632
......@@ -10,12 +10,10 @@ import com.dji.sample.manage.dao.IOrgMapper;
import com.dji.sample.manage.model.dto.OrgDTO;
import com.dji.sample.manage.model.dto.OrgJoinDTO;
import com.dji.sample.manage.model.dto.WorkspaceDTO;
import com.dji.sample.manage.model.entity.OrgEntity;
import com.dji.sample.manage.model.entity.UserEntity;
import com.dji.sample.manage.model.entity.UserOrgEntity;
import com.dji.sample.manage.model.entity.WorkspaceEntity;
import com.dji.sample.manage.model.entity.*;
import com.dji.sample.manage.model.enums.RoleTypeEnum;
import com.dji.sample.manage.model.param.searchParam.OrgSearchParam;
import com.dji.sample.manage.service.IDeviceOrgService;
import com.dji.sample.manage.service.IOrgService;
import com.dji.sample.manage.service.IUserService;
import com.dji.sdk.common.Pagination;
......@@ -50,6 +48,9 @@ public class OrgServiceImpl extends ServiceImpl<IOrgMapper, OrgEntity> implement
@Autowired
private UserOrgServiceImpl userOrgService;
@Autowired
private IDeviceOrgService deviceOrgService;
@Autowired
@Lazy
......@@ -125,6 +126,12 @@ public class OrgServiceImpl extends ServiceImpl<IOrgMapper, OrgEntity> implement
boolean addOrgRes = this.save(addOrgEntity);
// 增加用户和团队的权限
// 先查询是否存在
LambdaQueryWrapper<UserOrgEntity> userOrgEntityLambdaQueryWrapper = new LambdaQueryWrapper<>();
userOrgEntityLambdaQueryWrapper.eq(UserOrgEntity::getOrgId, addOrgEntity.getOrgId());
userOrgEntityLambdaQueryWrapper.eq(UserOrgEntity::getUserId, saveAdmin.getUserId());
List<UserOrgEntity> userOrgList = userOrgService.list(userOrgEntityLambdaQueryWrapper);
if (CollectionUtils.isEmpty(userOrgList)) {
UserOrgEntity userOrgEntity = new UserOrgEntity();
userOrgEntity.setOrgId(addOrgEntity.getOrgId());
userOrgEntity.setUserId(saveAdmin.getUserId());
......@@ -137,6 +144,7 @@ public class OrgServiceImpl extends ServiceImpl<IOrgMapper, OrgEntity> implement
userOrgEntity.setUpdaterName(getUsername());
userOrgEntity.setRoleType(RoleTypeEnum.ORG_ADMIN.getVal());
boolean userOrgSaveRes = userOrgService.save(userOrgEntity);
}
OrgDTO entityConvertToDto = entityConvertToDto(addOrgEntity);
return entityConvertToDto;
......@@ -195,6 +203,15 @@ public class OrgServiceImpl extends ServiceImpl<IOrgMapper, OrgEntity> implement
throw new RuntimeException("id and orgId is null");
}
boolean remove;
LambdaQueryWrapper<OrgEntity> orgWrapper = new LambdaQueryWrapper<>();
if (orgDTO.getId() != null) {
orgWrapper.eq(OrgEntity::getId, orgDTO.getId());
} else {
orgWrapper.eq(OrgEntity::getOrgId, orgDTO.getOrgId());
}
List<OrgEntity> orgEntities = this.list(orgWrapper);
OrgEntity dbOrgEntity = orgEntities.get(0);
if (orgDTO.getId() != null) {
remove = this.removeById(orgDTO.getId());
......@@ -203,6 +220,18 @@ public class OrgServiceImpl extends ServiceImpl<IOrgMapper, OrgEntity> implement
wrapper.eq(OrgEntity::getOrgId, orgDTO.getOrgId());
remove = this.remove(wrapper);
}
// 超级管理员
if (aboveSysAdminRole()) {
// 删除用户关系
LambdaQueryWrapper<UserOrgEntity> userOrgEntityLambdaQueryWrapper = new LambdaQueryWrapper<>();
userOrgEntityLambdaQueryWrapper.eq(UserOrgEntity::getOrgId, dbOrgEntity.getOrgId());
boolean userOrgRemoveRes = userOrgService.remove(userOrgEntityLambdaQueryWrapper);
// 删除设备关系
LambdaQueryWrapper<DeviceOrgEntity> deviceOrgEntityLambdaQueryWrapper = new LambdaQueryWrapper<>();
deviceOrgEntityLambdaQueryWrapper.eq(DeviceOrgEntity::getOrgId, dbOrgEntity.getOrgId());
boolean deviceOrgRemoveRes = deviceOrgService.remove(deviceOrgEntityLambdaQueryWrapper);
}
return remove;
}
......@@ -215,7 +244,7 @@ public class OrgServiceImpl extends ServiceImpl<IOrgMapper, OrgEntity> implement
if (!StringUtils.hasText(orgDTO.getBindCode())) {
throw new RuntimeException("bindCode is null");
}
if (!StringUtils.hasText(orgDTO.getOrgDesc()) && !StringUtils.hasText(orgDTO.getOrgId())) {
if (!StringUtils.hasText(orgDTO.getOrgName()) && !StringUtils.hasText(orgDTO.getOrgId())) {
throw new RuntimeException("org info is null");
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment