Commit 8a132a620f3de9dd777ea90a0479473211f9c1d6

Authored by xp.Huang
2 parents 2e3350f2 42effaf3

Merge branch '20220310' into 'master'

20220310

See merge request huang/thingsboard3.3.2!62
... ... @@ -97,7 +97,7 @@ public class YtSceneLinkageController extends BaseController {
97 97 public void delete(@Validated({DeleteGroup.class}) @RequestBody DeleteDTO deleteDTO)
98 98 throws ThingsboardException {
99 99 sceneLinkageService.deleteSceneLinkage(
100   - deleteDTO.getIds(), getCurrentUser().getCurrentTenantId());
  100 + deleteDTO.getIds(), getCurrentUser().getCurrentTenantId(),getCurrentUser().getCurrentUserId());
101 101 }
102 102
103 103
... ...
... ... @@ -91,7 +91,18 @@ public class SceneLinkageServiceImpl extends AbstractBaseService<SceneLinkageMap
91 91 * @param ids 删除的ids
92 92 */
93 93 @Override
94   - public void deleteSceneLinkage(Set<String> ids, String tenantId) {
  94 + @Transactional
  95 + public void deleteSceneLinkage(Set<String> ids, String tenantId,String currentUserId) {
  96 + LambdaQueryWrapper<SceneLinkage> Wrapper =
  97 + new QueryWrapper<SceneLinkage>()
  98 + .lambda()
  99 + .eq(SceneLinkage::getTenantId, tenantId)
  100 + .eq(SceneLinkage::getCreator,currentUserId)
  101 + .in(SceneLinkage::getId, ids);
  102 + int result = sceneLinkageMapper.delete(Wrapper);
  103 + if(result != ids.size()){
  104 + throw new YtDataValidationException("存在非当前用户创建的场景联动");
  105 + }
95 106 // 删除场景,一并删除数据库触发器,执行条件,执行动作的数据
96 107 triggerMapper.delete(
97 108 new LambdaQueryWrapper<Trigger>()
... ... @@ -105,12 +116,6 @@ public class SceneLinkageServiceImpl extends AbstractBaseService<SceneLinkageMap
105 116 new LambdaQueryWrapper<DoAction>()
106 117 .eq(DoAction::getTenantId, tenantId)
107 118 .in(DoAction::getSceneLinkageId, ids));
108   - LambdaQueryWrapper<SceneLinkage> Wrapper =
109   - new QueryWrapper<SceneLinkage>()
110   - .lambda()
111   - .eq(SceneLinkage::getTenantId, tenantId)
112   - .in(SceneLinkage::getId, ids);
113   - sceneLinkageMapper.delete(Wrapper);
114 119 }
115 120
116 121 /**
... ...
... ... @@ -73,20 +73,7 @@ public class UserOrganizationMappingServiceImpl implements UserOrganizationMappi
73 73 batchInsert(userId, organizationIds);
74 74 }
75 75
76   - @Override
77   - public List<String> getUserIdsByOrganizationId(String organizationId) {
78   - if (StringUtils.isAllEmpty(organizationId)) {
79   - throw new YtDataValidationException(ErrorMessage.INTERNAL_ERROR.getMessage());
80   - }
81   - return userOrganizationMappingMapper
82   - .selectList(
83   - new QueryWrapper<UserOrganizationMapping>()
84   - .lambda()
85   - .eq(UserOrganizationMapping::getOrganizationId, organizationId))
86   - .stream()
87   - .map(UserOrganizationMapping::getUserId)
88   - .collect(Collectors.toList());
89   - }
  76 +
90 77
91 78 @Override
92 79 public List<String> getOrganizationIdsByUserId(String userId) {
... ...
... ... @@ -521,7 +521,7 @@ public class YtUserServiceImpl extends AbstractBaseService<UserMapper, User>
521 521 if (group == null || !group.getTenantId().equals(tenantId)) {
522 522 return Optional.empty();
523 523 }
524   - List<String> userIds = userOrganizationMappingService.getUserIdsByOrganizationId(group.getId());
  524 + List<String> userIds = userOrganizationMappingService.getUserIdByOrganizationIds(group.getId());
525 525 List<User> users = baseMapper.selectBatchIds(userIds);
526 526 return Optional.ofNullable(ReflectUtils.sourceToTarget(users, UserDTO.class));
527 527 }
... ... @@ -590,7 +590,7 @@ public class YtUserServiceImpl extends AbstractBaseService<UserMapper, User>
590 590 }
591 591 if (isTenantAdmin) {
592 592 List<String> userList =
593   - userOrganizationMappingService.getUserIdsByOrganizationId(organizationId);
  593 + userOrganizationMappingService.getUserIdByOrganizationIds(tenantId,organizationId);
594 594 if (null != userList && userList.size() > FastIotConstants.MagicNumber.ZERO) {
595 595 return baseMapper.getMyCustomers(tenantId, EntityId.NULL_UUID.toString(), userList);
596 596 }
... ...
... ... @@ -31,7 +31,7 @@ public interface SceneLinkageService extends BaseService<SceneLinkage>{
31 31 * @param ids
32 32 * @return
33 33 */
34   - void deleteSceneLinkage(Set<String> ids,String tenantId);
  34 + void deleteSceneLinkage(Set<String> ids,String tenantId,String currentUserId);
35 35
36 36 /**
37 37 * 修改场景联动
... ...
... ... @@ -22,13 +22,7 @@ public interface UserOrganizationMappingService {
22 22 void addOrUpdateUserOrganizationMapping(
23 23 String userId, List<String> organizationIds, boolean isUpdate);
24 24
25   - /**
26   - * 根据组织ID查询其用户ID列表
27   - *
28   - * @param organizationId 组织ID
29   - * @return 用户ID集合
30   - */
31   - List<String> getUserIdsByOrganizationId(String organizationId);
  25 +
32 26
33 27 /**
34 28 * 根据用户ID查询其所拥有的组织ID列表
... ...