Commit 609f0f5bd9db03eecee0df23e33528fecc11450d

Authored by xp.Huang
1 parent 8d8a4f38

fix: 租户管理员编辑空指针问题

... ... @@ -302,27 +302,29 @@ public class SysUserServiceImpl extends AbstractBaseService<UserMapper, SysUserE
302 302 throw new TkDataValidationException(ErrorMessage.USERNAME_IS_IMMUTABLE.getMessage());
303 303 }
304 304
305   - boolean difference = false;
306   - //判断客户组织是否有变化
307   - List<String> newList = List.of(userDTO.getOrganizationIds());
308   - List<String> oldList = userOrganizationMappingService.getOrganizationIdsByUserId(userDTO.getId());
309   - if(newList.size()!=oldList.size()){
310   - difference = true;
311   - }
312   - if(!difference) {
313   - List<String> differenceList = newList.stream()
314   - .filter(element -> !oldList.contains(element))
315   - .collect(Collectors.toList());
316   - if (null != differenceList && !differenceList.isEmpty()) {
  305 + if(null != userDTO.getOrganizationIds()){
  306 + boolean difference = false;
  307 + //判断客户组织是否有变化
  308 + List<String> newList = List.of(userDTO.getOrganizationIds());
  309 + List<String> oldList = userOrganizationMappingService.getOrganizationIdsByUserId(userDTO.getId());
  310 + if(newList.size()!=oldList.size()){
317 311 difference = true;
318 312 }
319   - }
320   - //有变化则查询该客户是否分配设备 分配设备则不允许修改
321   - if(difference){
322   - User tbuser = tbUserService.findUserById(new TenantId(UUID.fromString(tenantId)), new UserId(UUID.fromString(user.getTbUser())));
323   - List<TkCustomerDeviceDTO> dtolist = tkCustomerDevice.getMappingByCustomerId(tbuser.getCustomerId().toString());
324   - if(null != dtolist&&!dtolist.isEmpty()){
325   - throw new TkDataValidationException(ErrorMessage.CUSTOMER_USER_UPDATE_ERROR.getMessage());
  313 + if(!difference) {
  314 + List<String> differenceList = newList.stream()
  315 + .filter(element -> !oldList.contains(element))
  316 + .collect(Collectors.toList());
  317 + if (null != differenceList && !differenceList.isEmpty()) {
  318 + difference = true;
  319 + }
  320 + }
  321 + //有变化则查询该客户是否分配设备 分配设备则不允许修改
  322 + if(difference){
  323 + User tbuser = tbUserService.findUserById(new TenantId(UUID.fromString(tenantId)), new UserId(UUID.fromString(user.getTbUser())));
  324 + List<TkCustomerDeviceDTO> dtolist = tkCustomerDevice.getMappingByCustomerId(tbuser.getCustomerId().toString());
  325 + if(null != dtolist&&!dtolist.isEmpty()){
  326 + throw new TkDataValidationException(ErrorMessage.CUSTOMER_USER_UPDATE_ERROR.getMessage());
  327 + }
326 328 }
327 329 }
328 330
... ...