wwh 1 年間 前
コミット
38ad2e7745

+ 6 - 1
huimv-admin/src/main/java/com/huimv/admin/service/IEnvDataService.java

@@ -1,8 +1,13 @@
 package com.huimv.admin.service;
 
+import com.huimv.admin.common.utils.Result;
 import com.huimv.admin.entity.EnvData;
 import com.baomidou.mybatisplus.extension.service.IService;
 
+import javax.servlet.http.HttpServletRequest;
+import java.text.ParseException;
+import java.util.Map;
+
 /**
  * <p>
  *  服务类
@@ -12,5 +17,5 @@ import com.baomidou.mybatisplus.extension.service.IService;
  * @since 2023-02-14
  */
 public interface IEnvDataService extends IService<EnvData> {
-
+    Result add(HttpServletRequest httpServletRequest, Map<String,String> paramsMap) throws ParseException;
 }

+ 31 - 0
huimv-admin/src/main/java/com/huimv/admin/service/impl/EnvDataServiceImpl.java

@@ -1,11 +1,19 @@
 package com.huimv.admin.service.impl;
 
+import com.huimv.admin.common.utils.Result;
 import com.huimv.admin.entity.EnvData;
 import com.huimv.admin.mapper.EnvDataMapper;
 import com.huimv.admin.service.IEnvDataService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import javax.servlet.http.HttpServletRequest;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import java.util.Map;
+
 /**
  * <p>
  *  服务实现类
@@ -17,4 +25,27 @@ import org.springframework.stereotype.Service;
 @Service
 public class EnvDataServiceImpl extends ServiceImpl<EnvDataMapper, EnvData> implements IEnvDataService {
 
+    @Autowired
+    private EnvDataMapper dataMapper;
+
+    @Override
+    public Result add(HttpServletRequest httpServletRequest, Map<String, String> paramsMap) throws ParseException {
+        String temp = paramsMap.get("temp");
+        String hum = paramsMap.get("hum");
+        String time = paramsMap.get("time");
+        String farmId = paramsMap.get("farmId");
+        String unitId = paramsMap.get("unitId");
+        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+        if ("".equals(time) || null == time) {
+            time = sdf.format(new Date());
+        }
+        EnvData data = new EnvData();
+        data.setEnvTemp(temp);
+        data.setEnvHum(hum);
+        data.setFarmId(Integer.parseInt(farmId));
+        data.setCreateTime(sdf.parse(time));
+        data.setUnitId(Integer.parseInt(unitId));
+        data.setOther1("1");//表示为
+        return null;
+    }
 }

+ 184 - 85
huimv-admin/src/main/java/com/huimv/admin/service/impl/EnvDeviceServiceImpl.java

@@ -20,6 +20,7 @@ import com.huimv.admin.common.utils.ResultCode;
 import com.huimv.admin.entity.*;
 import com.huimv.admin.entity.dto.DeviceDto;
 import com.huimv.admin.entity.vo.EnvDataVo;
+import com.huimv.admin.entity.vo.WriteEnvDataVo;
 import com.huimv.admin.entity.zengxindto.*;
 import com.huimv.admin.mapper.*;
 import com.huimv.admin.service.IEnvDeviceService;
@@ -63,6 +64,8 @@ public class EnvDeviceServiceImpl extends ServiceImpl<EnvDeviceMapper, EnvDevice
     private EnvWarningInfoMapper warningInfoMapper;
     @Autowired
     private EnvNh3nMapper nh3nMapper;
+    @Autowired
+    private WriteEnvDataMapper writeEnvDataMapper;
 
     @Override
     public Result count(HttpServletRequest httpServletRequest, Map<String, String> paramsMap) {
@@ -184,7 +187,10 @@ public class EnvDeviceServiceImpl extends ServiceImpl<EnvDeviceMapper, EnvDevice
     public Result listPigpen(HttpServletRequest httpServletRequest, Map<String, String> paramsMap) {
         String farmId = paramsMap.get("farmId");
         String id = paramsMap.get("id");//楼层id
-
+        String displayType = paramsMap.get("displayType");
+        if ("".equals(displayType) || null == displayType) {
+            displayType = "0";
+        }
         JSONArray jsonArray = new JSONArray();
         QueryWrapper<BasePigpen> queryWrapper = new QueryWrapper<>();
         queryWrapper.eq("farm_id", farmId);
@@ -198,22 +204,39 @@ public class EnvDeviceServiceImpl extends ServiceImpl<EnvDeviceMapper, EnvDevice
            /* QueryWrapper<EnvDevice> queryWrapper1 = new QueryWrapper<>();
             queryWrapper1.eq("unit_name",basePigpens.get(i).getId());
             EnvDevice envDevice = envDeviceMapper.selectOne(queryWrapper1);//找到栋舍绑定的设备,利用单元id*/
-
-            QueryWrapper<EnvData> queryWrapper2 = new QueryWrapper<>();
-            queryWrapper2.eq("unit_id", basePigpens.get(i).getId()).orderByDesc("create_time").last(" limit 1");//通过设备id来拿取数据
-            EnvData envData = dataMapper.selectOne(queryWrapper2);
             JSONObject jsonObject = new JSONObject();
-            if (ObjectUtil.isEmpty(envData)) {
-                jsonObject.put("temp", 0);//温度
-                jsonObject.put("hum", 0);//湿度
-                jsonObject.put("location", basePigpens.get(i).getBuildName());
-                jsonObject.put("unit_id", basePigpens.get(i).getId());//单元id
+            if (displayType.equals("0")) {
+                QueryWrapper<EnvData> queryWrapper2 = new QueryWrapper<>();
+                queryWrapper2.eq("unit_id", basePigpens.get(i).getId()).orderByDesc("create_time").last(" limit 1");//通过设备id来拿取数据
+                EnvData envData = dataMapper.selectOne(queryWrapper2);
+                if (ObjectUtil.isEmpty(envData)) {
+                    jsonObject.put("temp", 0);//温度
+                    jsonObject.put("hum", 0);//湿度
+                    jsonObject.put("location", basePigpens.get(i).getBuildName());
+                    jsonObject.put("unit_id", basePigpens.get(i).getId());//单元id
+                } else {
+                    jsonObject.put("temp", envData.getEnvTemp());//温度
+                    jsonObject.put("hum", envData.getEnvHum());//湿度
+                    jsonObject.put("location", basePigpens.get(i).getBuildName());
+                    jsonObject.put("unit_id", envData.getUnitId());//单元id
+                }
             } else {
-                jsonObject.put("temp", envData.getEnvTemp());//温度
-                jsonObject.put("hum", envData.getEnvHum());//湿度
-                jsonObject.put("location", basePigpens.get(i).getBuildName());
-                jsonObject.put("unit_id", envData.getUnitId());//单元id
+                QueryWrapper<WriteEnvData> queryWrapper1 = new QueryWrapper<>();
+                queryWrapper1.eq("unit_id", basePigpens.get(i).getId()).orderByDesc("create_time").last(" limit 1");//通过设备id来拿取数据
+                WriteEnvData writeEnvData = writeEnvDataMapper.selectOne(queryWrapper1);
+                if (ObjectUtil.isEmpty(writeEnvData)) {
+                    jsonObject.put("temp", 0);//温度
+                    jsonObject.put("hum", 0);//湿度
+                    jsonObject.put("location", basePigpens.get(i).getBuildName());
+                    jsonObject.put("unit_id", basePigpens.get(i).getId());//单元id
+                } else {
+                    jsonObject.put("temp", writeEnvData.getTemp());//温度
+                    jsonObject.put("hum", writeEnvData.getHum());//湿度
+                    jsonObject.put("location", basePigpens.get(i).getBuildName());
+                    jsonObject.put("unit_id", writeEnvData.getUnitId());//单元id
+                }
             }
+
             jsonArray.add(jsonObject);
         }
         return new Result(ResultCode.SUCCESS, jsonArray);
@@ -226,59 +249,104 @@ public class EnvDeviceServiceImpl extends ServiceImpl<EnvDeviceMapper, EnvDevice
         String type = paramsMap.get("type");//查询类型
         String startTime = paramsMap.get("startTime");
         String endTime = paramsMap.get("endTime");
-
+        String displayType = paramsMap.get("displayType");//数据来源 2为填报数据
         if (type == null || type == "") {
             type = "1";
         }
+        if ("".equals(displayType) || null == displayType) {
+            displayType = "0";
+        }
+        Map map = new HashMap<>();
+        if (displayType.equals("0")) {
+            QueryWrapper<BasePigpen> basePigpenQueryWrapper = new QueryWrapper<>();
+            basePigpenQueryWrapper.eq("farm_id", farmId).eq("id", id);
+            BasePigpen basePigpen = basePigpenMapper.selectOne(basePigpenQueryWrapper);
 
-        QueryWrapper<BasePigpen> basePigpenQueryWrapper = new QueryWrapper<>();
-        basePigpenQueryWrapper.eq("farm_id", farmId).eq("id", id);
-        BasePigpen basePigpen = basePigpenMapper.selectOne(basePigpenQueryWrapper);
-
-        QueryWrapper<EnvData> queryWrapper = new QueryWrapper<>();
-        queryWrapper.eq("unit_id", id).eq("farm_id", farmId);
+            QueryWrapper<EnvData> queryWrapper = new QueryWrapper<>();
+            queryWrapper.eq("unit_id", id).eq("farm_id", farmId);
 
-        Map map = new HashMap<>();
-        //自定义查询
-        if ("4".equals(type)) {
-            startTime = startTime + " 00:00:00";
-            endTime = endTime + " 23:59:59";
-            queryWrapper.between("create_time", startTime, endTime);
-            List<EnvData> envData = dataMapper.listDay(queryWrapper);
-
-            map.put("location", basePigpen.getBuildName());
-            map.put("data", envData);
-        }
+            //自定义查询
+            if ("4".equals(type)) {
+                startTime = startTime + " 00:00:00";
+                endTime = endTime + " 23:59:59";
+                queryWrapper.between("create_time", startTime, endTime);
+                List<EnvData> envData = dataMapper.listDay(queryWrapper);
 
-        //本月
-        else if ("3".equals(type)) {
-            Date timesMonthmorning = DataUill.getTimesMonthmorning();
-            queryWrapper.ge("create_time", timesMonthmorning);
-            List<EnvData> envData = dataMapper.listDay(queryWrapper);
-            map.put("location", basePigpen.getBuildName());
-            map.put("data", envData);
+                map.put("location", basePigpen.getBuildName());
+                map.put("data", envData);
+            }
+            //本月
+            else if ("3".equals(type)) {
+                Date timesMonthmorning = DataUill.getTimesMonthmorning();
+                queryWrapper.ge("create_time", timesMonthmorning);
+                List<EnvData> envData = dataMapper.listDay(queryWrapper);
+                map.put("location", basePigpen.getBuildName());
+                map.put("data", envData);
 
-        }
+            }
+            //本周
+            else if ("2".equals(type)) {
+                Calendar calendar = Calendar.getInstance();
+                calendar.set(Calendar.DATE, calendar.get(Calendar.DATE) - 7);
+                queryWrapper.ge("create_time", calendar.getTime());
+                List<EnvData> envData = dataMapper.listDay(queryWrapper);
+                map.put("location", basePigpen.getBuildName());
+                map.put("data", envData);
+            }
+            //今日
+            else if ("1".equals(type)) {
+                Date timesmorning = DataUill.getTimesmorning();
+                queryWrapper.ge("create_time", timesmorning);
+                List<EnvData> envData = dataMapper.listNow(queryWrapper);
+                map.put("location", basePigpen.getBuildName());
+                map.put("data", envData);
+            }
+        } else {
+            QueryWrapper<BasePigpen> basePigpenQueryWrapper = new QueryWrapper<>();
+            basePigpenQueryWrapper.eq("farm_id", farmId).eq("id", id);
+            BasePigpen basePigpen = basePigpenMapper.selectOne(basePigpenQueryWrapper);
+
+            QueryWrapper<WriteEnvData> queryWrapper = new QueryWrapper<>();
+            queryWrapper.eq("unit_id", id).eq("farm_id", farmId);
+
+            //自定义查询
+            if ("4".equals(type)) {
+                startTime = startTime + " 00:00:00";
+                endTime = endTime + " 23:59:59";
+                queryWrapper.between("create_time", startTime, endTime);
+                List<WriteEnvDataVo> writeEnvData = writeEnvDataMapper.listDay(queryWrapper);
+
+                map.put("location", basePigpen.getBuildName());
+                map.put("data", writeEnvData);
+            }
+            //本月
+            else if ("3".equals(type)) {
+                Date timesMonthmorning = DataUill.getTimesMonthmorning();
+                queryWrapper.ge("create_time", timesMonthmorning);
+                List<WriteEnvDataVo> writeEnvData = writeEnvDataMapper.listDay(queryWrapper);
+                map.put("location", basePigpen.getBuildName());
+                map.put("data", writeEnvData);
 
-        //本周
-        else if ("2".equals(type)) {
-            Calendar calendar = Calendar.getInstance();
-            calendar.set(Calendar.DATE, calendar.get(Calendar.DATE) - 7);
-            queryWrapper.ge("create_time", calendar.getTime());
-            List<EnvData> envData = dataMapper.listDay(queryWrapper);
-            map.put("location", basePigpen.getBuildName());
-            map.put("data", envData);
+            }
+            //本周
+            else if ("2".equals(type)) {
+                Calendar calendar = Calendar.getInstance();
+                calendar.set(Calendar.DATE, calendar.get(Calendar.DATE) - 7);
+                queryWrapper.ge("create_time", calendar.getTime());
+                List<WriteEnvDataVo> writeEnvData = writeEnvDataMapper.listDay(queryWrapper);
+                map.put("location", basePigpen.getBuildName());
+                map.put("data", writeEnvData);
+            }
+            //今日
+            else if ("1".equals(type)) {
+                Date timesmorning = DataUill.getTimesmorning();
+                queryWrapper.ge("create_time", timesmorning);
+                List<WriteEnvDataVo> writeEnvData = writeEnvDataMapper.listNow(queryWrapper);
+                map.put("location", basePigpen.getBuildName());
+                map.put("data", writeEnvData);
+            }
         }
 
-        //今日
-        else if ("1".equals(type)) {
-            Date timesmorning = DataUill.getTimesmorning();
-            queryWrapper.ge("create_time", timesmorning);
-            List<EnvData> envData = dataMapper.listNow(queryWrapper);
-//            List<EnvData> envData = dataMapper.selectList(queryWrapper);
-            map.put("location", basePigpen.getBuildName());
-            map.put("data", envData);
-        }
         return new Result(ResultCode.SUCCESS, map);
     }
 
@@ -395,40 +463,71 @@ public class EnvDeviceServiceImpl extends ServiceImpl<EnvDeviceMapper, EnvDevice
     public Result listPigpenAll(HttpServletRequest httpServletRequest, Map<String, String> paramsMap) {
         //TODO 优化一下
         String farmId = paramsMap.get("farmId");
+        String displayType = paramsMap.get("displayType");
+        if ("".equals(displayType) || null == displayType) {
+            displayType = "0";
+        }
         List objects = new ArrayList<>();
-        QueryWrapper<BasePigpen> queryWrapper1 = new QueryWrapper<>();
-        queryWrapper1.eq("farm_id", farmId).eq("f_type", 3);
-        List<BasePigpen> basePigpens = basePigpenMapper.selectList(queryWrapper1);
-        for (BasePigpen basePigpen : basePigpens) {
-            JSONObject jsonObject = new JSONObject();
-            QueryWrapper<EnvData> queryWrapper = new QueryWrapper<>();
-            queryWrapper.eq("farm_id", farmId).eq("unit_id", basePigpen.getId())
-                    .orderByDesc("create_time").last(" limit 1");
-            EnvData envData = dataMapper.selectOne(queryWrapper);
-            if (ObjectUtil.isNotEmpty(envData)) {
-                jsonObject.put("temp", envData.getEnvTemp());//温度
-                jsonObject.put("hum", envData.getEnvHum());//湿度
-                jsonObject.put("location", basePigpen.getBuildName());
-                QueryWrapper<EnvNh3n> queryWrapper2 = new QueryWrapper<>();
-                queryWrapper2.eq("farm_id", farmId).eq("unit_id", envData.getUnitId())
-                        .orderByDesc("create_date").last(" limit 1");
-                EnvNh3n envNh3n = nh3nMapper.selectOne(queryWrapper2);
-                if (ObjectUtil.isNotEmpty(envNh3n)) {
-                    jsonObject.put("aq", envNh3n.getNh3N());
+        if ("0".equals(displayType)) {
+            QueryWrapper<BasePigpen> queryWrapper1 = new QueryWrapper<>();
+            queryWrapper1.eq("farm_id", farmId).eq("f_type", 3);
+            List<BasePigpen> basePigpens = basePigpenMapper.selectList(queryWrapper1);
+            for (BasePigpen basePigpen : basePigpens) {
+                JSONObject jsonObject = new JSONObject();
+                QueryWrapper<EnvData> queryWrapper = new QueryWrapper<>();
+                queryWrapper.eq("farm_id", farmId).eq("unit_id", basePigpen.getId())
+                        .orderByDesc("create_time").last(" limit 1");
+                EnvData envData = dataMapper.selectOne(queryWrapper);
+                if (ObjectUtil.isNotEmpty(envData)) {
+                    jsonObject.put("temp", envData.getEnvTemp());//温度
+                    jsonObject.put("hum", envData.getEnvHum());//湿度
+                    jsonObject.put("location", basePigpen.getBuildName());
+                    QueryWrapper<EnvNh3n> queryWrapper2 = new QueryWrapper<>();
+                    queryWrapper2.eq("farm_id", farmId).eq("unit_id", envData.getUnitId())
+                            .orderByDesc("create_date").last(" limit 1");
+                    EnvNh3n envNh3n = nh3nMapper.selectOne(queryWrapper2);
+                    if (ObjectUtil.isNotEmpty(envNh3n)) {
+                        jsonObject.put("aq", envNh3n.getNh3N());
+                    } else {
+                        jsonObject.put("aq", 0);
+                    }
+                    jsonObject.put("unit_id", basePigpen.getId());//单元id
                 } else {
+                    jsonObject.put("temp", 0);//温度
+                    jsonObject.put("hum", 0);//湿度
+                    jsonObject.put("location", basePigpen.getBuildName());
+                    jsonObject.put("unit_id", basePigpen.getId());//单元id
                     jsonObject.put("aq", 0);
                 }
-                jsonObject.put("unit_id", basePigpen.getId());//单元id
-            } else {
-                jsonObject.put("temp", 0);//温度
-                jsonObject.put("hum", 0);//湿度
-                jsonObject.put("location", basePigpen.getBuildName());
-                jsonObject.put("unit_id", basePigpen.getId());//单元id
-                jsonObject.put("aq", 0);
+                objects.add(jsonObject);
+            }
+        } else {
+            QueryWrapper<BasePigpen> queryWrapper1 = new QueryWrapper<>();
+            queryWrapper1.eq("farm_id", farmId).eq("f_type", 3);
+            List<BasePigpen> basePigpens = basePigpenMapper.selectList(queryWrapper1);
+            for (BasePigpen basePigpen : basePigpens) {
+                JSONObject jsonObject = new JSONObject();
+                QueryWrapper<WriteEnvData> queryWrapper = new QueryWrapper<>();
+                queryWrapper.eq("farm_id", farmId).eq("unit_id", basePigpen.getId())
+                        .orderByDesc("create_time").last(" limit 1");
+                WriteEnvData writeEnvData = writeEnvDataMapper.selectOne(queryWrapper);
+                if (ObjectUtil.isNotEmpty(writeEnvData)) {
+                    jsonObject.put("temp", writeEnvData.getTemp());//温度
+                    jsonObject.put("hum", writeEnvData.getHum());//湿度
+                    jsonObject.put("location", basePigpen.getBuildName());
+                    jsonObject.put("aq", writeEnvData.getAq());
+                    jsonObject.put("unit_id", basePigpen.getId());//单元id
+                } else {
+                    jsonObject.put("temp", 0);//温度
+                    jsonObject.put("hum", 0);//湿度
+                    jsonObject.put("location", basePigpen.getBuildName());
+                    jsonObject.put("unit_id", basePigpen.getId());//单元id
+                    jsonObject.put("aq", 0);
+                }
+                objects.add(jsonObject);
             }
-            objects.add(jsonObject);
-        }
 
+        }
         return new Result(ResultCode.SUCCESS, objects);
     }
 

ファイルの差分が大きいため隠しています
+ 895 - 624
huimv-admin/src/main/java/com/huimv/admin/service/impl/ProtDataServiceImpl.java