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