ソースを参照

fix 监测参数查询

LLL 1 年間 前
コミット
464b9dad97

+ 1 - 1
module_ems/src/main/java/org/jeecg/modules/dataElectricity/mapper/DataElectricityMapper.java

@@ -29,7 +29,7 @@ public interface DataElectricityMapper extends BaseMapper<DataElectricity> {
                                             @Param("endTime") String endTime);
 
     /**
-     * 监测参数查询——分时电量(有功总电能)
+     * 监测参数查询——分时电量
      */
     List<DataElectricityVO> dataList(ParamQueryDataDTO dto);
 

+ 2 - 2
module_ems/src/main/java/org/jeecg/modules/dataElectricity/mapper/xml/DataElectricityMapper.xml

@@ -62,9 +62,9 @@
                            on a.equipmentid=c.equipmentid
     </select>
 
-    <!--监测参数查询——分时电量(有功总电能)-->
+    <!--监测参数查询——分时电量-->
     <select id="dataList" parameterType="org.jeecg.modules.paramquery.dto.ParamQueryDataDTO" resultType="org.jeecg.modules.dataElectricity.vo.DataElectricityVO">
-        SELECT logtime, tagvalue
+        SELECT logtime, tagvalue2 as tagvalue
         FROM ems_data_electricity
         <where>
             <if test="equipmentid != null and equipmentid != ''"> and equipmentid = #{equipmentid} </if>

+ 1 - 1
module_ems/src/main/java/org/jeecg/modules/dataElectricity/service/IDataElectricityService.java

@@ -27,7 +27,7 @@ public interface IDataElectricityService extends IService<DataElectricity> {
     public HashMap getHourElectricityByDay(String day);
 
     /**
-     * 监测参数查询——分时电量(有功总电能)
+     * 监测参数查询——分时电量(
      */
     public List<DataElectricityVO> dataList(ParamQueryDataDTO dto);
 

+ 1 - 1
module_ems/src/main/java/org/jeecg/modules/dataElectricity/service/impl/DataElectricityServiceImpl.java

@@ -64,7 +64,7 @@ public class DataElectricityServiceImpl extends ServiceImpl<DataElectricityMappe
     }
 
     /**
-     * 监测参数查询——分时电量(有功总电能)
+     * 监测参数查询——分时电量
      */
     public List<DataElectricityVO> dataList(ParamQueryDataDTO dto){
         return dataElectricityMapper.dataList(dto);

+ 3 - 3
module_ems/src/main/java/org/jeecg/modules/dataElectricity/vo/DataElectricityVO.java

@@ -9,9 +9,9 @@ import org.springframework.format.annotation.DateTimeFormat;
 @Data
 public class DataElectricityVO {
 
-    /**分时电量(有功总电能)*/
-    @Excel(name = "分时电量(有功总电能)", width = 15)
-    @ApiModelProperty(value = "分时电量(有功总电能)")
+    /**分时电量*/
+    @Excel(name = "分时电量", width = 15)
+    @ApiModelProperty(value = "分时电量")
     private java.lang.Double tagvalue;
     /**时间*/
     @Excel(name = "时间", width = 15, format = "MM-dd HH:mm")

+ 100 - 17
module_ems/src/main/java/org/jeecg/modules/paramquery/controller/ParamQueryDataConotroller.java

@@ -15,14 +15,16 @@ import org.jeecg.modules.dataPower.vo.DataPowerVO;
 import org.jeecg.modules.dataVoltage.service.IDataVoltageService;
 import org.jeecg.modules.dataVoltage.vo.DataVoltageVO;
 import org.jeecg.modules.paramquery.dto.ParamQueryDataDTO;
-import org.jeecg.modules.paramquery.vo.ParamQueryDataVO;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
-import java.util.ArrayList;
-import java.util.List;
+import java.time.LocalDate;
+import java.time.ZoneId;
+import java.time.temporal.ChronoUnit;
+import java.util.*;
+import java.util.stream.Collectors;
 
 @RestController
 @Api(tags = "监测参数查询")
@@ -60,28 +62,109 @@ public class ParamQueryDataConotroller {
      */
     @ApiOperation(value="监测参数查询", notes="监测参数查询")
     @GetMapping(value = "/dataList")
-    public Result<ParamQueryDataVO> dataList(ParamQueryDataDTO dto) {
-        ParamQueryDataVO vo = new ParamQueryDataVO();
+    public Result<List<Map<String,Object>>> dataList(ParamQueryDataDTO dto) {
+        List<Map<String,Object>> mapList = new ArrayList<>();
+
+        Date logtimebegin = dto.getLogtimebegin();
+        Date logtimeend = dto.getLogtimeend();
+        LocalDate beginDate = logtimebegin.toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
+        LocalDate endDate = logtimeend.toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
+
+        long daysDiff = ChronoUnit.DAYS.between(beginDate, endDate);
+
+        if (Math.abs(daysDiff) > 2) {
+            return Result.error("时间间隔超过两天!",mapList);
+        }
+
 	 	if(dto.getQueryparamtype()!=null && !dto.getQueryparamtype().equals("")){
 	 		String queryparamtype = dto.getQueryparamtype();
-	 		if(queryparamtype.equals("电压")){
+	 		if(queryparamtype.equals("电压")){ //A相电压、B相电压、C相电压
                 List<DataVoltageVO> voltageVOList = voltageService.dataList(dto);
-                vo.setVoltageVOList(voltageVOList);
-			}else if(queryparamtype.equals("电流")){
+                List<Double> atagvalueList = voltageVOList.stream().map(i->i.getAtagvalue()).collect(Collectors.toList());
+                List<Double> btagvalueList = voltageVOList.stream().map(i->i.getBtagvalue()).collect(Collectors.toList());
+                List<Double> ctagvalueList = voltageVOList.stream().map(i->i.getCtagvalue()).collect(Collectors.toList());
+                List<Date> logtimeList = voltageVOList.stream().map(i->i.getLogtime()).collect(Collectors.toList());
+                Map<String,Object> amap = new HashMap<>();
+                amap.put("data", atagvalueList);
+                amap.put("name", "Ua");
+                mapList.add(amap);
+                Map<String,Object> bmap = new HashMap<>();
+                bmap.put("data", btagvalueList);
+                bmap.put("name", "Ub");
+                mapList.add(bmap);
+                Map<String,Object> cmap = new HashMap<>();
+                cmap.put("data", ctagvalueList);
+                cmap.put("name", "Uc");
+                mapList.add(cmap);
+                Map<String,Object> timemap = new HashMap<>();
+                timemap.put("data", logtimeList);
+                timemap.put("name", "logtime");
+                mapList.add(timemap);
+                return Result.OK(mapList);
+			} else if(queryparamtype.equals("电流")){
                 List<DataCurrentVO> currentVOList = currentService.dataList(dto);
-                vo.setCurrentVOList(currentVOList);
-			}else if(queryparamtype.equals("需量")){
+                List<Double> atagvalueList = currentVOList.stream().map(i->i.getAtagvalue()).collect(Collectors.toList());
+                List<Double> btagvalueList = currentVOList.stream().map(i->i.getBtagvalue()).collect(Collectors.toList());
+                List<Double> ctagvalueList = currentVOList.stream().map(i->i.getCtagvalue()).collect(Collectors.toList());
+                List<Date> logtimeList = currentVOList.stream().map(i->i.getLogtime()).collect(Collectors.toList());
+                Map<String,Object> amap = new HashMap<>();
+                amap.put("data", atagvalueList);
+                amap.put("name", "Ia");
+                mapList.add(amap);
+                Map<String,Object> bmap = new HashMap<>();
+                bmap.put("data", btagvalueList);
+                bmap.put("name", "Ib");
+                mapList.add(bmap);
+                Map<String,Object> cmap = new HashMap<>();
+                cmap.put("data", ctagvalueList);
+                cmap.put("name", "Ic");
+                mapList.add(cmap);
+                Map<String,Object> timemap = new HashMap<>();
+                timemap.put("data", logtimeList);
+                timemap.put("name", "logtime");
+                mapList.add(timemap);
+                return Result.OK(mapList);
+			} else if(queryparamtype.equals("需量")){
                 List<DataDemandVO> demandVOList = demandService.dataList(dto);
-                vo.setDemandVOList(demandVOList);
-			}else if(queryparamtype.equals("分时电量")){
+                List<Double> tagvalueList = demandVOList.stream().map(i->i.getTagvalue()).collect(Collectors.toList());
+                List<Date> logtimeList = demandVOList.stream().map(i->i.getLogtime()).collect(Collectors.toList());
+                Map<String,Object> amap = new HashMap<>();
+                amap.put("data", tagvalueList);
+                amap.put("name", "正向有功需量");
+                mapList.add(amap);
+                Map<String,Object> timemap = new HashMap<>();
+                timemap.put("data", logtimeList);
+                timemap.put("name", "logtime");
+                mapList.add(timemap);
+                return Result.OK(mapList);
+			} else if(queryparamtype.equals("分时电量")){
                 List<DataElectricityVO> electricityVOList = electricityService.dataList(dto);
-                vo.setElectricityVOList(electricityVOList);
+                List<Double> tagvalueList = electricityVOList.stream().map(i->i.getTagvalue()).collect(Collectors.toList());
+                List<Date> logtimeList = electricityVOList.stream().map(i->i.getLogtime()).collect(Collectors.toList());
+                Map<String,Object> amap = new HashMap<>();
+                amap.put("data", tagvalueList);
+                amap.put("name", "分时电量");
+                mapList.add(amap);
+                Map<String,Object> timemap = new HashMap<>();
+                timemap.put("data", logtimeList);
+                timemap.put("name", "logtime");
+                mapList.add(timemap);
+                return Result.OK(mapList);
 			}else if(queryparamtype.equals("功率")){
                 List<DataPowerVO> powerVOList = powerService.dataList(dto);
-                vo.setPowerVOList(powerVOList);
-			}else return Result.error("请输入正确的查询参数类型");
-		}else return Result.error("请输入查询参数类型");
-        return Result.OK(vo);
+                List<Double> tagvalueList = powerVOList.stream().map(i->i.getTagvalue()).collect(Collectors.toList());
+                List<Date> logtimeList = powerVOList.stream().map(i->i.getLogtime()).collect(Collectors.toList());
+                Map<String,Object> amap = new HashMap<>();
+                amap.put("data", tagvalueList);
+                amap.put("name", "功率");
+                mapList.add(amap);
+                Map<String,Object> timemap = new HashMap<>();
+                timemap.put("data", logtimeList);
+                timemap.put("name", "logtime");
+                mapList.add(timemap);
+                return Result.OK(mapList);
+			} else return Result.error("请输入正确的查询参数类型",mapList);
+		}else return Result.error("请输入查询参数类型",mapList);
     }
 
 }

+ 0 - 21
module_ems/src/main/java/org/jeecg/modules/paramquery/vo/ParamQueryDataVO.java

@@ -1,21 +0,0 @@
-package org.jeecg.modules.paramquery.vo;
-
-import lombok.Data;
-import org.jeecg.modules.dataCurrent.vo.DataCurrentVO;
-import org.jeecg.modules.dataDemand.vo.DataDemandVO;
-import org.jeecg.modules.dataElectricity.vo.DataElectricityVO;
-import org.jeecg.modules.dataPower.vo.DataPowerVO;
-import org.jeecg.modules.dataVoltage.vo.DataVoltageVO;
-
-import java.util.List;
-
-@Data
-public class ParamQueryDataVO {
-
-    private List<DataVoltageVO> voltageVOList;
-    private List<DataCurrentVO> currentVOList;
-    private List<DataDemandVO> demandVOList;
-    private List<DataElectricityVO> electricityVOList;
-    private List<DataPowerVO> powerVOList;
-
-}