Commit a6d21805178b5f209db5a8b719ceea8b79b01cac
1 parent
378c34f1
feat:OpenApi应用新增租户权限,涉及api新增openapiUser权限过滤
Showing
14 changed files
with
53 additions
and
57 deletions
... | ... | @@ -43,12 +43,8 @@ public class HomePageController extends BaseController { |
43 | 43 | public HomeDeviceInfoDTO getOpenApiDeviceInfo() |
44 | 44 | throws ThingsboardException, ExecutionException, InterruptedException { |
45 | 45 | return homePageService.getOpenApiDeviceInfo( |
46 | - getCurrentUser().isPtSysadmin(), | |
47 | - getCurrentUser().isPtAdmin(), | |
48 | - getCurrentUser().isPtTenantAdmin(), | |
49 | - getCurrentUser().isPtCommonTenant(), | |
50 | 46 | getCurrentUser().getCurrentTenantId(), |
51 | - getCurrentUser().getCurrentUserId(), getCurrentUser().getCustomerId()==null?null:getCurrentUser().getCustomerId().getId().toString()); | |
47 | + getCurrentUser().getCurrentUserId()); | |
52 | 48 | } |
53 | 49 | |
54 | 50 | |
... | ... | @@ -57,12 +53,8 @@ public class HomePageController extends BaseController { |
57 | 53 | public BaseHomePageTop getOpenApiAlarmInfo() |
58 | 54 | throws ThingsboardException, ExecutionException, InterruptedException { |
59 | 55 | return homePageService.getOpenApiAlarmInfo( |
60 | - getCurrentUser().isPtSysadmin(), | |
61 | - getCurrentUser().isPtAdmin(), | |
62 | - getCurrentUser().isPtTenantAdmin(), | |
63 | - getCurrentUser().isPtCommonTenant(), | |
64 | 56 | getCurrentUser().getCurrentTenantId(), |
65 | - getCurrentUser().getCurrentUserId(), getCurrentUser().getCustomerId()==null?null:getCurrentUser().getCustomerId().getId().toString()); | |
57 | + getCurrentUser().getCurrentUserId()); | |
66 | 58 | } |
67 | 59 | @GetMapping("left/top") |
68 | 60 | @ApiOperation(value = "获取左侧顶部信息") | ... | ... |
... | ... | @@ -118,9 +118,9 @@ public class ThingsModelController extends BaseController { |
118 | 118 | @ApiOperation("修改物模型排序接口") |
119 | 119 | @PreAuthorize("hasAnyAuthority('TENANT_ADMIN')") |
120 | 120 | public ResponseEntity<Boolean> updateSort( |
121 | - @RequestParam(value = "sortType: up向上,down向下,topUp置顶,bottomUp置底" ) String sortType, | |
121 | + @RequestParam(value = "sortType" ) String sortType, | |
122 | 122 | @RequestParam(value = "id") String id, |
123 | - @RequestParam (value = "isCategory 是否品类") Boolean isCategory) | |
123 | + @RequestParam (value = "isCategory") Boolean isCategory) | |
124 | 124 | throws ThingsboardException { |
125 | 125 | return ResponseEntity.ok(thingsModelService.updateSort(id,sortType,isCategory)); |
126 | 126 | } | ... | ... |
... | ... | @@ -74,7 +74,7 @@ public class TkAlarmInfoController extends BaseController { |
74 | 74 | customerId = getCurrentUser().getCustomerId().getId(); |
75 | 75 | } |
76 | 76 | List<String> orgIds = null; |
77 | - if(getCurrentUser().isPtCommonTenant()){ | |
77 | + if(getCurrentUser().isPtCommonTenant()||getCurrentUser().isOpenApiUser()){ | |
78 | 78 | orgIds = commonTenantOrganizationAllIds(); |
79 | 79 | } |
80 | 80 | return alarmInfoService.alarmPage( | ... | ... |
... | ... | @@ -263,8 +263,8 @@ public class TkDeviceController extends BaseController { |
263 | 263 | if (getCurrentUser().isCustomerUser()) { |
264 | 264 | queryMap.put("customerId", getCurrentUser().getCustomerId().getId()); |
265 | 265 | } |
266 | - //如果当前用户是普通租户 | |
267 | - if (getCurrentUser().isPtCommonTenant()) { | |
266 | + //如果当前用户是普通租户或者openapi用戶 | |
267 | + if (getCurrentUser().isPtCommonTenant()||getCurrentUser().isOpenApiUser()) { | |
268 | 268 | List<String> organizationIds =commonTenantOrganizationAllIds(); |
269 | 269 | if(null!=organizationIds&&organizationIds.size()>0){ |
270 | 270 | queryMap.put("organizationIds", organizationIds); | ... | ... |
... | ... | @@ -68,6 +68,7 @@ public class TkOrganizationController extends BaseController { |
68 | 68 | getCurrentUser().isPtTenantAdmin(), |
69 | 69 | getCurrentUser().isCustomerUser(), |
70 | 70 | getCurrentUser().isPtCommonTenant(), |
71 | + getCurrentUser().isOpenApiUser(), | |
71 | 72 | getCurrentUser().getCurrentTenantId(), |
72 | 73 | getCurrentUser().getCurrentUserId(),organizationId); |
73 | 74 | return ResponseEntity.ok(result); | ... | ... |
... | ... | @@ -14,18 +14,17 @@ import org.thingsboard.server.common.data.StringUtils; |
14 | 14 | import org.thingsboard.server.common.data.exception.ThingsboardException; |
15 | 15 | import org.thingsboard.server.common.data.yunteng.core.exception.TkDataValidationException; |
16 | 16 | import org.thingsboard.server.common.data.yunteng.core.message.ErrorMessage; |
17 | -import org.thingsboard.server.common.data.yunteng.dto.ApplicationDTO; | |
18 | -import org.thingsboard.server.common.data.yunteng.dto.OpenApiContrlooerDTO; | |
19 | -import org.thingsboard.server.common.data.yunteng.dto.OpenApiDTO; | |
20 | -import org.thingsboard.server.common.data.yunteng.dto.UserDTO; | |
17 | +import org.thingsboard.server.common.data.yunteng.dto.*; | |
21 | 18 | import org.thingsboard.server.common.data.yunteng.utils.i18n.MessageUtils; |
22 | 19 | import org.thingsboard.server.controller.BaseController; |
23 | 20 | import org.thingsboard.server.controller.yunteng.TkThirdPlatformController; |
24 | 21 | import org.thingsboard.server.controller.yunteng.TkUserController; |
22 | +import org.thingsboard.server.dao.exception.DataValidationException; | |
25 | 23 | import org.thingsboard.server.dao.yunteng.entities.TkOpenApiRecordEntity; |
26 | 24 | import org.thingsboard.server.dao.yunteng.service.ApplicationService; |
27 | 25 | import org.thingsboard.server.dao.yunteng.service.OpenApiRecordService; |
28 | 26 | import org.thingsboard.server.dao.yunteng.service.OpenApiService; |
27 | +import org.thingsboard.server.dao.yunteng.service.TkOrganizationService; | |
29 | 28 | import org.thingsboard.server.queue.util.TbCoreComponent; |
30 | 29 | import org.thingsboard.server.service.security.auth.yunteng.TkLoginResponse; |
31 | 30 | import org.thingsboard.server.utils.MiscUtils; |
... | ... | @@ -34,6 +33,7 @@ import javax.servlet.http.HttpServletRequest; |
34 | 33 | import java.time.LocalDateTime; |
35 | 34 | import java.util.List; |
36 | 35 | import java.util.Map; |
36 | +import java.util.stream.Collectors; | |
37 | 37 | |
38 | 38 | @Api(tags = "OpenApi接口") |
39 | 39 | @RestController |
... | ... | @@ -49,6 +49,7 @@ public class OpenApiController extends BaseController { |
49 | 49 | private final RestTemplate restTemplate = new RestTemplate(); |
50 | 50 | private final OpenApiService openApiService; |
51 | 51 | private final OpenApiRecordService openApiRecordService; |
52 | + private final TkOrganizationService tKOrganizationService; | |
52 | 53 | |
53 | 54 | |
54 | 55 | @GetMapping("/getToken") |
... | ... | @@ -59,6 +60,8 @@ public class OpenApiController extends BaseController { |
59 | 60 | //如果第一次获取token则新建用户并且返回token |
60 | 61 | if(StringUtils.isEmpty(app.getUserId())){ |
61 | 62 | UserDTO userDTO = new UserDTO().newOpenApiUser(app.getTenantId(),app.getKey()); |
63 | + List<String> OrgIdS= tKOrganizationService.organizationAllIds(app.getTenantId(),app.getOrganizationId()); | |
64 | + userDTO.setOrganizationIds(OrgIdS.toArray(new String[0])); | |
62 | 65 | tkUserController.saveTenant(userDTO,true); |
63 | 66 | userId =userDTO.getId(); |
64 | 67 | app.setUserId(userId); |
... | ... | @@ -84,8 +87,8 @@ public class OpenApiController extends BaseController { |
84 | 87 | ApplicationDTO appDto = applicationService.getDtoByUserId(getCurrentUser().getCurrentUserId()); |
85 | 88 | //记录日志 |
86 | 89 | setRecord(api,appDto,record); |
87 | - if (!appDto.getApiList().contains(api.getId())) { | |
88 | - throw new TkDataValidationException(String.format(MessageUtils.message(ErrorMessage. | |
90 | + if (null==appDto.getApiList()||!appDto.getApiList().contains(api.getId())) { | |
91 | + throw new DataValidationException(String.format(MessageUtils.message(ErrorMessage. | |
89 | 92 | NOT_HAVE_PERMISSION.getI18nCode()))); |
90 | 93 | } |
91 | 94 | // 构建URL | ... | ... |
... | ... | @@ -50,6 +50,7 @@ public class SecurityUser extends User { |
50 | 50 | @Getter @Setter private boolean ptTenantAdmin = false; |
51 | 51 | @Getter @Setter private boolean ptAdmin = false; |
52 | 52 | @Getter @Setter private boolean ptCommonTenant = false; |
53 | + @Getter @Setter private boolean openApiUser = false; | |
53 | 54 | @Getter @Setter private Set<String> roles; |
54 | 55 | @Getter @Setter private String platformUserName; |
55 | 56 | |
... | ... | @@ -87,9 +88,12 @@ public class SecurityUser extends User { |
87 | 88 | this.ptAdmin = |
88 | 89 | this.roles.stream() |
89 | 90 | .anyMatch(role -> role.equals(RoleEnum.PLATFORM_ADMIN.name())); |
90 | - this.ptCommonTenant = | |
91 | + this.ptCommonTenant = | |
91 | 92 | this.roles.stream().anyMatch(role -> role.equals(RoleEnum.TENANT_ADMIN.name())) |
92 | 93 | &user.getUserDetailsDTO().getLevel()== FastIotConstants.MagicNumber.FOUR; |
94 | + this.openApiUser = | |
95 | + this.roles.stream().anyMatch(role -> role.equals(RoleEnum.OPENAPI_USER.name())) | |
96 | + &user.getUserDetailsDTO().getLevel()== FastIotConstants.MagicNumber.FIVE; | |
93 | 97 | return roleDTOS; |
94 | 98 | }); |
95 | 99 | } | ... | ... |
... | ... | @@ -66,6 +66,7 @@ public class JwtTokenFactory { |
66 | 66 | private static final String CURRENT_TENANT_ID = "currentTenantId"; |
67 | 67 | private static final String PLATFORM_USER_NAME = "platformUserName"; |
68 | 68 | private static final String IS_COMMON_TENANT = "isCommonTenant"; |
69 | + private static final String IS_OPENAPI_USER = "isOpenApiUser"; | |
69 | 70 | |
70 | 71 | private final JwtSettingsService jwtSettingsService; |
71 | 72 | |
... | ... | @@ -86,6 +87,7 @@ public class JwtTokenFactory { |
86 | 87 | .claim(ENABLED, securityUser.isEnabled()) |
87 | 88 | //thingskit |
88 | 89 | .claim(IS_COMMON_TENANT,securityUser.isPtCommonTenant()) |
90 | + .claim(IS_OPENAPI_USER,securityUser.isOpenApiUser()) | |
89 | 91 | .claim(CURRENT_USER_ID,securityUser.getCurrentUserId()) |
90 | 92 | .claim(PLATFORM_USER_NAME,securityUser.getPlatformUserName()) |
91 | 93 | .claim(ROLE,securityUser.getRoles()) |
... | ... | @@ -126,6 +128,7 @@ public class JwtTokenFactory { |
126 | 128 | securityUser.setPtTenantAdmin(securityUser.getRoles().stream().anyMatch(role -> role.equals(RoleEnum.TENANT_ADMIN.name()))&!isCommonTenant); |
127 | 129 | securityUser.setPtAdmin(securityUser.getRoles().stream().anyMatch(role -> role.equals(RoleEnum.PLATFORM_ADMIN.name()))); |
128 | 130 | securityUser.setPtCommonTenant(isCommonTenant); |
131 | + securityUser.setOpenApiUser(securityUser.getRoles().stream().anyMatch(role -> role.equals(RoleEnum.OPENAPI_USER.name()))); | |
129 | 132 | } |
130 | 133 | securityUser.setCurrentUserId(claims.get(CURRENT_USER_ID, String.class)); |
131 | 134 | securityUser.setPlatformUserName(claims.get(PLATFORM_USER_NAME,String.class)); | ... | ... |
... | ... | @@ -7,11 +7,11 @@ import lombok.RequiredArgsConstructor; |
7 | 7 | import lombok.extern.slf4j.Slf4j; |
8 | 8 | import org.springframework.stereotype.Service; |
9 | 9 | import org.springframework.transaction.annotation.Transactional; |
10 | -import org.thingsboard.server.common.data.yunteng.core.exception.TkDataValidationException; | |
11 | 10 | import org.thingsboard.server.common.data.yunteng.core.message.ErrorMessage; |
12 | 11 | import org.thingsboard.server.common.data.yunteng.dto.ApplicationDTO; |
13 | 12 | import org.thingsboard.server.common.data.yunteng.utils.i18n.MessageUtils; |
14 | 13 | import org.thingsboard.server.common.data.yunteng.utils.tools.TkPageData; |
14 | +import org.thingsboard.server.dao.exception.DataValidationException; | |
15 | 15 | import org.thingsboard.server.dao.yunteng.entities.TkApplicationApiEntity; |
16 | 16 | import org.thingsboard.server.dao.yunteng.entities.TkApplicationEntity; |
17 | 17 | import org.thingsboard.server.dao.yunteng.entities.TkOrganizationEntity; |
... | ... | @@ -131,7 +131,7 @@ public class ApplicationServiceImpl extends AbstractBaseService<ApplicationMappe |
131 | 131 | .eq(TkApplicationEntity::getKey, key) |
132 | 132 | .eq(TkApplicationEntity::getSecret,secret)); |
133 | 133 | if(null == entity){ |
134 | - throw new TkDataValidationException(String.format(MessageUtils.message(ErrorMessage. | |
134 | + throw new DataValidationException(String.format(MessageUtils.message(ErrorMessage. | |
135 | 135 | OPENAPI_APP_ISNULL.getI18nCode()))); |
136 | 136 | } |
137 | 137 | ApplicationDTO dto = new ApplicationDTO(); |
... | ... | @@ -145,7 +145,7 @@ public class ApplicationServiceImpl extends AbstractBaseService<ApplicationMappe |
145 | 145 | new LambdaQueryWrapper<TkApplicationEntity>() |
146 | 146 | .eq(TkApplicationEntity::getUserId, userId)); |
147 | 147 | if(null == entity){ |
148 | - throw new TkDataValidationException(String.format(MessageUtils.message(ErrorMessage. | |
148 | + throw new DataValidationException(String.format(MessageUtils.message(ErrorMessage. | |
149 | 149 | OPENAPI_APP_ISNULL.getI18nCode()))); |
150 | 150 | } |
151 | 151 | ApplicationDTO dto = new ApplicationDTO(); | ... | ... |
... | ... | @@ -7,15 +7,14 @@ import lombok.RequiredArgsConstructor; |
7 | 7 | import lombok.extern.slf4j.Slf4j; |
8 | 8 | import org.springframework.stereotype.Service; |
9 | 9 | import org.springframework.transaction.annotation.Transactional; |
10 | -import org.thingsboard.server.common.data.yunteng.core.exception.TkDataValidationException; | |
11 | 10 | import org.thingsboard.server.common.data.yunteng.core.message.ErrorMessage; |
12 | -import org.thingsboard.server.common.data.yunteng.dto.DeviceDTO; | |
13 | 11 | import org.thingsboard.server.common.data.yunteng.dto.OpenApiContrlooerDTO; |
14 | 12 | import org.thingsboard.server.common.data.yunteng.dto.OpenApiDTO; |
15 | 13 | import org.thingsboard.server.common.data.yunteng.dto.ApiMenuDTO; |
16 | 14 | import org.thingsboard.server.common.data.yunteng.utils.CopyUtils; |
17 | 15 | import org.thingsboard.server.common.data.yunteng.utils.i18n.MessageUtils; |
18 | 16 | import org.thingsboard.server.common.data.yunteng.utils.tools.TkPageData; |
17 | +import org.thingsboard.server.dao.exception.DataValidationException; | |
19 | 18 | import org.thingsboard.server.dao.yunteng.entities.TkOpenApiEntity; |
20 | 19 | import org.thingsboard.server.dao.yunteng.mapper.OpenApiMapper; |
21 | 20 | import org.thingsboard.server.dao.yunteng.service.AbstractBaseService; |
... | ... | @@ -35,7 +34,7 @@ public class OpenApiImpl extends AbstractBaseService<OpenApiMapper, TkOpenApiEnt |
35 | 34 | public OpenApiDTO getDto(String id) { |
36 | 35 | TkOpenApiEntity entity = baseMapper.selectById(id); |
37 | 36 | if(null == entity){ |
38 | - throw new TkDataValidationException(String.format(MessageUtils.message(ErrorMessage. | |
37 | + throw new DataValidationException(String.format(MessageUtils.message(ErrorMessage. | |
39 | 38 | OPENAPI_API_ISNULL.getI18nCode()))); |
40 | 39 | } |
41 | 40 | OpenApiDTO dto = new OpenApiDTO(); |
... | ... | @@ -82,7 +81,7 @@ public class OpenApiImpl extends AbstractBaseService<OpenApiMapper, TkOpenApiEnt |
82 | 81 | .in(TkOpenApiEntity::getId,apiIds)); |
83 | 82 | list.stream().forEach(entity ->{ |
84 | 83 | if(!entity.getTenantId().equals(tenantId)){ |
85 | - throw new TkDataValidationException(String.format(MessageUtils.message(ErrorMessage. | |
84 | + throw new DataValidationException(String.format(MessageUtils.message(ErrorMessage. | |
86 | 85 | NOT_HAVE_PERMISSION.getI18nCode()))); |
87 | 86 | } |
88 | 87 | }); |
... | ... | @@ -94,7 +93,7 @@ public class OpenApiImpl extends AbstractBaseService<OpenApiMapper, TkOpenApiEnt |
94 | 93 | public OpenApiDTO update(OpenApiDTO dto, String tenantId) { |
95 | 94 | TkOpenApiEntity openApi = baseMapper.selectById(dto.getId()); |
96 | 95 | if(!openApi.getTenantId().equals(tenantId)){ |
97 | - throw new TkDataValidationException(String.format(MessageUtils.message(ErrorMessage. | |
96 | + throw new DataValidationException(String.format(MessageUtils.message(ErrorMessage. | |
98 | 97 | NOT_HAVE_PERMISSION.getI18nCode()))); |
99 | 98 | } |
100 | 99 | dto.copyToEntity(openApi); | ... | ... |
... | ... | @@ -185,11 +185,12 @@ public class TkHomePageServiceImpl implements HomePageService { |
185 | 185 | } |
186 | 186 | |
187 | 187 | @Override |
188 | - public HomeDeviceInfoDTO getOpenApiDeviceInfo(boolean isPtSysAdmin, boolean isPtAdmin, boolean isTenantAdmin, | |
189 | - boolean isPtCommonTenant, String tenantId, String currentUserId, String customerId){ | |
188 | + public HomeDeviceInfoDTO getOpenApiDeviceInfo( String tenantId, String currentUserId){ | |
190 | 189 | long zero = FastIotConstants.MagicNumber.ZERO; |
191 | 190 | HomeDeviceInfoDTO homeDeviceInfo = new HomeDeviceInfoDTO(zero); |
192 | 191 | Map<String, Object> queryMap = new HashMap<>(); |
192 | + List<String> orgIds = sysUserOrganizationMappingServiceImpl.getOrganizationIdsByUserId(currentUserId); | |
193 | + queryMap.put("organizationIds",orgIds); | |
193 | 194 | queryMap.put("tenantId", UUID.fromString(tenantId)); |
194 | 195 | List<TkDeviceEntity> deviceList = deviceMapper.findDevices(queryMap); |
195 | 196 | if (null != deviceList) { |
... | ... | @@ -199,17 +200,20 @@ public class TkHomePageServiceImpl implements HomePageService { |
199 | 200 | } |
200 | 201 | |
201 | 202 | @Override |
202 | - public BaseHomePageTop getOpenApiAlarmInfo(boolean isPtSysAdmin, boolean isPtAdmin, boolean isTenantAdmin, | |
203 | - boolean isPtCommonTenant, String tenantId, String currentUserId, | |
204 | - String customerId) throws ExecutionException, InterruptedException { | |
205 | - Map<String, Object> queryMap = new HashMap<>(); | |
206 | - queryMap.put("tenantId", UUID.fromString(tenantId)); | |
203 | + public BaseHomePageTop getOpenApiAlarmInfo( String tenantId, String currentUserId) throws ExecutionException, InterruptedException { | |
204 | + List<BaseHomePageTop> alarmList; | |
207 | 205 | long zero = FastIotConstants.MagicNumber.ZERO; |
208 | - TenantId currentTenantId = TenantId.fromUUID(UUID.fromString(tenantId)); | |
209 | - HomePageTopMessage messageInfo = new HomePageTopMessage(zero); | |
210 | 206 | BaseHomePageTop alarm = new BaseHomePageTop(zero); |
211 | - ApiUsageState apiUsageState = apiUsageStateService.findTenantApiUsageState(currentTenantId); | |
212 | - setAllAlarmAndMessageInfo(currentTenantId, apiUsageState.getId(), messageInfo, alarm); | |
207 | + List<String> orgIds = sysUserOrganizationMappingServiceImpl.getOrganizationIdsByUserId(currentUserId); | |
208 | + LocalDateTime todayBegin = LocalDateTime.of(LocalDateTime.now().toLocalDate(), LocalTime.MIN); | |
209 | + long startTs = todayBegin.toInstant(ZoneOffset.of("+8")).toEpochMilli(); | |
210 | + alarmList = deviceMapper.findDeviceAlarmInfoByCustomer(startTs, null,orgIds); | |
211 | + if (alarmList.size() > zero) { | |
212 | + BaseHomePageTop baseHomePageTop = alarmList.get(0); | |
213 | + alarm.setSumCount(baseHomePageTop.getSumCount()); | |
214 | + alarm.setTodayAdd( | |
215 | + baseHomePageTop.getTodayAdd() == null ? zero : baseHomePageTop.getTodayAdd()); | |
216 | + } | |
213 | 217 | return alarm; |
214 | 218 | |
215 | 219 | } | ... | ... |
... | ... | @@ -73,7 +73,7 @@ public class TkOrganizationServiceImpl extends AbstractBaseService<OrganizationM |
73 | 73 | if (isCustomerOrPlatform) { |
74 | 74 | if (StringUtils.isEmpty(parentId)) { |
75 | 75 | // 获取当前用户的最顶级组织ID的父ID |
76 | - List<OrganizationDTO> myOrganizations = getMyOrganizations(false, false, false,false,tenantId, userId,null); | |
76 | + List<OrganizationDTO> myOrganizations = getMyOrganizations(false, false, false,false,false,tenantId, userId,null); | |
77 | 77 | if (null != myOrganizations && myOrganizations.size() > 0) { |
78 | 78 | OrganizationDTO organizationDto = myOrganizations.get(0); |
79 | 79 | organization.setParentId(organizationDto.getParentId()); |
... | ... | @@ -291,14 +291,14 @@ public class TkOrganizationServiceImpl extends AbstractBaseService<OrganizationM |
291 | 291 | |
292 | 292 | @Override |
293 | 293 | public List<OrganizationDTO> getMyOrganizations( |
294 | - boolean isPtSysAdmin, boolean isPtTenantAdmin,boolean isCustomer, boolean isPtCommonTenant, String tenantId, String currentUserId,String organizationId) { | |
294 | + boolean isPtSysAdmin, boolean isPtTenantAdmin,boolean isCustomer, boolean isPtCommonTenant,boolean isOpenApiUser, String tenantId, String currentUserId,String organizationId) { | |
295 | 295 | //如果传入上级组织id直接查询该组织及以下 |
296 | 296 | if(null != organizationId){ |
297 | 297 | List<String> organizationIds = StringUtils.isEmpty(organizationId)?null:List.of(organizationId); |
298 | 298 | return findOrganizationTree(tenantId,organizationIds); |
299 | 299 | } |
300 | 300 | // 如果是租户管理员,则返回该租户id下的所有组织 |
301 | - if (isPtTenantAdmin || isPtSysAdmin || (!isCustomer && !isPtCommonTenant)) { | |
301 | + if (isPtTenantAdmin || isPtSysAdmin || (!isCustomer && !isPtCommonTenant&&!isOpenApiUser)) { | |
302 | 302 | return findOrganizationTree(tenantId,null); |
303 | 303 | } else { |
304 | 304 | // 返回当前用户组织id集 | ... | ... |
... | ... | @@ -37,23 +37,13 @@ public interface HomePageService { |
37 | 37 | throws ExecutionException, InterruptedException; |
38 | 38 | |
39 | 39 | HomeDeviceInfoDTO getOpenApiDeviceInfo( |
40 | - boolean isPtSysAdmin, | |
41 | - boolean isPtAdmin, | |
42 | - boolean isTenantAdmin, | |
43 | - boolean isPtCommonTenant, | |
44 | 40 | String tenantId, |
45 | - String currentUserId, | |
46 | - String customerId) | |
41 | + String currentUserId) | |
47 | 42 | throws ExecutionException, InterruptedException; |
48 | 43 | |
49 | 44 | BaseHomePageTop getOpenApiAlarmInfo( |
50 | - boolean isPtSysAdmin, | |
51 | - boolean isPtAdmin, | |
52 | - boolean isTenantAdmin, | |
53 | - boolean isPtCommonTenant, | |
54 | 45 | String tenantId, |
55 | - String currentUserId, | |
56 | - String customerId) | |
46 | + String currentUserId) | |
57 | 47 | throws ExecutionException, InterruptedException; |
58 | 48 | |
59 | 49 | /** | ... | ... |
... | ... | @@ -14,7 +14,7 @@ public interface TkOrganizationService extends BaseService<TkOrganizationEntity> |
14 | 14 | boolean deleteOrganizations(DeleteDTO deleteDTO,String tenantId); |
15 | 15 | |
16 | 16 | List<OrganizationDTO> getMyOrganizations( |
17 | - boolean isPtSysAdmin,boolean isPtTenantAdmin,boolean isCustomer, boolean isPtCommonTenant,String tenantId, String currentUserId,String organizationId); | |
17 | + boolean isPtSysAdmin,boolean isPtTenantAdmin,boolean isCustomer, boolean isPtCommonTenant,boolean isOpenApiUser,String tenantId, String currentUserId,String organizationId); | |
18 | 18 | |
19 | 19 | OrganizationDTO updateOrganization(OrganizationDTO organizationDTO, String tenantId,boolean isCustomerOrPlatform,String userId); |
20 | 20 | ... | ... |