瀏覽代碼

首页查询修改

chenhongyan1989 11 月之前
父節點
當前提交
c2b5598d5b

+ 2 - 2
energy-manage-service/src/main/java/com/energy/manage/service/controller/homepage/HomePageController.java

@@ -30,7 +30,7 @@ public class HomePageController extends BaseServiceController {
     @GetMapping("/queryStatistics")
     public ResultResp queryStatistics(@RequestParam("codeNumber") String codeNumber,
                             @RequestParam("codeType") String codeType){
-        return success(homePageService.queryStatistics(codeNumber,codeType));
+        return success(homePageService.queryStatistics(getRoleId(), codeNumber, codeType));
     }
 
 
@@ -39,7 +39,7 @@ public class HomePageController extends BaseServiceController {
     @GetMapping("/queryOptionRecords")
     public ResultResp queryOptionRecords(@RequestParam("codeNumber") String codeNumber,
                             @RequestParam("codeType") String codeType){
-        return success(homePageService.queryOptionRecords(codeNumber,codeType));
+        return success(homePageService.queryOptionRecords(getRoleId(), codeNumber, codeType));
     }
 
 

+ 2 - 2
energy-manage-service/src/main/java/com/energy/manage/service/service/homepage/HomePageService.java

@@ -17,7 +17,7 @@ public interface HomePageService {
      * @param codeNumber
      * @param codeType
      */
-    HomePageVo queryStatistics(String codeNumber, String codeType);
+    HomePageVo queryStatistics(Integer roleId, String codeNumber, String codeType);
 
 
     /**
@@ -26,7 +26,7 @@ public interface HomePageService {
      * @param codeType
      * @return
      */
-    List<AnalysisOptionRecordsVo> queryOptionRecords(String codeNumber, String codeType);
+    List<AnalysisOptionRecordsVo> queryOptionRecords(Integer roleId, String codeNumber, String codeType);
 
 
 }

+ 22 - 4
energy-manage-service/src/main/java/com/energy/manage/service/service/homepage/impl/HomePageServiceImpl.java

@@ -5,9 +5,11 @@ import com.energy.manage.common.po.windrelation.WindRelationPO;
 import com.energy.manage.service.domain.vo.analysis.AnalysisOptionRecordsVo;
 import com.energy.manage.service.domain.vo.analysis.AnalysisResultVo;
 import com.energy.manage.service.domain.vo.homepage.HomePageVo;
+import com.energy.manage.service.domain.vo.system.SysOrganizationAuthVo;
 import com.energy.manage.service.domain.vo.windexceptioncount.WindExceptionCountVo;
 import com.energy.manage.service.mappers.analysis.AnalysisOptionRecordsMapper;
 import com.energy.manage.service.mappers.analysis.AnalysisResultMapper;
+import com.energy.manage.service.mappers.system.SysOrganizationAuthMapper;
 import com.energy.manage.service.mappers.windexceptioncount.WindExceptionCountMapper;
 import com.energy.manage.service.mappers.windrelation.WindRelationMapper;
 import com.energy.manage.service.service.homepage.HomePageService;
@@ -43,6 +45,9 @@ public class HomePageServiceImpl implements HomePageService {
     @Autowired
     private AnalysisOptionRecordsMapper analysisOptionRecordsMapper;
 
+    @Autowired
+    private SysOrganizationAuthMapper authMapper;
+
 
     /**
      * 驾驶舱首页查询
@@ -50,14 +55,14 @@ public class HomePageServiceImpl implements HomePageService {
      * @param codeType
      */
     @Override
-    public HomePageVo queryStatistics(String codeNumber, String codeType) {
+    public HomePageVo queryStatistics(Integer roleId,String codeNumber, String codeType) {
         //返回实体对象
         HomePageVo homePageVo = new HomePageVo();
         //风场
         List<String> fieldCodes = new ArrayList<>();
         //根据类型判断获取风场code
         if(codeType.equals(TypeRelationEnum.COMPANY_NUMBER.getCode())){
-            getFieldCodeList(Arrays.asList(codeNumber), fieldCodes);
+            filterAuthFieldCode(roleId,Arrays.asList(codeNumber), fieldCodes);
         }else{
             fieldCodes.add(codeNumber);
         }
@@ -79,13 +84,13 @@ public class HomePageServiceImpl implements HomePageService {
      * @return
      */
     @Override
-    public List<AnalysisOptionRecordsVo> queryOptionRecords(String codeNumber, String codeType){
+    public List<AnalysisOptionRecordsVo> queryOptionRecords(Integer roleId, String codeNumber, String codeType){
         List<AnalysisOptionRecordsVo> voList = new ArrayList<>();
         //风场
         List<String> fieldCodes = new ArrayList<>();
         //根据类型判断获取风场code
         if(codeType.equals(TypeRelationEnum.COMPANY_NUMBER.getCode())){
-            getFieldCodeList(Arrays.asList(codeNumber), fieldCodes);
+            filterAuthFieldCode(roleId,Arrays.asList(codeNumber), fieldCodes);
         }else{
             fieldCodes.add(codeNumber);
         }
@@ -97,6 +102,19 @@ public class HomePageServiceImpl implements HomePageService {
     }
 
     /**
+     * 根据角色权限过滤fieldCode
+     * @param roleId
+     * @param companyCodes
+     * @param fieldCodes
+     */
+    private void filterAuthFieldCode(Integer roleId, List<String> companyCodes, List<String> fieldCodes){
+        getFieldCodeList(companyCodes, fieldCodes);
+        List<SysOrganizationAuthVo> vos = authMapper.selectByRoleId(roleId);
+        List<String> codes = vos.stream().map(SysOrganizationAuthVo::getCodeNumber).collect(Collectors.toList());
+        fieldCodes.retainAll(codes);
+    }
+
+    /**
      * 递归获取风场code
      * @param companyCodes
      * @param fieldCodes