Commit d796edbc3b6e0f574f236d6bd1caa7f6dbddd053

Authored by lijianfa_14810364212
2 parents cdff3d22 aaf07071

Merge remote-tracking branch 'origin/i18n' into i18n

@@ -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