Browse Source

获取环境数据逻辑调整、将数据录入限制进行调整

wangchenghong 4 years ago
parent
commit
e615f9ce1f

+ 9 - 4
src/main/java/com/persagy/apm/energy/report/environment/service/impl/IEnvironmentWebServiceImpl.java

@@ -10,7 +10,9 @@ import com.persagy.apm.energy.report.environment.model.dto.QueryEnvListByParamDT
 import com.persagy.apm.energy.report.environment.model.vo.EnvAvgRateVO;
 import com.persagy.apm.energy.report.environment.service.IEnvironmentWebService;
 import com.persagy.apm.energy.report.monthly.detail.business.model.Platform;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
 
 import javax.annotation.Resource;
 import java.util.ArrayList;
@@ -22,7 +24,7 @@ import java.util.stream.Collectors;
 @Service
 public class IEnvironmentWebServiceImpl implements IEnvironmentWebService {
 
-    @Resource
+    @Autowired
     private EnvironmentWebClientWrapper environmentWebClientWrapper;
     @Resource
     private CommonService commonService;
@@ -50,9 +52,12 @@ public class IEnvironmentWebServiceImpl implements IEnvironmentWebService {
             paramDTO.setStartTime(DateUtils.date2Str(reportDate, DateUtils.SDF_SECOND));
             paramDTO.setEndTime(DateUtils.date2Str(DateUtils.getMonthOff(reportDate, 1), DateUtils.SDF_SECOND));
             PoemsFeignResponse<EnvAvgRateVO> response = environmentWebClientWrapper.listWorkOrderByParam(paramDTO);
-            EnvAvgRateVO envAvgRateVO = (EnvAvgRateVO) response.getContent();
-            if (null != envAvgRateVO) {
-                return envAvgRateVO.getAvgNum();
+            List<EnvAvgRateVO> envAvgRateVOList = response.getContent();
+            if (!CollectionUtils.isEmpty(envAvgRateVOList)) {
+                EnvAvgRateVO envAvgRateVO = envAvgRateVOList.get(0);
+                if (null != envAvgRateVO) {
+                    return envAvgRateVO.getAvgNum();
+                }
             }
         } catch (Exception e) {
             e.printStackTrace();

+ 2 - 1
src/main/java/com/persagy/apm/energy/report/manualfilling/controller/ManualFillingController.java

@@ -40,7 +40,8 @@ public class ManualFillingController {
     @ApiOperation(value = "保存能耗分项数值")
     @PostMapping("/save")
     public CommonResult<ApmResponseUpsertVO> updateReportBusinessDetail(
-            @Valid @RequestBody SaveEnergyItemDataDTO saveEnergyItemDataDTO) {
+            @Valid @RequestBody SaveEnergyItemDataDTO saveEnergyItemDataDTO, @RequestParam(value = "userId", defaultValue = "systemId") String userId,
+            @RequestParam(value = "loginDevice", defaultValue = "PC") String loginDevice, @RequestParam(value = "pd", defaultValue = "123") String pd) {
         iEnergyItemDataService.saveEnergyItemData(saveEnergyItemDataDTO);
         return ResultHelper.single(new ApmResponseUpsertVO());
     }

+ 4 - 4
src/main/java/com/persagy/apm/energy/report/manualfilling/service/impl/IEnergyItemDataServiceImpl.java

@@ -42,7 +42,7 @@ public class IEnergyItemDataServiceImpl implements IEnergyItemDataService {
     public List<EnergyItemInfoVo> queryEnergyItemDataList(QueryEnergyItemDataDTO queryEnergyItemDataDTO) {
         try {
             ReportProjectVO projectVO = iSaasWebService.getReportProjectInfo(queryEnergyItemDataDTO.getProjectId());
-            if (null == projectVO ) {
+            if (null == projectVO || StringUtils.isEmpty(projectVO.getFunctionType())) {
                 return new ArrayList<>();
             }
             QueryFunctionDTO queryFunctionDTO = new QueryFunctionDTO();
@@ -52,7 +52,7 @@ public class IEnergyItemDataServiceImpl implements IEnergyItemDataService {
             }
             queryFunctionDTO.setEnergyType(queryEnergyItemDataDTO.getEnergyType());
             queryFunctionDTO.setFunctionType(queryEnergyItemDataDTO.getFunctionType());
-            queryFunctionDTO.setBuildingType("300");
+            queryFunctionDTO.setBuildingType(projectVO.getFunctionType());
             // 查询配置的分项信息列表
             List<Function> functionList = functionService.queryFunctionList(queryFunctionDTO);
             if (CollectionUtils.isEmpty(functionList)) {
@@ -61,7 +61,7 @@ public class IEnergyItemDataServiceImpl implements IEnergyItemDataService {
             // 配置信息点id列表
             List<String> functionIdList = new ArrayList<>();
             for (Function function : functionList) {
-                functionIdList.add(function.getItemId());
+                functionIdList.add(function.getId());
             }
             QueryFunctionValueDTO queryFunctionValueDTO = new QueryFunctionValueDTO();
             queryFunctionValueDTO.setProjectId(queryEnergyItemDataDTO.getProjectId());
@@ -109,7 +109,7 @@ public class IEnergyItemDataServiceImpl implements IEnergyItemDataService {
             if (null == projectVO || StringUtils.isEmpty(projectVO.getFunctionType())) {
                 throw new Exception("获取不到项目信息");
             }
-            saveEnergyItemDataDTO.setFunctionType(projectVO.getFunctionType());
+            saveEnergyItemDataDTO.setBuildingType(projectVO.getFunctionType());
             List<EnergyItemInfoVo> energyItemInfoVoList = saveEnergyItemDataDTO.getDataList();
             Map<String, String> itemId_functionIdMap = getFunctionIdMap(saveEnergyItemDataDTO);
             for (EnergyItemInfoVo energyItemInfoVo : energyItemInfoVoList) {