Browse Source

能耗填报

Newspaper 1 year ago
parent
commit
d8068c2aca

+ 13 - 0
huimv-admin/pom.xml

@@ -162,6 +162,19 @@
             <artifactId>jxls-poi</artifactId>
             <version>1.1.0</version>
         </dependency>
+        <!-- easy-trans -->
+        <dependency>
+            <groupId>com.fhs-opensource</groupId>
+            <artifactId>easy-trans-spring-boot-starter</artifactId>
+            <version>2.1.7</version>
+        </dependency>
+
+        <!-- easy-trans-mybatis-plus-extend -->
+        <dependency>
+            <groupId>com.fhs-opensource</groupId>
+            <artifactId>easy-trans-mybatis-plus-extend</artifactId>
+            <version>2.1.7</version>
+        </dependency>
 
 
     </dependencies>

+ 54 - 0
huimv-admin/src/main/java/com/huimv/admin/controller/DisplayTypeController.java

@@ -16,6 +16,7 @@ import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
 import javax.servlet.http.HttpServletRequest;
+import java.util.HashMap;
 import java.util.Map;
 
 /**
@@ -50,6 +51,59 @@ public class DisplayTypeController {
         return new Result(ResultCode.SUCCESS,displayType);
     }
 
+    @RequestMapping("/getEnergy")
+    public Result getEnergy(HttpServletRequest httpServletRequest, @RequestBody Map<String,String> paramsMap) {
+        String farmId = paramsMap.get("farmId");
+        Map resultMap = new HashMap();
+        DisplayType waterDisplayType = displayTypeMapper.selectOne(new QueryWrapper<DisplayType>().eq("farm_id",farmId).eq("event_type",9));
+        if (ObjectUtil.isEmpty(waterDisplayType)){
+            waterDisplayType = new DisplayType();
+            waterDisplayType.setFarmId(Integer.valueOf(farmId));
+            waterDisplayType.setEventType(9);
+            waterDisplayType.setDisplayType(0);
+            resultMap.put("waterDisplayType",0);
+            displayTypeMapper.insert(waterDisplayType);
+        }else {
+            resultMap.put("waterDisplayType",waterDisplayType.getDisplayType());
+        }
+
+        DisplayType electricityDisplayType = displayTypeMapper.selectOne(new QueryWrapper<DisplayType>().eq("farm_id",farmId).eq("event_type",10));
+        if (ObjectUtil.isEmpty(electricityDisplayType)){
+            electricityDisplayType = new DisplayType();
+            electricityDisplayType.setFarmId(Integer.valueOf(farmId));
+            electricityDisplayType.setEventType(10);
+            electricityDisplayType.setDisplayType(0);
+            resultMap.put("electricityDisplayType",0);
+            displayTypeMapper.insert(electricityDisplayType);
+        }else {
+            resultMap.put("electricityDisplayType",electricityDisplayType.getDisplayType());
+        }
+
+        DisplayType feedDisplayType  = displayTypeMapper.selectOne(new QueryWrapper<DisplayType>().eq("farm_id",farmId).eq("event_type",11));
+        if (ObjectUtil.isEmpty(feedDisplayType )){
+            feedDisplayType  = new DisplayType();
+            feedDisplayType .setFarmId(Integer.valueOf(farmId));
+            feedDisplayType .setEventType(11);
+            feedDisplayType .setDisplayType(0);
+            resultMap.put("feedDisplayType",0);
+            displayTypeMapper.insert(feedDisplayType);
+        }else {
+            resultMap.put("feedDisplayType",feedDisplayType.getDisplayType());
+        }
+        DisplayType gasDisplayType = displayTypeMapper.selectOne(new QueryWrapper<DisplayType>().eq("farm_id",farmId).eq("event_type",7));
+        if (ObjectUtil.isEmpty(gasDisplayType)){
+            gasDisplayType = new DisplayType();
+            gasDisplayType.setFarmId(Integer.valueOf(farmId));
+            gasDisplayType.setEventType(7);
+            gasDisplayType.setDisplayType(0);
+            resultMap.put("gasDisplayType",0);
+            displayTypeMapper.insert(gasDisplayType);
+        }else {
+            resultMap.put("gasDisplayType",gasDisplayType.getDisplayType());
+        }
+        return new Result(ResultCode.SUCCESS,resultMap);
+    }
+
 
     @RequestMapping("/edit")
     public Result edit(HttpServletRequest httpServletRequest, @RequestBody DisplayType displayType) {

+ 14 - 7
huimv-admin/src/main/java/com/huimv/admin/controller/EnergyDataController.java

@@ -18,11 +18,7 @@ import com.huimv.admin.service.IBaseFarmService;
 import com.huimv.admin.service.IEnergyDataService;
 import com.huimv.admin.service.IEnergyEnvDeviceService;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.CrossOrigin;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 
 import javax.servlet.http.HttpServletRequest;
 import java.text.ParseException;
@@ -135,9 +131,20 @@ public class EnergyDataController {
         }
     }
 
-    @RequestMapping("/addGas")
-    public Result addGas(@RequestBody EnergyData energyData) {
+    @PostMapping("/add")
+    public Result add(@RequestBody EnergyData energyData) {
         iEnergyDataService.save(energyData);
         return Result.SUCCESS();
     }
+
+    @PostMapping("/listAll")
+    public Result listAll(@RequestBody Map<String, String> paramsMap) {
+        return iEnergyDataService.listAll(paramsMap);
+    }
+
+    @PostMapping("/removeById")
+    public Result listAll(@RequestBody EnergyData energyData) {
+        iEnergyDataService.removeById(energyData.getId());
+        return Result.SUCCESS();
+    }
 }

+ 3 - 1
huimv-admin/src/main/java/com/huimv/admin/entity/BasePigpen.java

@@ -4,6 +4,8 @@ import com.baomidou.mybatisplus.annotation.TableName;
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableId;
 import java.io.Serializable;
+
+import com.fhs.core.trans.vo.TransPojo;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import lombok.experimental.Accessors;
@@ -20,7 +22,7 @@ import lombok.experimental.Accessors;
 @EqualsAndHashCode(callSuper = false)
 @Accessors(chain = true)
 @TableName("base_pigpen")
-public class BasePigpen implements Serializable {
+public class BasePigpen implements TransPojo {
 
     private static final long serialVersionUID = 1L;
 

+ 8 - 5
huimv-admin/src/main/java/com/huimv/admin/entity/EnergyData.java

@@ -1,5 +1,6 @@
 package com.huimv.admin.entity;
 
+import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableName;
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableId;
@@ -7,6 +8,9 @@ import java.io.Serializable;
 import java.util.Date;
 
 import com.fasterxml.jackson.annotation.JsonFormat;
+import com.fhs.core.trans.anno.Trans;
+import com.fhs.core.trans.constant.TransType;
+import com.fhs.core.trans.vo.TransPojo;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import lombok.experimental.Accessors;
@@ -23,7 +27,7 @@ import lombok.experimental.Accessors;
 @EqualsAndHashCode(callSuper = false)
 @Accessors(chain = true)
 @TableName("energy_data")
-public class EnergyData implements Serializable {
+public class EnergyData implements TransPojo {
 
     private static final long serialVersionUID = 1L;
 
@@ -75,11 +79,10 @@ public class EnergyData implements Serializable {
      */
     private String originalData;
 
-    /**
-     * 房舍id
-     */
     private Integer unitId;
 
+    private String unitName;
+
     private Integer farmId;
 
     private Integer displayType;
@@ -89,7 +92,7 @@ public class EnergyData implements Serializable {
     private String other3;
 
     /*创建时间*/
-    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss" ,timezone = "GMT+8")
+    @JsonFormat(pattern = "yyyy-MM-dd" ,timezone = "GMT+8")
     private Date createDate;
 
 

+ 8 - 1
huimv-admin/src/main/java/com/huimv/admin/mapper/EnergyDataMapper.java

@@ -39,7 +39,14 @@ public interface EnergyDataMapper extends BaseMapper<EnergyData> {
 
     List<EnergyElectricityDataVo> listDay4(@Param(Constants.WRAPPER) QueryWrapper<EnergyData> queryWrapper);
 
-    EnergyDataVo listCount(@Param(Constants.WRAPPER) QueryWrapper<EnergyData> queryWrapper);
+    EnergyDataVo listWaterCount(@Param(Constants.WRAPPER) QueryWrapper<EnergyData> queryWrapper);
+
+    String listElectricityCount(@Param(Constants.WRAPPER) QueryWrapper<EnergyData> queryWrapper);
+
+    String listFeedCount(@Param(Constants.WRAPPER) QueryWrapper<EnergyData> queryWrapper);
+
+    String listGasCount(@Param(Constants.WRAPPER) QueryWrapper<EnergyData> queryWrapper);
+
 
     /*11111*/
     List<EnergyAllDataVo> listYearGas(@Param(Constants.WRAPPER) QueryWrapper<EnergyData> queryWrapper);

+ 1 - 0
huimv-admin/src/main/java/com/huimv/admin/service/IEnergyDataService.java

@@ -36,4 +36,5 @@ public interface IEnergyDataService extends IService<EnergyData> {
 
     Result listDataTail(HttpServletRequest httpServletRequest,Map<String,String> paramsMap) throws ParseException;
 
+    Result listAll(Map<String, String> paramsMap);
 }

+ 1 - 1
huimv-admin/src/main/java/com/huimv/admin/service/impl/BasePigpenServiceImpl.java

@@ -109,7 +109,7 @@ public class BasePigpenServiceImpl extends ServiceImpl<BasePigpenMapper, BasePig
             if (count > 0) {
                 return new Result(10001, "删除失败,该栋舍下有采集器", false);
             }
-            basePigpenMapper.deleteById(basePigpen);
+            basePigpenMapper.deleteById(basePigpen.getId());
         }
         basePigpenMapper.deleteById(integer);
         return ResultUtil.deleteResult(1);

+ 185 - 56
huimv-admin/src/main/java/com/huimv/admin/service/impl/EnergyDataServiceImpl.java

@@ -56,14 +56,35 @@ public class EnergyDataServiceImpl extends ServiceImpl<EnergyDataMapper, EnergyD
     @Override
     public Result listCount(HttpServletRequest httpServletRequest, Map<String, String> paramsMap) {
         String farmId = paramsMap.get("farmId");
-        String displayType = paramsMap.get("displayType");
-        QueryWrapper<EnergyData> queryWrapper = new QueryWrapper<>();
-        if ("0".equals(displayType)){
-            queryWrapper.eq("display_type",displayType);
+        String waterDisplayType = paramsMap.get("waterDisplayType");
+        String electricityDisplayType = paramsMap.get("electricityDisplayType");
+        String feedDisplayType = paramsMap.get("feedDisplayType");
+        String gasDisplayType = paramsMap.get("gasDisplayType");
+        QueryWrapper<EnergyData> waterqueryWrapper = new QueryWrapper<>();
+        QueryWrapper<EnergyData> electricityqueryWrapper = new QueryWrapper<>();
+        QueryWrapper<EnergyData> feedqueryWrapper = new QueryWrapper<>();
+        QueryWrapper<EnergyData> gasqueryWrapper = new QueryWrapper<>();
+        if (ObjectUtil.isNotEmpty(waterDisplayType)){
+            waterqueryWrapper.eq("display_type",waterDisplayType);
+        }
+        if (ObjectUtil.isNotEmpty(electricityDisplayType)){
+            electricityqueryWrapper.eq("display_type",electricityDisplayType);
+        }
+        if (ObjectUtil.isNotEmpty(feedDisplayType)){
+            feedqueryWrapper.eq("display_type",feedDisplayType);
+        }
+        if (ObjectUtil.isNotEmpty(gasDisplayType)){
+            gasqueryWrapper.eq("display_type",gasDisplayType);
         }
         Date monthmorning = DataUill.getTimesMonthmorning();
-        queryWrapper.eq("farm_id", farmId).ge("create_date", monthmorning);
-        EnergyDataVo energyDataVo = dataMapper.listCount(queryWrapper);
+        waterqueryWrapper.eq("farm_id", farmId).ge("create_date", monthmorning);
+        electricityqueryWrapper.eq("farm_id", farmId).ge("create_date", monthmorning);
+        feedqueryWrapper.eq("farm_id", farmId).ge("create_date", monthmorning);
+        gasqueryWrapper.eq("farm_id", farmId).ge("create_date", monthmorning);
+        EnergyDataVo energyDataVo = dataMapper.listWaterCount(waterqueryWrapper);
+        energyDataVo.setGasValue(dataMapper.listGasCount(gasqueryWrapper));
+        energyDataVo.setFeedValue(dataMapper.listFeedCount(feedqueryWrapper));
+        energyDataVo.setElectricityValue(dataMapper.listElectricityCount(electricityqueryWrapper));
         QueryWrapper<EnergyWarningInfo> queryWrapper1 = new QueryWrapper<>();
         queryWrapper1.eq("farm_id", farmId);
         Integer count = warningInfoMapper.selectCount(queryWrapper1);
@@ -94,8 +115,12 @@ public class EnergyDataServiceImpl extends ServiceImpl<EnergyDataMapper, EnergyD
 
         QueryWrapper<EnergyData> dataQueryWrapper = new QueryWrapper<>();
         dataQueryWrapper.eq("farm_id", farmId);
+        if (ObjectUtil.isNotEmpty(displayType)){
+            dataQueryWrapper.eq("display_type",displayType);
+        }
         //用水
         if ("1".equals(dataType)) {
+            dataQueryWrapper.isNotNull("water_value");
             //自定义
             if ("4".equals(timeType)) {
                 startTime = startTime + " 00:00:00";
@@ -127,6 +152,7 @@ public class EnergyDataServiceImpl extends ServiceImpl<EnergyDataMapper, EnergyD
         }
         //用电
         else if ("2".equals(dataType)) {
+            dataQueryWrapper.isNotNull("electricity_value");
             //自定义
             if ("4".equals(timeType)) {
                 startTime = startTime + " 00:00:00";
@@ -158,6 +184,7 @@ public class EnergyDataServiceImpl extends ServiceImpl<EnergyDataMapper, EnergyD
         }
         //饲料
         else if ("3".equals(dataType)) {
+            dataQueryWrapper.isNotNull("feed_value");
             //自定义
             if ("4".equals(timeType)) {
                 startTime = startTime + " 00:00:00";
@@ -189,9 +216,7 @@ public class EnergyDataServiceImpl extends ServiceImpl<EnergyDataMapper, EnergyD
         }
         //天然气
         else if ("4".equals(dataType)) {
-            if (ObjectUtil.isNotEmpty(displayType)){
-                dataQueryWrapper.eq("display_type",displayType);
-            }
+            dataQueryWrapper.isNotNull("gas_value");
             //自定义
             if ("4".equals(timeType)) {
                 startTime = startTime + " 00:00:00";
@@ -253,60 +278,88 @@ public class EnergyDataServiceImpl extends ServiceImpl<EnergyDataMapper, EnergyD
             basePigpens1.forEach(item -> {
                 idList.add(item.getId());
             });//某一层所有单元的id
-            QueryWrapper<EnergyData> dataQueryWrapper = new QueryWrapper<>();
-            if ("0".equals(displayType)){
-                dataQueryWrapper.eq("display_type",displayType);
-            }
+
+            QueryWrapper<EnergyData> waterWrapper = new QueryWrapper<>();
+            QueryWrapper<EnergyData> gasWrapper = new QueryWrapper<>();
+            QueryWrapper<EnergyData> electricityWrapper = new QueryWrapper<>();
+            QueryWrapper<EnergyData> feedWrapper = new QueryWrapper<>();
             if (idList.size() != 0) {
-                dataQueryWrapper.eq("farm_id", farmId).in("unit_id", idList);
+                waterWrapper.eq("farm_id", farmId).in("unit_id", idList);
+                gasWrapper.eq("farm_id", farmId).in("unit_id", idList);
+                electricityWrapper.eq("farm_id", farmId).in("unit_id", idList);
+                feedWrapper.eq("farm_id", farmId).in("unit_id", idList);
                 if ("4".equals(timeType)) {
                     //自定义
                     startTime = startTime + " 00:00:00";
                     endTime = endTime + " 23:59:59";
-                    dataQueryWrapper.between("create_date", startTime, endTime);
+                    waterWrapper.between("create_date", startTime, endTime);
+                    gasWrapper.between("create_date", startTime, endTime);
+                    electricityWrapper.between("create_date", startTime, endTime);
+                    feedWrapper.between("create_date", startTime, endTime);
                 } else if ("3".equals(timeType)) {
                     //本年
                     DateTime dateTime = DateUtil.beginOfYear(new Date());
-                    dataQueryWrapper.ge("create_date", dateTime);
+                    waterWrapper.ge("create_date", dateTime);
+                    gasWrapper.ge("create_date", dateTime);
+                    electricityWrapper.ge("create_date", dateTime);
+                    feedWrapper.ge("create_date", dateTime);
                 } else if ("2".equals(timeType)) {
                     //本月
                     Date timesMonthmorning = DataUill.getTimesMonthmorning();
-                    dataQueryWrapper.ge("create_date", timesMonthmorning);
+                    waterWrapper.ge("create_date", timesMonthmorning);
+                    gasWrapper.ge("create_date", timesMonthmorning);
+                    electricityWrapper.ge("create_date", timesMonthmorning);
+                    feedWrapper.ge("create_date", timesMonthmorning);
                 } else if ("1".equals(timeType)) {
                     //本周
                     Calendar calendar = Calendar.getInstance();
                     calendar.set(Calendar.DATE, calendar.get(Calendar.DATE) - 7);
-                    dataQueryWrapper.ge("create_date", calendar.getTime());
+                    waterWrapper.ge("create_date", calendar.getTime());
+                    gasWrapper.ge("create_date", calendar.getTime());
+                    electricityWrapper.ge("create_date", calendar.getTime());
+                    feedWrapper.ge("create_date", calendar.getTime());
                 }
-                dataQueryWrapper.select(
-                        " IFNULL(SUM(water_value),0) waterValue,IFNULL(SUM(gas_value),0) gasValue" +
-                                ",IFNULL(SUM(electricity_value),0) electricityValue" +
-                                ",IFNULL(SUM(feed_value),0) feedValue  "
-                );
-                EnergyData energyData = dataMapper.selectOne(dataQueryWrapper);
+
+
+                if (ObjectUtil.isNotEmpty(displayType)){
+                    waterWrapper.eq("display_type",displayType);
+                }
+                if (ObjectUtil.isNotEmpty(displayType)){
+                    gasWrapper.eq("display_type",displayType);
+                }
+                if (ObjectUtil.isNotEmpty(displayType)){
+                    electricityWrapper.eq("display_type",displayType);
+                }
+                if (ObjectUtil.isNotEmpty(displayType)){
+                    feedWrapper.eq("display_type",displayType);
+                }
+
+                waterWrapper.select(" IFNULL(SUM(water_value),0) waterValue ");
+                gasWrapper.select(" IFNULL(SUM(gas_value),0) gasValue ");
+                electricityWrapper.select(" IFNULL(SUM(electricity_value),0) electricityValue ");
+                feedWrapper.select(" IFNULL(SUM(feed_value),0) feedValue ");
                 if ("1".equals(dataType)) {
-                    value = Float.parseFloat(energyData.getWaterValue());
+                    value = Float.parseFloat(dataMapper.selectOne(waterWrapper).getWaterValue());
                     jsonObject.put("value", value);
                 }
                 if ("2".equals(dataType)) {
-                    value = Float.parseFloat(energyData.getElectricityValue());
+                    value = Float.parseFloat(dataMapper.selectOne(electricityWrapper).getElectricityValue());
                     jsonObject.put("value", value);
                 }
                 if ("3".equals(dataType)) {
-                    value = Float.parseFloat(energyData.getFeedValue());
+                    value = Float.parseFloat(dataMapper.selectOne(feedWrapper).getFeedValue());
                     jsonObject.put("value", value);
 
                 }
                 if ("4".equals(dataType)) {
-                    value = Float.parseFloat(energyData.getGasValue());
+                    value = Float.parseFloat(dataMapper.selectOne(gasWrapper).getGasValue());
                     jsonObject.put("value", value);
                 }
-                jsonObject.put("buildName", pigpen.getBuildName());
 
             } else {
                 jsonObject.put("value", 0);
-                jsonObject.put("buildName", pigpen.getBuildName());
             }
+            jsonObject.put("buildName", pigpen.getBuildName());
             jsonArray.add(jsonObject);
         }
 
@@ -317,18 +370,34 @@ public class EnergyDataServiceImpl extends ServiceImpl<EnergyDataMapper, EnergyD
     @Override
     public Result listDataScreen(HttpServletRequest httpServletRequest, Map<String, String> paramsMap) {
         String farmId = paramsMap.get("farmId");
-        String displayType = paramsMap.get("displayType");
-        QueryWrapper<EnergyData> queryWrapper = new QueryWrapper<>();
-        queryWrapper.eq("farm_id", farmId);
+        String waterDisplayType = paramsMap.get("waterDisplayType");
+        String electricityDisplayType = paramsMap.get("electricityDisplayType");
+        String feedDisplayType = paramsMap.get("feedDisplayType");
+        String gasDisplayType = paramsMap.get("gasDisplayType");
+        QueryWrapper<EnergyData> queryWrapper1 = new QueryWrapper<>();
+        queryWrapper1.eq("farm_id", farmId);
+        if (ObjectUtil.isNotEmpty(gasDisplayType)){
+            queryWrapper1.eq("display_type",gasDisplayType);
+        }
         QueryWrapper<EnergyData> queryWrapper2 = new QueryWrapper<>();
         queryWrapper2.eq("farm_id", farmId);
-        if (ObjectUtil.isNotEmpty(displayType)){
-            queryWrapper2.eq("display_type",displayType);
+        if (ObjectUtil.isNotEmpty(feedDisplayType)){
+            queryWrapper2.eq("display_type",feedDisplayType);
+        }
+        QueryWrapper<EnergyData> queryWrapper3 = new QueryWrapper<>();
+        queryWrapper3.eq("farm_id", farmId);
+        if (ObjectUtil.isNotEmpty(waterDisplayType)){
+            queryWrapper3.eq("display_type",waterDisplayType);
         }
-        List<EnergyAllDataVo> energyGasDataVos = dataMapper.listDayGas(queryWrapper2);
-        List<EnergyAllDataVo> energyFeedDataVos = dataMapper.listDayFeed(queryWrapper);
-        List<EnergyAllDataVo> energyWaterDataVos = dataMapper.listDayWater(queryWrapper);
-        List<EnergyAllDataVo> energyElectricityDataVos = dataMapper.listDayElectricity(queryWrapper);
+        QueryWrapper<EnergyData> queryWrapper4 = new QueryWrapper<>();
+        queryWrapper4.eq("farm_id", farmId);
+        if (ObjectUtil.isNotEmpty(electricityDisplayType)){
+            queryWrapper4.eq("display_type",electricityDisplayType);
+        }
+        List<EnergyAllDataVo> energyGasDataVos = dataMapper.listDayGas(queryWrapper1.isNotNull("gas_value"));
+        List<EnergyAllDataVo> energyFeedDataVos = dataMapper.listDayFeed(queryWrapper2.isNotNull("feed_value"));
+        List<EnergyAllDataVo> energyWaterDataVos = dataMapper.listDayWater(queryWrapper3.isNotNull("water_value"));
+        List<EnergyAllDataVo> energyElectricityDataVos = dataMapper.listDayElectricity(queryWrapper4.isNotNull("electricity_value"));
         JSONObject jsonObject = new JSONObject();
         jsonObject.put("gas", energyGasDataVos);
         jsonObject.put("water", energyWaterDataVos);
@@ -341,7 +410,11 @@ public class EnergyDataServiceImpl extends ServiceImpl<EnergyDataMapper, EnergyD
     public Result listRankScreen(HttpServletRequest httpServletRequest, Map<String, String> paramsMap) {
         String farmId = paramsMap.get("farmId");
         String dataType = paramsMap.get("dataType");
-        String displayType = paramsMap.get("displayType");
+        String waterDisplayType = paramsMap.get("waterDisplayType");
+        String electricityDisplayType = paramsMap.get("electricityDisplayType");
+        String feedDisplayType = paramsMap.get("feedDisplayType");
+        String gasDisplayType = paramsMap.get("gasDisplayType");
+
         if (dataType == null || dataType == "") {
             dataType = "1";
         }
@@ -360,32 +433,52 @@ public class EnergyDataServiceImpl extends ServiceImpl<EnergyDataMapper, EnergyD
                 idList.add(item.getId());
             });//某一层所有单元的id
 
-            QueryWrapper<EnergyData> dataQueryWrapper = new QueryWrapper<>();
-            if ("0".equals(displayType)){
-                dataQueryWrapper.eq("display_type",displayType);
-            }
+            QueryWrapper<EnergyData> waterWrapper = new QueryWrapper<>();
+            QueryWrapper<EnergyData> gasWrapper = new QueryWrapper<>();
+            QueryWrapper<EnergyData> electricityWrapper = new QueryWrapper<>();
+            QueryWrapper<EnergyData> feedWrapper = new QueryWrapper<>();
             Date timesMonthmorning = DataUill.getTimesMonthmorning();
+
             JSONObject jsonObject = new JSONObject();
             if (idList.size() != 0) {
-                dataQueryWrapper.eq("farm_id", farmId).in("unit_id", idList);
-                dataQueryWrapper.ge("create_date", timesMonthmorning);
-                dataQueryWrapper.select(
-                        "IFNULL(SUM(water_value),0) waterValue,IFNULL(SUM(gas_value),0) gasValue" +
-                                ",IFNULL(SUM(electricity_value),0) electricityValue" +
-                                ",IFNULL(SUM(feed_value),0) feedValue  "
-                );
-                EnergyData energyData = dataMapper.selectOne(dataQueryWrapper);
+                waterWrapper.eq("farm_id", farmId).in("unit_id", idList);
+                waterWrapper.ge("create_date", timesMonthmorning);
+                gasWrapper.eq("farm_id", farmId).in("unit_id", idList);
+                gasWrapper.ge("create_date", timesMonthmorning);
+                feedWrapper.eq("farm_id", farmId).in("unit_id", idList);
+                feedWrapper.ge("create_date", timesMonthmorning);
+                electricityWrapper.eq("farm_id", farmId).in("unit_id", idList);
+                electricityWrapper.ge("create_date", timesMonthmorning);
+
+                if (ObjectUtil.isNotEmpty(waterDisplayType)){
+                    waterWrapper.eq("display_type",waterDisplayType);
+                }
+                if (ObjectUtil.isNotEmpty(gasDisplayType)){
+                    gasWrapper.eq("display_type",gasDisplayType);
+                }
+                if (ObjectUtil.isNotEmpty(electricityDisplayType)){
+                    electricityWrapper.eq("display_type",electricityDisplayType);
+                }
+                if (ObjectUtil.isNotEmpty(feedDisplayType)){
+                    feedWrapper.eq("display_type",feedDisplayType);
+                }
+
+                waterWrapper.select(" IFNULL(SUM(water_value),0) waterValue ");
+                gasWrapper.select(" IFNULL(SUM(gas_value),0) gasValue ");
+                electricityWrapper.select(" IFNULL(SUM(electricity_value),0) electricityValue ");
+                feedWrapper.select(" IFNULL(SUM(feed_value),0) feedValue ");
+
                 if ("1".equals(dataType)) {
-                    value = Float.parseFloat(energyData.getWaterValue());
+                    value = Float.parseFloat(dataMapper.selectOne(waterWrapper).getWaterValue());
                 }
                 if ("2".equals(dataType)) {
-                    value = Float.parseFloat(energyData.getElectricityValue());
+                    value = Float.parseFloat(dataMapper.selectOne(electricityWrapper).getElectricityValue());
                 }
                 if ("3".equals(dataType)) {
-                    value = Float.parseFloat(energyData.getFeedValue());
+                    value = Float.parseFloat(dataMapper.selectOne(feedWrapper).getFeedValue());
                 }
                 if ("4".equals(dataType)) {
-                    value = Float.parseFloat(energyData.getGasValue());
+                    value = Float.parseFloat(dataMapper.selectOne(gasWrapper).getGasValue());
                 }
                 jsonObject.put("value", value);
                 jsonObject.put("buildName", basePigpen.getBuildName());
@@ -577,6 +670,42 @@ public class EnergyDataServiceImpl extends ServiceImpl<EnergyDataMapper, EnergyD
         return new Result(ResultCode.SUCCESS,array);
     }
 
+    @Override
+    public Result listAll(Map<String, String> paramsMap) {
+        String farmId = paramsMap.get("farmId");
+        String dataType = paramsMap.get("dataType");
+        List<EnergyData> energyData = new ArrayList<>();
+        if ("1".equals(dataType)){
+            energyData = dataMapper.selectList(new QueryWrapper<EnergyData>().lambda()
+                    .eq(EnergyData::getFarmId,farmId)
+                    .eq(EnergyData::getDisplayType, 1)
+                    .isNotNull(EnergyData::getWaterValue)
+                    .orderByDesc(EnergyData::getCreateDate));
+        }
+        if ("2".equals(dataType)){
+            energyData = dataMapper.selectList(new QueryWrapper<EnergyData>().lambda()
+                    .eq(EnergyData::getFarmId,farmId)
+                    .eq(EnergyData::getDisplayType, 1)
+                    .isNotNull(EnergyData::getElectricityValue)
+                    .orderByDesc(EnergyData::getCreateDate));
+        }
+        if ("3".equals(dataType)){
+            energyData = dataMapper.selectList(new QueryWrapper<EnergyData>().lambda()
+                    .eq(EnergyData::getFarmId,farmId)
+                    .eq(EnergyData::getDisplayType, 1)
+                    .isNotNull(EnergyData::getFeedValue)
+                    .orderByDesc(EnergyData::getCreateDate));
+        }
+        if ("4".equals(dataType)){
+            energyData = dataMapper.selectList(new QueryWrapper<EnergyData>().lambda()
+                    .eq(EnergyData::getFarmId,farmId)
+                    .eq(EnergyData::getDisplayType, 1)
+                    .isNotNull(EnergyData::getGasValue)
+                    .orderByDesc(EnergyData::getCreateDate));
+        }
+        return new Result(ResultCode.SUCCESS,energyData);
+    }
+
 
     /*数组排序*/
     public static JSONArray jsonArraySort(JSONArray jsonArr, String sortKey, boolean is_desc) {

+ 14 - 0
huimv-admin/src/main/java/com/huimv/admin/service/impl/EnergyElectricityServiceImpl.java

@@ -47,6 +47,8 @@ public class EnergyElectricityServiceImpl extends ServiceImpl<EnergyElectricityM
     @Override
     public Result listPigpen(HttpServletRequest httpServletRequest, Map<String, String> paramsMap) {
         String farmId = paramsMap.get("farmId");
+        String displayType = paramsMap.get("displayType");
+
         String id = paramsMap.get("id");//层id
 
         JSONArray jsonArray = new JSONArray();
@@ -56,6 +58,9 @@ public class EnergyElectricityServiceImpl extends ServiceImpl<EnergyElectricityM
         for (BasePigpen basePigpen : basePigpens) {
             JSONObject jsonObject = new JSONObject();
             QueryWrapper<EnergyData> queryWrapper = new QueryWrapper<>();
+            if (ObjectUtil.isNotEmpty(displayType)){
+                queryWrapper.eq("display_type",displayType);
+            }
             queryWrapper.eq("farm_id", farmId).eq("unit_id", basePigpen.getId());
             queryWrapper.select(" IFNULL(SUM(electricity_value),'0') electricityValue");
             DateTime dateTime = DateUtil.beginOfDay(new Date());
@@ -83,6 +88,7 @@ public class EnergyElectricityServiceImpl extends ServiceImpl<EnergyElectricityM
     public Result listData(HttpServletRequest httpServletRequest, Map<String, String> paramsMap) {
         String farmId = paramsMap.get("farmId");
         String type = paramsMap.get("type");
+        String displayType = paramsMap.get("displayType");
         String id = paramsMap.get("id");
         String startTime = paramsMap.get("startTime");
         String endTime = paramsMap.get("endTime");
@@ -93,6 +99,10 @@ public class EnergyElectricityServiceImpl extends ServiceImpl<EnergyElectricityM
 
         QueryWrapper<EnergyData> queryWrapper = new QueryWrapper<>();
         queryWrapper.eq("farm_id", farmId).eq("unit_id", id);
+        queryWrapper.isNotNull("electricity_value");
+        if (ObjectUtil.isNotEmpty(displayType)){
+            queryWrapper.eq("display_type",displayType);
+        }
         List<EnergyElectricityDataVo> electricityList = null;
         //自定义查询
         if ("4".equals(type)) {
@@ -128,6 +138,7 @@ public class EnergyElectricityServiceImpl extends ServiceImpl<EnergyElectricityM
     @Override
     public Result listPigpenApp(HttpServletRequest httpServletRequest, Map<String, String> paramsMap) {
         String farmId = paramsMap.get("farmId");
+        String displayType = paramsMap.get("displayType");
         JSONArray jsonArray = new JSONArray();
 
         QueryWrapper<BasePigpen> basePigpenQueryWrapper = new QueryWrapper<>();
@@ -137,6 +148,9 @@ public class EnergyElectricityServiceImpl extends ServiceImpl<EnergyElectricityM
             JSONObject jsonObject = new JSONObject();
             QueryWrapper<EnergyData> queryWrapper = new QueryWrapper<>();
             queryWrapper.eq("farm_id", farmId).eq("unit_id", basePigpen.getId());
+            if (ObjectUtil.isNotEmpty(displayType)){
+                queryWrapper.eq("display_type",displayType);
+            }
             queryWrapper.select(" IFNULL(SUM(electricity_value),'0') electricityValue");
             DateTime dateTime = DateUtil.beginOfWeek(new Date());
             queryWrapper.ge("create_date", dateTime);

+ 15 - 0
huimv-admin/src/main/java/com/huimv/admin/service/impl/EnergyFeedServiceImpl.java

@@ -47,6 +47,7 @@ public class EnergyFeedServiceImpl extends ServiceImpl<EnergyFeedMapper, EnergyF
     @Override
     public Result listPigpen(HttpServletRequest httpServletRequest, Map<String, String> paramsMap) {
         String farmId = paramsMap.get("farmId");
+        String displayType = paramsMap.get("displayType");
         String id = paramsMap.get("id");
 
         JSONArray jsonArray = new JSONArray();
@@ -66,9 +67,13 @@ public class EnergyFeedServiceImpl extends ServiceImpl<EnergyFeedMapper, EnergyF
             JSONObject jsonObject = new JSONObject();
             QueryWrapper<EnergyData> queryWrapper1 = new QueryWrapper<>();
             queryWrapper1.in("unit_id", idList).eq("farm_id", farmId);
+            if (ObjectUtil.isNotEmpty(displayType)){
+                queryWrapper1.eq("display_type",displayType);
+            }
             DateTime dateTime = DateUtil.beginOfDay(new Date());
             queryWrapper1.ge("create_date", dateTime);
             queryWrapper1.select(" IFNULL(SUM(feed_value),'0') feedValue");
+            queryWrapper1.lambda().isNotNull(EnergyData::getFeedValue);
             EnergyData energyGas = dataMapper.selectOne(queryWrapper1);
 
             if (ObjectUtil.isNotEmpty(energyGas)) {
@@ -91,6 +96,7 @@ public class EnergyFeedServiceImpl extends ServiceImpl<EnergyFeedMapper, EnergyF
     public Result listData(HttpServletRequest httpServletRequest, Map<String, String> paramsMap) {
         String farmId = paramsMap.get("farmId");
         String type = paramsMap.get("type");
+        String displayType = paramsMap.get("displayType");
         String id = paramsMap.get("id");//楼层id
         String startTime = paramsMap.get("startTime");
         String endTime = paramsMap.get("endTime");
@@ -110,6 +116,10 @@ public class EnergyFeedServiceImpl extends ServiceImpl<EnergyFeedMapper, EnergyF
         });
 
         QueryWrapper<EnergyData> queryWrapper = new QueryWrapper<>();
+        if (ObjectUtil.isNotEmpty(displayType)){
+            queryWrapper.eq("display_type",displayType);
+        }
+        queryWrapper.isNotNull("feed_value");
         queryWrapper.eq("farm_id", farmId).in("unit_id", unitIds);
         //自定义查询
         if ("4".equals(type)) {
@@ -147,6 +157,7 @@ public class EnergyFeedServiceImpl extends ServiceImpl<EnergyFeedMapper, EnergyF
     @Override
     public Result listPigpenApp(HttpServletRequest httpServletRequest, Map<String, String> paramsMap) {
         String farmId = paramsMap.get("farmId");
+        String displayType = paramsMap.get("displayType");
 
         JSONArray jsonArray = new JSONArray();
 
@@ -164,7 +175,11 @@ public class EnergyFeedServiceImpl extends ServiceImpl<EnergyFeedMapper, EnergyF
             });
             JSONObject jsonObject = new JSONObject();
             QueryWrapper<EnergyData> queryWrapper1 = new QueryWrapper<>();
+            if (ObjectUtil.isNotEmpty(displayType)){
+                queryWrapper.eq("display_type",displayType);
+            }
             queryWrapper1.in("unit_id", idList).eq("farm_id", farmId);
+            queryWrapper1.lambda().isNotNull(EnergyData::getFeedValue);
             DateTime dateTime = DateUtil.beginOfWeek(new Date());
             queryWrapper1.ge("create_date", dateTime);
             queryWrapper1.select(" IFNULL(SUM(feed_value),'0') feedValue");

+ 14 - 0
huimv-admin/src/main/java/com/huimv/admin/service/impl/EnergyWaterServiceImpl.java

@@ -48,6 +48,7 @@ public class EnergyWaterServiceImpl extends ServiceImpl<EnergyWaterMapper, Energ
     @Override
     public Result listPigpen(HttpServletRequest httpServletRequest, Map<String, String> paramsMap) {
         String farmId = paramsMap.get("farmId");
+        String displayType = paramsMap.get("displayType");
         String id = paramsMap.get("id");//层id
 
         JSONArray jsonArray = new JSONArray();
@@ -57,6 +58,9 @@ public class EnergyWaterServiceImpl extends ServiceImpl<EnergyWaterMapper, Energ
         for (BasePigpen basePigpen : basePigpenList) {
             JSONObject jsonObject = new JSONObject();
             QueryWrapper<EnergyData> queryWrapper = new QueryWrapper<>();
+            if (ObjectUtil.isNotEmpty(displayType)){
+                queryWrapper.eq("display_type",displayType);
+            }
             queryWrapper.eq("farm_id", farmId).eq("unit_id", basePigpen.getId());
             queryWrapper.select(" IFNULL(SUM(water_value),'0') waterValue");
             DateTime dateTime = DateUtil.beginOfDay(new Date());
@@ -84,6 +88,7 @@ public class EnergyWaterServiceImpl extends ServiceImpl<EnergyWaterMapper, Energ
     public Result listData(HttpServletRequest httpServletRequest, Map<String, String> paramsMap) {
         String farmId = paramsMap.get("farmId");
         String type = paramsMap.get("type");
+        String displayType = paramsMap.get("displayType");
         String startTime = paramsMap.get("startTime");
         String endTime = paramsMap.get("endTime");
         String id = paramsMap.get("id");//单元id
@@ -94,6 +99,10 @@ public class EnergyWaterServiceImpl extends ServiceImpl<EnergyWaterMapper, Energ
 
         List<EnergyWaterDataVo> energyWaterList = null;
         QueryWrapper<EnergyData> queryWrapper = new QueryWrapper<>();
+        queryWrapper.isNotNull("water_value");
+        if (ObjectUtil.isNotEmpty(displayType)){
+            queryWrapper.eq("display_type",displayType);
+        }
         queryWrapper.eq("farm_id", farmId).eq("unit_id", id);
         //自定义查询
         if ("4".equals(type)) {
@@ -128,6 +137,8 @@ public class EnergyWaterServiceImpl extends ServiceImpl<EnergyWaterMapper, Energ
     @Override
     public Result listPigpenApp(HttpServletRequest httpServletRequest, Map<String, String> paramsMap) {
         String farmId = paramsMap.get("farmId");
+        String displayType = paramsMap.get("displayType");
+
         JSONArray jsonArray = new JSONArray();
         QueryWrapper<BasePigpen> basePigpenQueryWrapper = new QueryWrapper<>();
         basePigpenQueryWrapper.eq("farm_id", farmId).eq("f_type", 3);
@@ -136,6 +147,9 @@ public class EnergyWaterServiceImpl extends ServiceImpl<EnergyWaterMapper, Energ
             JSONObject jsonObject = new JSONObject();
             QueryWrapper<EnergyData> queryWrapper = new QueryWrapper<>();
             queryWrapper.eq("farm_id", farmId).eq("unit_id", basePigpen.getId());
+            if (ObjectUtil.isNotEmpty(displayType)){
+                queryWrapper.eq("display_type",displayType);
+            }
             queryWrapper.select(" IFNULL(SUM(water_value),'0') waterValue");
             DateTime dateTime = DateUtil.beginOfWeek(new Date());
             queryWrapper.ge("create_date", dateTime);

+ 22 - 4
huimv-admin/src/main/resources/com/huimv/admin/mapper/EnergyDataMapper.xml

@@ -70,16 +70,34 @@
         GROUP BY DATE_FORMAT(create_date,'%Y-%m-%d')
         ORDER BY create_date ASC
     </select>
-    <select id="listCount" resultType="com.huimv.admin.entity.vo.EnergyDataVo">
+    <select id="listWaterCount" resultType="com.huimv.admin.entity.vo.EnergyDataVo">
         select Convert((IFNUll(sum(water_value),'0')),DECIMAL(10,2)) 'waterValue',
-        Convert((IFNUll(sum(electricity_value),'0')),DECIMAL(10,2)) 'electricityValue',
-        Convert((IFNUll(sum(feed_value),'0')),DECIMAL(10,2)) 'feedValue',
-        Convert((IFNUll(sum(gas_value),'0')),DECIMAL(10,2)) 'gasValue',
         now() 'nowTime'
          from energy_data
         ${ew.customSqlSegment}
     </select>
 
+    <select id="listElectricityCount" resultType="java.lang.String">
+        select Convert((IFNUll(sum(electricity_value),'0')),DECIMAL(10,2)) 'electricityValue'
+         from energy_data
+        ${ew.customSqlSegment}
+    </select>
+
+
+    <select id="listFeedCount" resultType="java.lang.String">
+        select Convert((IFNUll(sum(feed_value),'0')),DECIMAL(10,2)) 'feedValue'
+         from energy_data
+        ${ew.customSqlSegment}
+    </select>
+
+
+
+    <select id="listGasCount" resultType="java.lang.String">
+        select Convert((IFNUll(sum(gas_value),'0')),DECIMAL(10,2)) 'gasValue'
+         from energy_data
+        ${ew.customSqlSegment}
+    </select>
+
 
 
     <!--为的是给前端不改变值的写法-->