wwh 1 год назад
Родитель
Сommit
adaf4c41d6
21 измененных файлов с 729 добавлено и 683 удалено
  1. 1 1
      huimv-env-admin/src/main/java/com/huimv/env/admin/HuimvAdminApplication.java
  2. 521 484
      huimv-env-admin/src/main/java/com/huimv/env/admin/timer/WaterAndElectricity.java
  3. 0 5
      huimv-env-admin/src/main/resources/mapper/ArrangeListMapper.xml
  4. 0 5
      huimv-env-admin/src/main/resources/mapper/ArrangeRecordMapper.xml
  5. 10 0
      huimv-env-common/src/main/java/com/huimv/env/common/entity/dto/PigpenDto.java
  6. 14 9
      huimv-env-common/src/main/java/com/huimv/env/common/mapper/EnergyDataMapper.java
  7. 3 0
      huimv-env-common/src/main/java/com/huimv/env/common/mapper/EnergyElectricityMapper.java
  8. 6 0
      huimv-env-common/src/main/java/com/huimv/env/common/mapper/EnergyWaterMapper.java
  9. 88 79
      huimv-env-common/src/main/java/com/huimv/env/common/service/impl/EnergyDataServiceImpl.java
  10. 7 30
      huimv-env-common/src/main/java/com/huimv/env/common/service/impl/EnergyElectricityServiceImpl.java
  11. 7 30
      huimv-env-common/src/main/java/com/huimv/env/common/service/impl/EnergyWaterServiceImpl.java
  12. 34 11
      huimv-env-common/src/main/java/resources/com/huimv/env/admin/mapper/EnergyDataMapper.xml
  13. 12 0
      huimv-env-common/src/main/java/resources/com/huimv/env/admin/mapper/EnergyElectricityMapper.xml
  14. 26 0
      huimv-env-common/src/main/java/resources/com/huimv/env/admin/mapper/EnergyWaterMapper.xml
  15. 0 0
      huimv-env-common/src/main/java/resources/com/huimv/env/common/mapper/EnvDataMapper.xml
  16. 0 0
      huimv-env-common/src/main/java/resources/com/huimv/env/common/mapper/EnvDeviceMapper.xml
  17. 0 0
      huimv-env-common/src/main/java/resources/com/huimv/env/common/mapper/EnvWarningInfoMapper.xml
  18. 0 0
      huimv-env-common/src/main/java/resources/com/huimv/env/common/mapper/SysAccountMultilevelMapper.xml
  19. 0 0
      huimv-env-common/src/main/java/resources/com/huimv/env/common/mapper/UserMapper.xml
  20. 0 24
      huimv-env-common/src/main/resources/com/huimv/env/admin/mapper/EnergyWaterMapper.xml
  21. 0 5
      huimv-env-common/src/main/resources/mapper/BaseFarmMapper.xml

+ 1 - 1
huimv-env-admin/src/main/java/com/huimv/env/admin/HuimvAdminApplication.java

@@ -22,8 +22,8 @@ import org.springframework.web.client.RestTemplate;
 @ComponentScans({@ComponentScan("com.huimv.env.common.utils"), @ComponentScan("com.huimv.env.common.service"),@ComponentScan("com.huimv.env.common.config")
         , @ComponentScan("com.huimv.env.admin.service")})
 @EntityScan(value = "com.huimv.env.common.entity")
-@MapperScan("com.huimv.env.common.mapper")
 @MapperScan("com.huimv.env.admin.mapper")
+@MapperScan("com.huimv.env.common.mapper")
 @EnableScheduling
 //@EnableDiscoveryClient
 public class HuimvAdminApplication {

Разница между файлами не показана из-за своего большого размера
+ 521 - 484
huimv-env-admin/src/main/java/com/huimv/env/admin/timer/WaterAndElectricity.java


+ 0 - 5
huimv-env-admin/src/main/resources/mapper/ArrangeListMapper.xml

@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.huimv.env.admin.mapper.ArrangeListMapper">
-
-</mapper>

+ 0 - 5
huimv-env-admin/src/main/resources/mapper/ArrangeRecordMapper.xml

@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.huimv.env.admin.mapper.ArrangeRecordMapper">
-
-</mapper>

+ 10 - 0
huimv-env-common/src/main/java/com/huimv/env/common/entity/dto/PigpenDto.java

@@ -0,0 +1,10 @@
+package com.huimv.env.common.entity.dto;
+
+import lombok.Data;
+
+@Data
+public class PigpenDto {
+    private String buildName;
+    private Integer id;
+    private String value;
+}

+ 14 - 9
huimv-env-common/src/main/java/com/huimv/env/common/mapper/EnergyDataMapper.java

@@ -5,6 +5,8 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.toolkit.Constants;
 
 import com.huimv.env.common.entity.EnergyData;
+import com.huimv.env.common.entity.EnergyElectricity;
+import com.huimv.env.common.entity.EnergyWater;
 import com.huimv.env.common.entity.vo.EnergyAllDataVo;
 import com.huimv.env.common.entity.vo.EnergyDataVo;
 import com.huimv.env.common.entity.vo.EnergyElectricityDataVo;
@@ -29,36 +31,39 @@ public interface EnergyDataMapper extends BaseMapper<EnergyData> {
 //
 //    List<EnergyFeedDataVo> listYear2(@Param(Constants.WRAPPER) QueryWrapper<EnergyData> queryWrapper);
 
-    List<EnergyWaterDataVo> listYear3(@Param(Constants.WRAPPER) QueryWrapper<EnergyData> queryWrapper);
+    List<EnergyWaterDataVo> listYear3(@Param(Constants.WRAPPER) QueryWrapper<EnergyWater> queryWrapper);
 
-    List<EnergyElectricityDataVo> listYear4(@Param(Constants.WRAPPER) QueryWrapper<EnergyData> queryWrapper);
+    List<EnergyElectricityDataVo> listYear4(@Param(Constants.WRAPPER) QueryWrapper<EnergyElectricity> queryWrapper);
 
 //    List<EnergyGasDataVo> listDay(@Param(Constants.WRAPPER) QueryWrapper<EnergyData> queryWrapper);
 //
 //    List<EnergyFeedDataVo> listDay2(@Param(Constants.WRAPPER) QueryWrapper<EnergyData> queryWrapper);
 
-    List<EnergyWaterDataVo> listDay3(@Param(Constants.WRAPPER) QueryWrapper<EnergyData> queryWrapper);
+    List<EnergyWaterDataVo> listDay3(@Param(Constants.WRAPPER) QueryWrapper<EnergyWater> queryWrapper);
 
-    List<EnergyElectricityDataVo> listDay4(@Param(Constants.WRAPPER) QueryWrapper<EnergyData> queryWrapper);
+    List<EnergyElectricityDataVo> listDay4(@Param(Constants.WRAPPER) QueryWrapper<EnergyElectricity> queryWrapper);
 
-    EnergyDataVo listCount(String farmId);
+    EnergyDataVo listCount(String farmId,String time);
+
+    //排名
+    EnergyDataVo listRank(String farmId,String startTime,String endTime,String[] idLists);
 
 //    11111
 //    List<EnergyAllDataVo> listYearGas(@Param(Constants.WRAPPER) QueryWrapper<EnergyData> queryWrapper);
 
-    List<EnergyAllDataVo> listYearWater(@Param(Constants.WRAPPER) QueryWrapper<EnergyData> queryWrapper);
+    List<EnergyAllDataVo> listYearWater(@Param(Constants.WRAPPER) QueryWrapper<EnergyWater> queryWrapper);
 
 //    List<EnergyAllDataVo> listYearFeed(@Param(Constants.WRAPPER) QueryWrapper<EnergyData> queryWrapper);
 
-    List<EnergyAllDataVo> listYearElectricity(@Param(Constants.WRAPPER) QueryWrapper<EnergyData> queryWrapper);
+    List<EnergyAllDataVo> listYearElectricity(@Param(Constants.WRAPPER) QueryWrapper<EnergyElectricity> queryWrapper);
 
 //    List<EnergyAllDataVo> listDayGas(@Param(Constants.WRAPPER) QueryWrapper<EnergyData> queryWrapper);
 
-    List<EnergyAllDataVo> listDayWater(@Param(Constants.WRAPPER) QueryWrapper<EnergyData> queryWrapper);
+    List<EnergyAllDataVo> listDayWater(@Param(Constants.WRAPPER) QueryWrapper<EnergyWater> queryWrapper);
 
 //    List<EnergyAllDataVo> listDayFeed(@Param(Constants.WRAPPER) QueryWrapper<EnergyData> queryWrapper);
 
-    List<EnergyAllDataVo> listDayElectricity(@Param(Constants.WRAPPER) QueryWrapper<EnergyData> queryWrapper);
+    List<EnergyAllDataVo> listDayElectricity(@Param(Constants.WRAPPER) QueryWrapper<EnergyElectricity> queryWrapper);
 
     //能耗使用
     EnergyData listDataCount(@Param(Constants.WRAPPER) QueryWrapper<EnergyData> queryWrapper);

+ 3 - 0
huimv-env-common/src/main/java/com/huimv/env/common/mapper/EnergyElectricityMapper.java

@@ -8,6 +8,7 @@ import com.huimv.env.common.entity.EnergyData;
 import com.huimv.env.common.entity.EnergyElectricity;
 import com.huimv.env.common.entity.EnergyWater;
 import com.huimv.env.common.entity.dto.EnergyDto;
+import com.huimv.env.common.entity.dto.PigpenDto;
 import org.apache.ibatis.annotations.Param;
 import org.springframework.stereotype.Repository;
 
@@ -26,4 +27,6 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 @Repository
 public interface EnergyElectricityMapper extends BaseMapper<EnergyElectricity> {
     EnergyDto listCount(@Param(Constants.WRAPPER) QueryWrapper<EnergyElectricity> queryWrapper);
+
+    List<PigpenDto> listPigpen(String farmId, String id, String startTime);
 }

+ 6 - 0
huimv-env-common/src/main/java/com/huimv/env/common/mapper/EnergyWaterMapper.java

@@ -7,6 +7,8 @@ import com.baomidou.mybatisplus.core.toolkit.Constants;
 import com.huimv.env.common.entity.EnergyElectricity;
 import com.huimv.env.common.entity.EnergyWater;
 import com.huimv.env.common.entity.dto.EnergyDto;
+import com.huimv.env.common.entity.dto.PigpenDto;
+import com.huimv.env.common.entity.vo.EnergyAllDataVo;
 import org.apache.ibatis.annotations.Param;
 import org.springframework.stereotype.Repository;
 
@@ -23,4 +25,8 @@ import java.util.List;
 @Repository
 public interface EnergyWaterMapper extends BaseMapper<EnergyWater> {
     EnergyDto listCount(@Param(Constants.WRAPPER) QueryWrapper<EnergyWater> queryWrapper);
+
+    List<EnergyAllDataVo> listYearWater(@Param(Constants.WRAPPER) QueryWrapper<EnergyWater> queryWrapper);
+
+    List<PigpenDto> listPigpen(String farmId, String id,String startTime);
 }

+ 88 - 79
huimv-env-common/src/main/java/com/huimv/env/common/service/impl/EnergyDataServiceImpl.java

@@ -25,6 +25,7 @@ import org.springframework.stereotype.Service;
 import javax.servlet.http.HttpServletRequest;
 import java.math.BigDecimal;
 import java.text.DecimalFormat;
+import java.text.SimpleDateFormat;
 import java.util.*;
 
 /**
@@ -54,7 +55,9 @@ public class EnergyDataServiceImpl extends ServiceImpl<EnergyDataMapper, EnergyD
         String farmId = paramsMap.get("farmId");
 //        QueryWrapper<EnergyData> queryWrapper = new QueryWrapper<>();
 //        queryWrapper.eq("farm_id", farmId);
-        EnergyDataVo energyDataVo = dataMapper.listCount(farmId);
+        Date monthmorning = DataUill.getTimesMonthmorning();
+        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+        EnergyDataVo energyDataVo = dataMapper.listCount(farmId,sdf.format(monthmorning));
 //        QueryWrapper<EnergyWarningInfo> queryWrapper1 = new QueryWrapper<>();
 //        queryWrapper1.eq("farm_id", farmId);
 //        Integer count = warningInfoMapper.selectCount(queryWrapper1);
@@ -64,6 +67,16 @@ public class EnergyDataServiceImpl extends ServiceImpl<EnergyDataMapper, EnergyD
 ////                Float.parseFloat(energyDataVo.getGasValue()) + Float.parseFloat(energyDataVo.getWaterValue()));
 ////        DecimalFormat df1 = new DecimalFormat("#.00");
 //        energyDataVo.setCount(count);
+        if (ObjectUtil.isEmpty(energyDataVo)) {
+            EnergyDataVo energyDataVo1 = new EnergyDataVo();
+            energyDataVo1.setCount(0);
+            energyDataVo1.setGasValue("0");
+            energyDataVo1.setFeedValue("0");
+            energyDataVo1.setElectricityValue("0");
+            energyDataVo1.setWaterValue("0");
+            energyDataVo1.setNowTime(sdf.format(new Date()));
+            return new Result(ResultCode.SUCCESS, energyDataVo1);
+        }
         return new Result(ResultCode.SUCCESS, energyDataVo);
     }
 
@@ -82,7 +95,7 @@ public class EnergyDataServiceImpl extends ServiceImpl<EnergyDataMapper, EnergyD
             timeType = "3";
         }
 
-        QueryWrapper<EnergyData> dataQueryWrapper = new QueryWrapper<>();
+        QueryWrapper<EnergyWater> dataQueryWrapper = new QueryWrapper<>();
         dataQueryWrapper.eq("farm_id", farmId);
         //用水
         if ("1".equals(dataType)) {
@@ -95,9 +108,11 @@ public class EnergyDataServiceImpl extends ServiceImpl<EnergyDataMapper, EnergyD
             }
             //全年
             if ("3".equals(timeType)) {
+                QueryWrapper<EnergyWater> wrapper = new QueryWrapper<>();
+                wrapper.eq("farm_id", farmId);
                 DateTime dateTime = DateUtil.beginOfYear(new Date());
-                dataQueryWrapper.ge("create_date", dateTime);
-                List<EnergyAllDataVo> energyWaterDataVos = dataMapper.listYearWater(dataQueryWrapper);
+                wrapper.ge("create_date", dateTime);
+                List<EnergyAllDataVo> energyWaterDataVos = waterMapper.listYearWater(wrapper);
                 return new Result(ResultCode.SUCCESS, energyWaterDataVos);
             }
             //本月
@@ -117,32 +132,34 @@ public class EnergyDataServiceImpl extends ServiceImpl<EnergyDataMapper, EnergyD
         }
         //用电
         else if ("2".equals(dataType)) {
+            QueryWrapper<EnergyElectricity> electricityQueryWrapper = new QueryWrapper<>();
+            electricityQueryWrapper.eq("farm_id", farmId);
             //自定义
             if ("4".equals(timeType)) {
                 startTime = startTime + " 00:00:00";
                 endTime = endTime + " 23:59:59";
-                dataQueryWrapper.between("create_date", startTime, endTime);
-                return new Result(ResultCode.SUCCESS, dataMapper.listDayElectricity(dataQueryWrapper));
+                electricityQueryWrapper.between("create_date", startTime, endTime);
+                return new Result(ResultCode.SUCCESS, dataMapper.listDayElectricity(electricityQueryWrapper));
             }
             //全年
             if ("3".equals(timeType)) {
                 DateTime dateTime = DateUtil.beginOfYear(new Date());
-                dataQueryWrapper.ge("create_date", dateTime);
-                List<EnergyAllDataVo> energyElectricityDataVos = dataMapper.listYearElectricity(dataQueryWrapper);
+                electricityQueryWrapper.ge("create_date", dateTime);
+                List<EnergyAllDataVo> energyElectricityDataVos = dataMapper.listYearElectricity(electricityQueryWrapper);
                 return new Result(ResultCode.SUCCESS, energyElectricityDataVos);
             }
             //本月
             if ("2".equals(timeType)) {
                 Date timesMonthmorning = DataUill.getTimesMonthmorning();
-                dataQueryWrapper.ge("create_date", timesMonthmorning);
-                return new Result(ResultCode.SUCCESS, dataMapper.listDayElectricity(dataQueryWrapper));
+                electricityQueryWrapper.ge("create_date", timesMonthmorning);
+                return new Result(ResultCode.SUCCESS, dataMapper.listDayElectricity(electricityQueryWrapper));
             }
             //本周
             if ("1".equals(timeType)) {
                 Calendar calendar = Calendar.getInstance();
                 calendar.set(Calendar.DATE, calendar.get(Calendar.DATE) - 7);
-                dataQueryWrapper.ge("create_date", calendar.getTime());
-                List<EnergyAllDataVo> energyElectricityDataVos = dataMapper.listDayElectricity(dataQueryWrapper);
+                electricityQueryWrapper.ge("create_date", calendar.getTime());
+                List<EnergyAllDataVo> energyElectricityDataVos = dataMapper.listDayElectricity(electricityQueryWrapper);
                 return new Result(ResultCode.SUCCESS, energyElectricityDataVos);
             }
         }
@@ -224,98 +241,88 @@ public class EnergyDataServiceImpl extends ServiceImpl<EnergyDataMapper, EnergyD
         if (timeType == null || timeType == "") {
             timeType = "3";
         }
-        QueryWrapper<BasePigpen> basePigpenQueryWrapper = new QueryWrapper<>();
-        basePigpenQueryWrapper.eq("farm_id", farmId);
         JSONArray jsonArray = new JSONArray();
-        basePigpenQueryWrapper.eq("parent_id", 0);
-        List<BasePigpen> basePigpens = basePigpenMapper.selectList(basePigpenQueryWrapper);//得到所有的栋舍
-        for (BasePigpen basePigpen : basePigpens) {
-            QueryWrapper<BasePigpen> queryWrapper = new QueryWrapper<>();
-            queryWrapper.eq("farm_id", farmId).eq("parent_id", basePigpen.getId()).eq("f_type", 2);
-            List<BasePigpen> pigpens = basePigpenMapper.selectList(queryWrapper);//得到所有的楼层
-            Float value = 0.00f;
-            for (BasePigpen pigpen : pigpens) {
-                QueryWrapper<BasePigpen> queryWrapper1 = new QueryWrapper<>();
-                queryWrapper1.like("other2", pigpen.getId()).eq("farm_id", farmId);
-                List<BasePigpen> basePigpens1 = basePigpenMapper.selectList(queryWrapper1);
-                List<Integer> idList = new ArrayList<>();
-                basePigpens1.forEach(item -> {
-                    idList.add(item.getId());
-                });//某一层所有单元的id
-                QueryWrapper<EnergyData> dataQueryWrapper = new QueryWrapper<>();
-                if (ObjectUtil.isNotEmpty(idList)) {
-                    dataQueryWrapper.eq("farm_id", farmId).in("unit_id", idList);
-                } else {
-                    dataQueryWrapper.eq("farm_id", farmId);
-                }
-
 
+        QueryWrapper<BasePigpen> queryWrapper = new QueryWrapper<>();
+        queryWrapper.eq("farm_id", farmId).eq("f_type", 2);
+        List<BasePigpen> pigpens = basePigpenMapper.selectList(queryWrapper);//得到所有的楼层
+        for (BasePigpen pigpen : pigpens) {
+            Float value = 0.00f;
+            JSONObject jsonObject = new JSONObject();
+            QueryWrapper<BasePigpen> queryWrapper1 = new QueryWrapper<>();
+            queryWrapper1.like("other2", pigpen.getId()).eq("farm_id", farmId).ne("id", pigpen.getId());
+            List<BasePigpen> basePigpens1 = basePigpenMapper.selectList(queryWrapper1);
+            List<Integer> idList = new ArrayList<>();
+            basePigpens1.forEach(item -> {
+                idList.add(item.getId());
+            });//某一层所有单元的id
+
+            QueryWrapper<EnergyWater> waterWrapper = new QueryWrapper<>();
+            QueryWrapper<EnergyData> gasWrapper = new QueryWrapper<>();
+            QueryWrapper<EnergyElectricity> electricityWrapper = new QueryWrapper<>();
+            QueryWrapper<EnergyData> feedWrapper = new QueryWrapper<>();
+            if (idList.size() != 0) {
+                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);
-                JSONObject jsonObject = new JSONObject();
-
-
+                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)) {
-                    if (Float.parseFloat(energyData.getWaterValue()) != 0.0f) {
-                        value = value + Float.parseFloat(energyData.getWaterValue());
-                        jsonObject.put("value", value);
-                    } else {
-                        jsonObject.put("value", 0);
-                    }
+                    value = Float.parseFloat(waterMapper.selectOne(waterWrapper).getWaterValue());
+                    jsonObject.put("value", value);
                 }
                 if ("2".equals(dataType)) {
-                    if (Float.parseFloat(energyData.getElectricityValue()) != 0.0f) {
-                        value = value + Float.parseFloat(energyData.getElectricityValue());
-                        jsonObject.put("value", value);
-                    } else {
-                        jsonObject.put("value", 0);
-                    }
+                    value = Float.parseFloat(electricityMapper.selectOne(electricityWrapper).getElectricityValue());
+                    jsonObject.put("value", value);
                 }
                 if ("3".equals(dataType)) {
-                    if (Float.parseFloat(energyData.getFeedValue()) != 0.0f) {
-                        value = value + Float.parseFloat(energyData.getFeedValue());
-                        jsonObject.put("value", value);
-                    } else {
-                        jsonObject.put("value", 0);
-                    }
+                    value = Float.parseFloat(dataMapper.selectOne(feedWrapper).getFeedValue());
+                    jsonObject.put("value", value);
                 }
                 if ("4".equals(dataType)) {
-                    if (Float.parseFloat(energyData.getGasValue()) != 0.0f) {
-                        value = value + Float.parseFloat(energyData.getGasValue());
-                        jsonObject.put("value", value);
-                    } else {
-                        jsonObject.put("value", 0);
-                    }
+                    value = Float.parseFloat(dataMapper.selectOne(gasWrapper).getGasValue());
+                    jsonObject.put("value", value);
                 }
-                jsonObject.put("buildName", pigpen.getBuildName());
-                jsonArray.add(jsonObject);
-                value = 0.00f;
+            } else {
+                jsonObject.put("value", 0);
             }
+            jsonObject.put("buildName", pigpen.getBuildName());
+            jsonArray.add(jsonObject);
         }
 
         JSONArray arraySort = jsonArraySort(jsonArray, "value", true);
@@ -325,12 +332,14 @@ public class EnergyDataServiceImpl extends ServiceImpl<EnergyDataMapper, EnergyD
     @Override
     public Result listDataScreen(HttpServletRequest httpServletRequest, Map<String, String> paramsMap) {
         String farmId = paramsMap.get("farmId");
-        QueryWrapper<EnergyData> queryWrapper = new QueryWrapper<>();
+        QueryWrapper<EnergyWater> queryWrapper = new QueryWrapper<>();
         queryWrapper.eq("farm_id", farmId);
+        QueryWrapper<EnergyElectricity> queryWrapper2 = new QueryWrapper<>();
+        queryWrapper2.eq("farm_id", farmId);
 //        List<EnergyAllDataVo> energyGasDataVos = dataMapper.listDayGas(queryWrapper);
 //        List<EnergyAllDataVo> energyFeedDataVos = dataMapper.listDayFeed(queryWrapper);
         List<EnergyAllDataVo> energyWaterDataVos = dataMapper.listDayWater(queryWrapper);
-        List<EnergyAllDataVo> energyElectricityDataVos = dataMapper.listDayElectricity(queryWrapper);
+        List<EnergyAllDataVo> energyElectricityDataVos = dataMapper.listDayElectricity(queryWrapper2);
         JSONObject jsonObject = new JSONObject();
 //        jsonObject.put("gas", energyGasDataVos);
         jsonObject.put("water", energyWaterDataVos);

+ 7 - 30
huimv-env-common/src/main/java/com/huimv/env/common/service/impl/EnergyElectricityServiceImpl.java

@@ -12,6 +12,7 @@ import com.huimv.common.utils.DataUill;
 import com.huimv.env.common.entity.BasePigpen;
 import com.huimv.env.common.entity.EnergyData;
 import com.huimv.env.common.entity.EnergyElectricity;
+import com.huimv.env.common.entity.dto.PigpenDto;
 import com.huimv.env.common.entity.vo.EnergyElectricityDataVo;
 import com.huimv.env.common.mapper.BasePigpenMapper;
 import com.huimv.env.common.mapper.EnergyDataMapper;
@@ -24,6 +25,7 @@ import org.springframework.stereotype.Service;
 
 import javax.servlet.http.HttpServletRequest;
 import java.text.DecimalFormat;
+import java.text.SimpleDateFormat;
 import java.util.Calendar;
 import java.util.Date;
 import java.util.List;
@@ -51,35 +53,10 @@ public class EnergyElectricityServiceImpl extends ServiceImpl<EnergyElectricityM
     public Result listPigpen(HttpServletRequest httpServletRequest, Map<String, String> paramsMap) {
         String farmId = paramsMap.get("farmId");
         String id = paramsMap.get("id");//层id
-
-        JSONArray jsonArray = new JSONArray();
-        QueryWrapper<BasePigpen> basePigpenQueryWrapper = new QueryWrapper<>();
-        basePigpenQueryWrapper.eq("farm_id", farmId).like("other2", id);
-        List<BasePigpen> basePigpens = basePigpenMapper.selectList(basePigpenQueryWrapper);//所有的单元
-        for (BasePigpen basePigpen : basePigpens) {
-            JSONObject jsonObject = new JSONObject();
-            QueryWrapper<EnergyData> queryWrapper = new QueryWrapper<>();
-            queryWrapper.eq("farm_id", farmId).eq("unit_id", basePigpen.getId());
-            queryWrapper.select(" IFNULL(SUM(electricity_value),'0') electricityValue");
-            DateTime dateTime = DateUtil.beginOfDay(new Date());
-            queryWrapper.ge("create_date", dateTime);
-
-            EnergyData energyElectricity = dataMapper.selectOne(queryWrapper);
-            if (ObjectUtil.isEmpty(energyElectricity)) {
-                jsonObject.put("buildName", basePigpen.getBuildName());
-                jsonObject.put("value", 0);
-                jsonObject.put("id", basePigpen.getId());
-            } else {
-                DecimalFormat df = new DecimalFormat("0.00");
-                jsonObject.put("buildName", basePigpen.getBuildName());
-                jsonObject.put("value", df.format(Float.parseFloat(energyElectricity.getElectricityValue())));
-                jsonObject.put("id", basePigpen.getId());
-            }
-            jsonArray.add(jsonObject);
-        }
-
-
-        return new Result(ResultCode.SUCCESS, jsonArray);
+        DateTime dateTime = DateUtil.beginOfDay(new Date());
+        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+        List<PigpenDto> pigpenDtos = energyElectricityMapper.listPigpen(farmId, id,sdf.format(dateTime));
+        return new Result(ResultCode.SUCCESS, pigpenDtos);
     }
 
     @Override
@@ -94,7 +71,7 @@ public class EnergyElectricityServiceImpl extends ServiceImpl<EnergyElectricityM
             type = "3";
         }
 
-        QueryWrapper<EnergyData> queryWrapper = new QueryWrapper<>();
+        QueryWrapper<EnergyElectricity> queryWrapper = new QueryWrapper<>();
         queryWrapper.eq("farm_id", farmId).eq("unit_id", id);
         List<EnergyElectricityDataVo> electricityList = null;
         //自定义查询

+ 7 - 30
huimv-env-common/src/main/java/com/huimv/env/common/service/impl/EnergyWaterServiceImpl.java

@@ -11,6 +11,7 @@ import com.huimv.common.utils.DataUill;
 import com.huimv.env.common.entity.BasePigpen;
 import com.huimv.env.common.entity.EnergyData;
 import com.huimv.env.common.entity.EnergyWater;
+import com.huimv.env.common.entity.dto.PigpenDto;
 import com.huimv.env.common.entity.vo.EnergyWaterDataVo;
 import com.huimv.env.common.mapper.BasePigpenMapper;
 import com.huimv.env.common.mapper.EnergyDataMapper;
@@ -23,6 +24,7 @@ import org.springframework.stereotype.Service;
 
 import javax.servlet.http.HttpServletRequest;
 import java.text.DecimalFormat;
+import java.text.SimpleDateFormat;
 import java.util.Calendar;
 import java.util.Date;
 import java.util.List;
@@ -50,35 +52,10 @@ public class EnergyWaterServiceImpl extends ServiceImpl<EnergyWaterMapper, Energ
     public Result listPigpen(HttpServletRequest httpServletRequest, Map<String, String> paramsMap) {
         String farmId = paramsMap.get("farmId");
         String id = paramsMap.get("id");//层id
-
-        JSONArray jsonArray = new JSONArray();
-        QueryWrapper<BasePigpen> basePigpenQueryWrapper = new QueryWrapper<>();
-        basePigpenQueryWrapper.eq("farm_id", farmId).like("other2", id);
-        List<BasePigpen> basePigpenList = basePigpenMapper.selectList(basePigpenQueryWrapper);//得到所有的单元
-        for (BasePigpen basePigpen : basePigpenList) {
-            JSONObject jsonObject = new JSONObject();
-            QueryWrapper<EnergyData> queryWrapper = new QueryWrapper<>();
-            queryWrapper.eq("farm_id", farmId).eq("unit_id", basePigpen.getId());
-            queryWrapper.select(" IFNULL(SUM(water_value),'0') waterValue");
-            DateTime dateTime = DateUtil.beginOfDay(new Date());
-            queryWrapper.ge("create_date", dateTime);
-
-            EnergyData energyWater = dataMapper.selectOne(queryWrapper);
-            if (ObjectUtil.isEmpty(energyWater)) {
-                jsonObject.put("buildName", basePigpen.getBuildName());
-                jsonObject.put("value", 0);
-                jsonObject.put("id", basePigpen.getId());
-            } else {
-                DecimalFormat df = new DecimalFormat("0.00");
-                jsonObject.put("buildName", basePigpen.getBuildName());
-                jsonObject.put("value",df.format(Float.parseFloat(energyWater.getWaterValue())));
-                jsonObject.put("id", basePigpen.getId());
-            }
-            jsonArray.add(jsonObject);
-        }
-
-
-        return new Result(ResultCode.SUCCESS, jsonArray);
+        DateTime dateTime = DateUtil.beginOfDay(new Date());
+        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+        List<PigpenDto> pigpenDtos = energyWaterMapper.listPigpen(farmId, id,sdf.format(dateTime));
+        return new Result(ResultCode.SUCCESS, pigpenDtos);
     }
 
     @Override
@@ -94,7 +71,7 @@ public class EnergyWaterServiceImpl extends ServiceImpl<EnergyWaterMapper, Energ
         }
 
         List<EnergyWaterDataVo> energyWaterList = null;
-        QueryWrapper<EnergyData> queryWrapper = new QueryWrapper<>();
+        QueryWrapper<EnergyWater> queryWrapper = new QueryWrapper<>();
         queryWrapper.eq("farm_id", farmId).eq("unit_id", id);
         //自定义查询
         if ("4".equals(type)) {

+ 34 - 11
huimv-env-common/src/main/java/resources/com/huimv/env/admin/mapper/EnergyDataMapper.xml

@@ -47,37 +47,60 @@
 <!--        ORDER BY create_date ASC-->
 <!--    </select>-->
     <select id="listYear3" resultType="com.huimv.env.common.entity.vo.EnergyWaterDataVo">
-        SELECT Convert((IFNUll(sum(water_value),'0')),DECIMAL(10,2)) 'waterValue',create_date 'createDate' FROM `energy_data`
+        SELECT Convert((IFNUll(sum(water_value),'0')),DECIMAL(10,2)) 'waterValue',create_date 'createDate' FROM `energy_water`
          ${ew.customSqlSegment}
         GROUP BY DATE_FORMAT(create_date,'%Y-%m')
         ORDER BY create_date ASC
     </select>
     <select id="listDay3" resultType="com.huimv.env.common.entity.vo.EnergyWaterDataVo">
-        SELECT Convert((IFNUll(sum(water_value),'0')),DECIMAL(10,2)) 'waterValue',create_date 'createDate' FROM `energy_data`
+        SELECT Convert((IFNUll(sum(water_value),'0')),DECIMAL(10,2)) 'waterValue',create_date 'createDate' FROM `energy_water`
          ${ew.customSqlSegment}
         GROUP BY DATE_FORMAT(create_date,'%Y-%m-%d')
         ORDER BY create_date ASC
     </select>
     <select id="listYear4" resultType="com.huimv.env.common.entity.vo.EnergyElectricityDataVo">
-        SELECT Convert((IFNUll(sum(electricity_value),'0')),DECIMAL(10,2)) 'electricityValue',create_date 'createDate' FROM `energy_data`
+        SELECT Convert((IFNUll(sum(electricity_value),'0')),DECIMAL(10,2)) 'electricityValue',create_date 'createDate' FROM `energy_electricity`
          ${ew.customSqlSegment}
         GROUP BY DATE_FORMAT(create_date,'%Y-%m')
         ORDER BY create_date ASC
     </select>
     <select id="listDay4" resultType="com.huimv.env.common.entity.vo.EnergyElectricityDataVo">
-        SELECT Convert((IFNUll(sum(electricity_value),'0')),DECIMAL(10,2)) 'electricityValue',create_date 'createDate' FROM `energy_data`
+        SELECT Convert((IFNUll(sum(electricity_value),'0')),DECIMAL(10,2)) 'electricityValue',create_date 'createDate' FROM `energy_electricity`
          ${ew.customSqlSegment}
         GROUP BY DATE_FORMAT(create_date,'%Y-%m-%d')
         ORDER BY create_date ASC
     </select>
     <select id="listCount" resultType="com.huimv.env.common.entity.vo.EnergyDataVo">
-        SELECT a.waterValue,b.electricityValue,a.farmId,NOW() nowTime  FROM
-(select Convert((IFNUll(sum(water_value),'0')),DECIMAL(10,2)) 'waterValue',farm_id farmId FROM energy_water WHERE farm_id=#{farmId}) a
+        SELECT a.waterValue,b.electricityValue,a.farmId,NOW() nowTime,0 gasValue,0 feedValue,0 count FROM
+(select Convert((IFNUll(sum(water_value),'0')),DECIMAL(10,2)) 'waterValue',farm_id farmId FROM energy_water WHERE farm_id=#{farmId} and create_date>#{time}) a
 INNER JOIN (select Convert((IFNUll(sum(electricity_value),'0')),DECIMAL(10,2)) 'electricityValue',farm_id farmId FROM energy_electricity
- WHERE farm_id=#{farmId}) b
+ WHERE farm_id=#{farmId} and create_date>#{time}) b
 ON a.farmId=b.farmId
     </select>
 
+    <select id="listRank" resultType="com.huimv.env.common.entity.vo.EnergyDataVo">
+        SELECT IFNULL(a.waterValue,'0') waterValue,IFNULL(b.electricityValue,'0') electricityValue,a.farmId,0 gasValue,0 feedValue  FROM
+(select IFNUll(sum(water_value),'0') 'waterValue',farm_id farmId FROM energy_water
+WHERE farm_id=#{farmId} and create_date between #{startTime} and #{endTime}
+<if test="idLists !=null">
+    and unit_id in
+    <foreach collection="idLists" item="idList" separator="," open="(" close=")">
+        #{idList}
+    </foreach>
+</if>
+) a
+INNER JOIN
+(select IFNUll(sum(electricity_value),'0') 'electricityValue',farm_id farmId FROM energy_electricity
+ WHERE farm_id=#{farmId} and create_date between #{startTime} and #{endTime}
+        <if test="idLists !=null">
+            and unit_id in
+            <foreach collection="idLists" item="idList" separator="," open="(" close=")">
+                #{idList}
+            </foreach>
+        </if>
+ ) b
+ON a.farmId=b.farmId
+    </select>
 
 
 <!--    &lt;!&ndash;为的是给前端不改变值的写法&ndash;&gt;-->
@@ -107,25 +130,25 @@ ON a.farmId=b.farmId
 <!--        ORDER BY create_date ASC-->
 <!--    </select>-->
     <select id="listYearWater" resultType="com.huimv.env.common.entity.vo.EnergyAllDataVo">
-        SELECT Convert((IFNUll(sum(water_value),'0')),DECIMAL(10,2)) 'value',create_date 'createDate' FROM `energy_data`
+        SELECT Convert((IFNUll(sum(water_value),'0')),DECIMAL(10,2)) 'value',create_date 'createDate' FROM `energy_water`
          ${ew.customSqlSegment}
         GROUP BY DATE_FORMAT(create_date,'%Y-%m')
         ORDER BY create_date ASC
     </select>
     <select id="listDayWater" resultType="com.huimv.env.common.entity.vo.EnergyAllDataVo">
-        SELECT Convert((IFNUll(sum(water_value),'0')),DECIMAL(10,2)) 'value',create_date 'createDate' FROM `energy_data`
+        SELECT Convert((IFNUll(sum(water_value),'0')),DECIMAL(10,2)) 'value',create_date 'createDate' FROM `energy_water`
          ${ew.customSqlSegment}
         GROUP BY DATE_FORMAT(create_date,'%Y-%m-%d')
         ORDER BY create_date ASC
     </select>
     <select id="listYearElectricity" resultType="com.huimv.env.common.entity.vo.EnergyAllDataVo">
-        SELECT Convert((IFNUll(sum(electricity_value),'0')),DECIMAL(10,2)) 'value',create_date 'createDate' FROM `energy_data`
+        SELECT Convert((IFNUll(sum(electricity_value),'0')),DECIMAL(10,2)) 'value',create_date 'createDate' FROM `energy_electricity`
          ${ew.customSqlSegment}
         GROUP BY DATE_FORMAT(create_date,'%Y-%m')
         ORDER BY create_date ASC
     </select>
     <select id="listDayElectricity" resultType="com.huimv.env.common.entity.vo.EnergyAllDataVo">
-        SELECT Convert((IFNUll(sum(electricity_value),'0')),DECIMAL(10,2)) 'value',create_date 'createDate' FROM `energy_data`
+        SELECT Convert((IFNUll(sum(electricity_value),'0')),DECIMAL(10,2)) 'value',create_date 'createDate' FROM `energy_electricity`
          ${ew.customSqlSegment}
         GROUP BY DATE_FORMAT(create_date,'%Y-%m-%d')
         ORDER BY create_date ASC

+ 12 - 0
huimv-env-common/src/main/java/resources/com/huimv/env/admin/mapper/EnergyElectricityMapper.xml

@@ -22,4 +22,16 @@
         ${ew.customSqlSegment}
 
     </select>
+
+    <select id="listPigpen" resultType="com.huimv.env.common.entity.dto.PigpenDto">
+        SELECT Convert((IFNUll(sum(c.electricityValue),'0')),DECIMAL(10,2)) value,c.id id,c.buildName buildName
+FROM
+(select a.electricityValue electricityValue,b.id,b.buildName FROM
+(select electricity_value 'electricityValue',unit_id unitId FROM energy_electricity where create_date>=#{startTime}
+) a
+right JOIN
+(select id,build_name buildName from base_pigpen WHERE farm_id=#{farmId} and other2 like CONCAT('%',#{id},'%') ) b
+ON a.unitId=b.id) c
+GROUP BY c.id
+    </select>
 </mapper>

+ 26 - 0
huimv-env-common/src/main/java/resources/com/huimv/env/admin/mapper/EnergyWaterMapper.xml

@@ -24,4 +24,30 @@
         GROUP BY w.unit_id
         ORDER BY w.unit_id ASC
     </select>
+<!--    <select id="listCount" resultType="com.huimv.env.common.entity.dto.EnergyDto">-->
+<!--        select Convert((IFNUll(sum(water_value),'0')),DECIMAL(10,2)) 'waterCount'-->
+<!--        from energy_water-->
+<!--        ${ew.customSqlSegment}-->
+<!--    </select>-->
+
+    <select id="listYearWater" resultType="com.huimv.env.common.entity.vo.EnergyAllDataVo">
+        SELECT Convert((IFNUll(sum(water_value),'0')),DECIMAL(10,2)) 'value',create_date 'createDate' FROM `energy_water`
+         ${ew.customSqlSegment}
+        GROUP BY DATE_FORMAT(create_date,'%Y-%m')
+        ORDER BY create_date ASC
+    </select>
+
+
+
+    <select id="listPigpen" resultType="com.huimv.env.common.entity.dto.PigpenDto">
+        SELECT Convert((IFNUll(sum(c.waterValue),'0')),DECIMAL(10,2)) value,c.id id,c.buildName buildName
+FROM
+(select a.waterValue waterValue,b.id,b.buildName FROM
+(select water_value'waterValue',unit_id unitId FROM energy_water where create_date>=#{startTime}
+) a
+right JOIN
+(select id,build_name buildName from base_pigpen WHERE farm_id=#{farmId} and other2 like CONCAT('%',#{id},'%') ) b
+ON a.unitId=b.id) c
+GROUP BY c.id
+    </select>
 </mapper>

huimv-env-common/src/main/java/resources/com/huimv/env/admin/mapper/EnvDataMapper.xml → huimv-env-common/src/main/java/resources/com/huimv/env/common/mapper/EnvDataMapper.xml


huimv-env-common/src/main/java/resources/com/huimv/env/admin/mapper/EnvDeviceMapper.xml → huimv-env-common/src/main/java/resources/com/huimv/env/common/mapper/EnvDeviceMapper.xml


huimv-env-common/src/main/java/resources/com/huimv/env/admin/mapper/EnvWarningInfoMapper.xml → huimv-env-common/src/main/java/resources/com/huimv/env/common/mapper/EnvWarningInfoMapper.xml


huimv-env-common/src/main/java/resources/com/huimv/env/admin/mapper/SysAccountMultilevelMapper.xml → huimv-env-common/src/main/java/resources/com/huimv/env/common/mapper/SysAccountMultilevelMapper.xml


huimv-env-common/src/main/java/resources/com/huimv/env/admin/mapper/UserMapper.xml → huimv-env-common/src/main/java/resources/com/huimv/env/common/mapper/UserMapper.xml


+ 0 - 24
huimv-env-common/src/main/resources/com/huimv/env/admin/mapper/EnergyWaterMapper.xml

@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.huimv.env.common.mapper.EnergyWaterMapper">
-
-    <!-- 通用查询映射结果 -->
-    <resultMap id="BaseResultMap" type="com.huimv.env.common.entity.EnergyWater">
-        <id column="id" property="id" />
-        <result column="water_value" property="waterValue" />
-        <result column="original_value" property="originalValue" />
-        <result column="original_date" property="originalDate" />
-        <result column="unit_id" property="unitId" />
-        <result column="farm_id" property="farmId" />
-        <result column="other1" property="other1" />
-        <result column="other2" property="other2" />
-        <result column="other3" property="other3" />
-        <result column="create_date" property="createDate"/>
-    </resultMap>
-<!--    &#45;&#45;         w.create_date 'createDate',-->
-    <select id="listCount" resultType="com.huimv.env.common.entity.dto.EnergyDto">
-        select Convert((IFNUll(sum(water_value),'0')),DECIMAL(10,2)) 'waterCount'
-        from energy_water
-        ${ew.customSqlSegment}
-    </select>
-</mapper>

+ 0 - 5
huimv-env-common/src/main/resources/mapper/BaseFarmMapper.xml

@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.huimv.env.common.mapper.BaseFarmMapper">
-
-</mapper>