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