523096025 8 mesi fa
parent
commit
93567b6b8d
30 ha cambiato i file con 1226 aggiunte e 162 eliminazioni
  1. 2 1
      musk/src/main/java/com/huimv/farm/musk/MuskApplication.java
  2. 0 161
      musk/src/main/java/com/huimv/farm/musk/common/utils/HttpClientSSLUtils.java
  3. 82 0
      musk/src/main/java/com/huimv/farm/musk/controller/DevEnergyController.java
  4. 89 0
      musk/src/main/java/com/huimv/farm/musk/controller/DevEnvController.java
  5. 54 0
      musk/src/main/java/com/huimv/farm/musk/controller/DevThresholdController.java
  6. 78 0
      musk/src/main/java/com/huimv/farm/musk/controller/DevWarningController.java
  7. 47 0
      musk/src/main/java/com/huimv/farm/musk/entity/DevEnergy.java
  8. 64 0
      musk/src/main/java/com/huimv/farm/musk/entity/DevEnv.java
  9. 96 0
      musk/src/main/java/com/huimv/farm/musk/entity/DevThreshold.java
  10. 62 0
      musk/src/main/java/com/huimv/farm/musk/entity/DevWarning.java
  11. 11 0
      musk/src/main/java/com/huimv/farm/musk/entity/vo/WeatherVo.java
  12. 24 0
      musk/src/main/java/com/huimv/farm/musk/mapper/DevEnergyMapper.java
  13. 24 0
      musk/src/main/java/com/huimv/farm/musk/mapper/DevEnvMapper.java
  14. 16 0
      musk/src/main/java/com/huimv/farm/musk/mapper/DevThresholdMapper.java
  15. 16 0
      musk/src/main/java/com/huimv/farm/musk/mapper/DevWarningMapper.java
  16. 3 0
      musk/src/main/java/com/huimv/farm/musk/service/IBaseBuildingService.java
  17. 24 0
      musk/src/main/java/com/huimv/farm/musk/service/IDevEnergyService.java
  18. 26 0
      musk/src/main/java/com/huimv/farm/musk/service/IDevEnvService.java
  19. 20 0
      musk/src/main/java/com/huimv/farm/musk/service/IDevThresholdService.java
  20. 22 0
      musk/src/main/java/com/huimv/farm/musk/service/IDevWarningService.java
  21. 5 0
      musk/src/main/java/com/huimv/farm/musk/service/impl/BaseBuildingServiceImpl.java
  22. 102 0
      musk/src/main/java/com/huimv/farm/musk/service/impl/DevEnergyServiceImpl.java
  23. 111 0
      musk/src/main/java/com/huimv/farm/musk/service/impl/DevEnvServiceImpl.java
  24. 37 0
      musk/src/main/java/com/huimv/farm/musk/service/impl/DevThresholdServiceImpl.java
  25. 47 0
      musk/src/main/java/com/huimv/farm/musk/service/impl/DevWarningServiceImpl.java
  26. 49 0
      musk/src/main/java/com/huimv/farm/musk/timer/DevTimer.java
  27. 35 0
      musk/src/main/resources/com/huimv/farm/musk/mapper/DevEnergyMapper.xml
  28. 41 0
      musk/src/main/resources/com/huimv/farm/musk/mapper/DevEnvMapper.xml
  29. 23 0
      musk/src/main/resources/com/huimv/farm/musk/mapper/DevThresholdMapper.xml
  30. 16 0
      musk/src/main/resources/com/huimv/farm/musk/mapper/DevWarningMapper.xml

+ 2 - 1
musk/src/main/java/com/huimv/farm/musk/MuskApplication.java

@@ -1,12 +1,13 @@
 package com.huimv.farm.musk;
 
 import org.mybatis.spring.annotation.MapperScan;
-import org.mybatis.spring.annotation.MapperScans;
 import org.springframework.boot.SpringApplication;
 import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.scheduling.annotation.EnableScheduling;
 
 @SpringBootApplication
 @MapperScan("com.huimv.farm.musk.mapper")
+@EnableScheduling
 @MapperScan("com.huimv.farm.musk.*.mapper")
 public class MuskApplication {
 

+ 0 - 161
musk/src/main/java/com/huimv/farm/musk/common/utils/HttpClientSSLUtils.java

@@ -1,161 +0,0 @@
-////
-//// Source code recreated from a .class file by IntelliJ IDEA
-//// (powered by Fernflower decompiler)
-////
-//
-//package com.huimv.farm.musk.common.utils;
-//
-//import org.apache.commons.io.IOUtils;
-//import org.apache.http.HttpResponse;
-//import org.apache.http.client.HttpClient;
-//import org.apache.http.client.config.RequestConfig;
-//import org.apache.http.client.config.RequestConfig.Builder;
-//import org.apache.http.client.methods.HttpGet;
-//import org.apache.http.client.methods.HttpPost;
-//import org.apache.http.conn.ssl.SSLConnectionSocketFactory;
-//import org.apache.http.conn.ssl.TrustStrategy;
-//import org.apache.http.entity.ContentType;
-//import org.apache.http.entity.StringEntity;
-//import org.apache.http.impl.client.CloseableHttpClient;
-//import org.apache.http.impl.client.HttpClients;
-//import org.apache.http.impl.conn.PoolingHttpClientConnectionManager;
-//import org.apache.http.ssl.SSLContextBuilder;
-//
-//import javax.net.ssl.HostnameVerifier;
-//import javax.net.ssl.SSLContext;
-//import javax.net.ssl.SSLSession;
-//import java.security.GeneralSecurityException;
-//import java.security.KeyStore;
-//import java.security.cert.CertificateException;
-//import java.security.cert.X509Certificate;
-//
-//public class HttpClientSSLUtils {
-//    private static HttpClient client = null;
-//    protected static final Integer DEFAULT_CONNECTION_TIME_OUT = 100000;
-//    protected static final Integer DEFAULT_SOCKET_TIME_OUT = 200000;
-//    protected static final String DEFAULT_CHAR_SET = "UTF-8";
-//
-//    public HttpClientSSLUtils() {
-//    }
-//
-//    public static String doPost(String url, String jsonText) throws Exception {
-//        HttpClient client = null;
-//        HttpPost post = new HttpPost(url);
-//
-//        String var6;
-//        try {
-//            if (jsonText != null && !jsonText.isEmpty()) {
-//                StringEntity entity = new StringEntity(jsonText, ContentType.APPLICATION_JSON);
-//                post.setEntity(entity);
-//            }
-//
-//            Builder customReqConf = RequestConfig.custom();
-//            customReqConf.setConnectTimeout(DEFAULT_CONNECTION_TIME_OUT);
-//            customReqConf.setSocketTimeout(DEFAULT_CONNECTION_TIME_OUT);
-//            post.setConfig(customReqConf.build());
-//            HttpResponse res = null;
-//            if (url.startsWith("https")) {
-//                client = createSSLInsecureClient();
-//                res = ((HttpClient)client).execute(post);
-//            } else {
-//                client = HttpClientSSLUtils.client;
-//                res = ((HttpClient)client).execute(post);
-//            }
-//
-//            var6 = IOUtils.toString(res.getEntity().getContent(), "UTF-8");
-//        } finally {
-//            post.releaseConnection();
-//            if (url.startsWith("https") && client != null && client instanceof CloseableHttpClient) {
-//                ((CloseableHttpClient)client).close();
-//            }
-//
-//        }
-//
-//        return var6;
-//    }
-//
-//    public static String doGet(String url) throws Exception {
-//        HttpClient client = null;
-//        HttpGet get = new HttpGet(url);
-//        String result = "";
-//
-//        try {
-//            Builder customReqConf = RequestConfig.custom();
-//            customReqConf.setConnectTimeout(DEFAULT_CONNECTION_TIME_OUT);
-//            customReqConf.setSocketTimeout(DEFAULT_CONNECTION_TIME_OUT);
-//            get.setConfig(customReqConf.build());
-//            HttpResponse res = null;
-//            if (url.startsWith("https")) {
-//                client = createSSLInsecureClient();
-//                res = ((HttpClient)client).execute(get);
-//            } else {
-//                client = HttpClientSSLUtils.client;
-//                res = ((HttpClient)client).execute(get);
-//            }
-//
-//            result = IOUtils.toString(res.getEntity().getContent(), "UTF-8");
-//        } finally {
-//            get.releaseConnection();
-//            if (url.startsWith("https") && client != null && client instanceof CloseableHttpClient) {
-//                ((CloseableHttpClient)client).close();
-//            }
-//
-//        }
-//
-//        return result;
-//    }
-//
-//    private static CloseableHttpClient createSSLInsecureClient() throws GeneralSecurityException {
-//        try {
-//            SSLContext sslContext = (new SSLContextBuilder()).loadTrustMaterial((KeyStore)null, new TrustStrategy() {
-//                public boolean isTrusted(X509Certificate[] chain, String authType) throws CertificateException {
-//                    return true;
-//                }
-//            }).build();
-//            SSLConnectionSocketFactory sslsf = new SSLConnectionSocketFactory(sslContext, new HostnameVerifier() {
-//                public boolean verify(String hostname, SSLSession session) {
-//                    return true;
-//                }
-//            });
-//            return HttpClients.custom().setSSLSocketFactory(sslsf).build();
-//        } catch (GeneralSecurityException var2) {
-//            throw var2;
-//        }
-//    }
-//
-////    public static void main(String[] args) {
-////        String url = "https://10.33.39.8/webapi/service/base/getPlatAuthSubSystemList";
-////        String params = "appkey=f8524632&time=" + System.currentTimeMillis() + "&pageNo=1&pageSize=10";
-////        String urlString = url + "?" + params + "&token=" + Digests.buildToken(url + "?" + params, (String)null, "0a5a6558a06546088da645b5f9248a3a");
-////
-////        try {
-////            String output = new String(doGet(urlString));
-////            System.out.println(output);
-////        } catch (Exception var7) {
-////            var7.printStackTrace();
-////        }
-////
-////        url = "https://10.20.134.21/webapi/service/base/addPlatCard";
-////        Map<String, Object> map = new HashMap();
-////        map.put("appkey", "f8524632");
-////        map.put("time", System.currentTimeMillis());
-////        map.put("startCardNo", "16000");
-////        map.put("endCardNo", "16010");
-//////        params = JsonUtils.object2Json(map);
-////        url = url + "?token=" + Digests.buildToken(url + "?" + params, (String)null, "0a5a6558a06546088da645b5f9248a3a");
-////
-////        try {
-////            System.out.println(doPost(url, params));
-////        } catch (Exception var6) {
-////            var6.printStackTrace();
-////        }
-////
-////    }
-//
-//    static {
-//        PoolingHttpClientConnectionManager cm = new PoolingHttpClientConnectionManager();
-//        cm.setMaxTotal(128);
-//        cm.setDefaultMaxPerRoute(128);
-//        client = HttpClients.custom().setConnectionManager(cm).build();
-//    }
-//}

+ 82 - 0
musk/src/main/java/com/huimv/farm/musk/controller/DevEnergyController.java

@@ -0,0 +1,82 @@
+package com.huimv.farm.musk.controller;
+
+
+import com.huimv.farm.musk.common.utils.Result;
+import com.huimv.farm.musk.common.utils.ResultCode;
+import com.huimv.farm.musk.entity.BaseBuilding;
+import com.huimv.farm.musk.entity.DevEnergy;
+import com.huimv.farm.musk.service.IDevEnergyService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.Map;
+
+/**
+ * <p>
+ *  前端控制器
+ * </p>
+ *
+ * @author author
+ * @since 2024-09-02
+ */
+@RestController
+@RequestMapping("/dev-energy")
+public class DevEnergyController {
+
+    @Autowired
+    private IDevEnergyService energyService;
+
+    @PostMapping("/addEnergy")
+    public Result addEnergy(@RequestBody DevEnergy devEnergy) {
+        try {
+            energyService.save(devEnergy);
+        }catch (Exception e){
+            return new Result(ResultCode.FAIL,"添加失败");
+        }
+
+        return new Result(ResultCode.SUCCESS,"添加成功");
+    }
+
+    @PostMapping("/deleteEnergy")
+    public Result deleteEnergy( @RequestBody Map<String, Integer> map) {
+        try {
+            Integer id = map.get("id");
+            energyService.removeById(id);
+        }catch (Exception e){
+            return new Result(ResultCode.FAIL,"删除失败");
+        }
+
+        return new Result(ResultCode.SUCCESS,"删除成功");
+    }
+
+    @PostMapping("/updateEnergy")
+    public Result updateEnergy( @RequestBody DevEnergy devEnergy) {
+        try {
+            energyService.updateById(devEnergy);
+        }catch (Exception e){
+            return new Result(ResultCode.FAIL,"修改失败");
+        }
+
+        return new Result(ResultCode.SUCCESS,"修改成功");
+    }
+
+    @PostMapping("/pageEnergy")
+    public Result pageEnergy( @RequestBody Map<String, Object> map) {
+        return  energyService.pageEnergy(map);
+    }
+
+    @PostMapping("/listEnergy")
+    public Result listEnergy( @RequestBody Map<String, String> map) {
+        return  energyService.listEnergy(map);
+    }
+
+    @RequestMapping("/listHistory")
+    public Result listHistory(@RequestBody Map<String, String> paramsMap) {
+        return energyService.listHistory(paramsMap);
+    }
+
+}

+ 89 - 0
musk/src/main/java/com/huimv/farm/musk/controller/DevEnvController.java

@@ -0,0 +1,89 @@
+package com.huimv.farm.musk.controller;
+
+
+import com.huimv.farm.musk.common.utils.Result;
+import com.huimv.farm.musk.common.utils.ResultCode;
+import com.huimv.farm.musk.entity.DevEnv;
+import com.huimv.farm.musk.service.IDevEnvService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.Map;
+
+/**
+ * <p>
+ *  前端控制器
+ * </p>
+ *
+ * @author author
+ * @since 2024-09-02
+ */
+@RestController
+@RequestMapping("/dev-env")
+public class DevEnvController {
+
+    @Autowired
+    private IDevEnvService envService;
+
+
+    @PostMapping("/addDevEnv")
+    public Result addEnergy(@RequestBody DevEnv devEnv) {
+        try {
+            envService.save(devEnv);
+        }catch (Exception e){
+            return new Result(ResultCode.FAIL,"添加失败");
+        }
+
+        return new Result(ResultCode.SUCCESS,"添加成功");
+    }
+
+    @PostMapping("/deleteDevEnv")
+    public Result deleteDevEnv( @RequestBody Map<String, Integer> map) {
+        try {
+            Integer id = map.get("id");
+            envService.removeById(id);
+        }catch (Exception e){
+            return new Result(ResultCode.FAIL,"删除失败");
+        }
+
+        return new Result(ResultCode.SUCCESS,"删除成功");
+    }
+
+    @PostMapping("/updateDevEnv")
+    public Result deleteDevEnv( @RequestBody DevEnv devEnv) {
+        try {
+            envService.updateById(devEnv);
+        }catch (Exception e){
+            return new Result(ResultCode.FAIL,"修改失败");
+        }
+
+        return new Result(ResultCode.SUCCESS,"修改成功");
+    }
+
+    @PostMapping("/pageDevEnv")
+    public Result pageDevEnv( @RequestBody Map<String, Object> map) {
+        return  envService.pageDevEnv(map);
+    }
+
+    @PostMapping("/listDevEnv")
+    public Result listDevEnv( @RequestBody Map<String, String> map) {
+        return  envService.listEnergy(map);
+    }
+
+    @RequestMapping("/listHistory")
+    public Result listHistory(@RequestBody Map<String, String> paramsMap) {
+        return envService.listHistory(paramsMap);
+    }
+
+//    //大屏环境监测
+//    @RequestMapping("/listScreen")
+//    public Result listScreen(@RequestBody Map<String, String> paramsMap) {
+//        return envService.listScreen(paramsMap);
+//    }
+
+
+}

+ 54 - 0
musk/src/main/java/com/huimv/farm/musk/controller/DevThresholdController.java

@@ -0,0 +1,54 @@
+package com.huimv.farm.musk.controller;
+
+
+import com.huimv.farm.musk.common.utils.Result;
+import com.huimv.farm.musk.common.utils.ResultCode;
+import com.huimv.farm.musk.entity.DevEnergy;
+import com.huimv.farm.musk.entity.DevThreshold;
+import com.huimv.farm.musk.service.IDevEnvService;
+import com.huimv.farm.musk.service.IDevThresholdService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.Map;
+
+/**
+ * <p>
+ * 环境阈值 前端控制器
+ * </p>
+ *
+ * @author author
+ * @since 2024-09-02
+ */
+@RestController
+@RequestMapping("/dev-threshold")
+public class DevThresholdController {
+
+    @Autowired
+    private IDevThresholdService thresholdService;
+
+
+
+    @PostMapping("/updateThreshold")
+    public Result updateThreshold( @RequestBody DevThreshold devThreshold) {
+        try {
+            thresholdService.updateById(devThreshold);
+        }catch (Exception e){
+            return new Result(ResultCode.FAIL,"修改失败");
+        }
+
+        return new Result(ResultCode.SUCCESS,"修改成功");
+    }
+
+
+    @PostMapping("/listThreshold")
+    public Result listThreshold( @RequestBody Map<String, String> map) {
+        return  thresholdService.listThreshold(map);
+    }
+
+
+}

+ 78 - 0
musk/src/main/java/com/huimv/farm/musk/controller/DevWarningController.java

@@ -0,0 +1,78 @@
+package com.huimv.farm.musk.controller;
+
+
+import com.huimv.farm.musk.common.utils.Result;
+import com.huimv.farm.musk.common.utils.ResultCode;
+import com.huimv.farm.musk.entity.DevWarning;
+import com.huimv.farm.musk.service.IDevWarningService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.Map;
+
+/**
+ * <p>
+ * 预警信息 前端控制器
+ * </p>
+ *
+ * @author author
+ * @since 2024-09-02
+ */
+@RestController
+@RequestMapping("/dev-warning")
+public class DevWarningController {
+
+    @Autowired
+    private IDevWarningService warningService;
+    
+
+    @PostMapping("/addWarning")
+    public Result addWarning(@RequestBody DevWarning devWarning) {
+        try {
+            warningService.save(devWarning);
+        }catch (Exception e){
+            return new Result(ResultCode.FAIL,"添加失败");
+        }
+
+        return new Result(ResultCode.SUCCESS,"添加成功");
+    }
+
+    @PostMapping("/deleteWarning")
+    public Result deleteWarning( @RequestBody Map<String, Integer> map) {
+        try {
+            Integer id = map.get("id");
+            warningService.removeById(id);
+        }catch (Exception e){
+            return new Result(ResultCode.FAIL,"删除失败");
+        }
+
+        return new Result(ResultCode.SUCCESS,"删除成功");
+    }
+
+    @PostMapping("/updateWarning")
+    public Result deleteWarning( @RequestBody DevWarning devWarning) {
+        try {
+            warningService.updateById(devWarning);
+        }catch (Exception e){
+            return new Result(ResultCode.FAIL,"修改失败");
+        }
+
+        return new Result(ResultCode.SUCCESS,"修改成功");
+    }
+
+    @PostMapping("/pageWarning")
+    public Result pageWarning( @RequestBody Map<String, Object> map) {
+        return  warningService.pageWarning(map);
+    }
+
+    @PostMapping("/listWarning")
+    public Result listWarning( @RequestBody Map<String, String> map) {
+        return  warningService.listWarning(map);
+    }
+
+
+}

+ 47 - 0
musk/src/main/java/com/huimv/farm/musk/entity/DevEnergy.java

@@ -0,0 +1,47 @@
+package com.huimv.farm.musk.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import java.time.LocalDateTime;
+import java.io.Serializable;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author author
+ * @since 2024-09-02
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@TableName("dev_energy")
+public class DevEnergy implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    @TableId(value = "id", type = IdType.AUTO)
+    private Integer id;
+
+    private LocalDateTime dateTime;
+
+    private String water;
+
+    /**
+     * 电量
+     */
+    private String elec;
+
+    private String unitName;
+
+    private Integer unitId;
+
+    private Integer farmId;
+
+
+}

+ 64 - 0
musk/src/main/java/com/huimv/farm/musk/entity/DevEnv.java

@@ -0,0 +1,64 @@
+package com.huimv.farm.musk.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import java.time.LocalDateTime;
+import java.io.Serializable;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author author
+ * @since 2024-09-02
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@TableName("dev_env")
+public class DevEnv implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    @TableId(value = "id", type = IdType.AUTO)
+    private Integer id;
+
+    /**
+     * 时间
+     */
+    private LocalDateTime dateTime;
+
+    /**
+     * 温度
+     */
+    private String tem;
+
+    /**
+     * 湿度
+     */
+    private String humi;
+
+    /**
+     * 气体浓度
+     */
+    private String gas;
+
+    /**
+     * 栋舍名称
+     */
+    private String unitName;
+
+    /**
+     * 栋舍id
+     */
+    private Integer unitId;
+
+    private Integer farmId;
+
+
+}

+ 96 - 0
musk/src/main/java/com/huimv/farm/musk/entity/DevThreshold.java

@@ -0,0 +1,96 @@
+package com.huimv.farm.musk.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import java.io.Serializable;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+/**
+ * <p>
+ * 环境阈值
+ * </p>
+ *
+ * @author author
+ * @since 2024-09-02
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@TableName("dev_threshold")
+public class DevThreshold implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    @TableId(value = "id", type = IdType.AUTO)
+    private Integer id;
+
+    /**
+     * 温度上限
+     */
+    private String tempUpper;
+
+    /**
+     * 温度下限
+     */
+    private String tempDown;
+
+    /**
+     * 湿度上限
+     */
+    private String humUpper;
+
+    /**
+     * 湿度下限
+     */
+    private String humDown;
+
+    /**
+     * 气体浓度上限
+     */
+    private String gasUpper;
+
+    /**
+     * 气体浓度下限
+     */
+    private String gasDown;
+
+    /**
+     * 用水上限
+     */
+    private String waterUpper;
+
+    /**
+     * 用水下限
+     */
+    private String waterDown;
+
+    /**
+     * 用电上线
+     */
+    private String elecUpper;
+
+    /**
+     * 用电下限
+     */
+    private String elecDown;
+
+    /**
+     * 牧场编码
+     */
+    private Integer farmId;
+
+    /**
+     * 负责人id
+     */
+    private Integer userId;
+
+    /**
+     * 负责人名字
+     */
+    private String userName;
+
+
+}

+ 62 - 0
musk/src/main/java/com/huimv/farm/musk/entity/DevWarning.java

@@ -0,0 +1,62 @@
+package com.huimv.farm.musk.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import java.time.LocalDateTime;
+import java.io.Serializable;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+/**
+ * <p>
+ * 预警信息
+ * </p>
+ *
+ * @author author
+ * @since 2024-09-02
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@TableName("dev_warning")
+public class DevWarning implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    @TableId(value = "id", type = IdType.AUTO)
+    private Integer id;
+
+    /**
+     * 创建时间
+     */
+    private LocalDateTime createTime;
+
+    /**
+     * 内容
+     */
+    private String content;
+
+    /**
+     * 牧场编码
+     */
+    private Integer farmId;
+
+    /**
+     * 0高温 1低温 2高湿 3低湿 4高气 5低气  6高水 7低水 8高电 9低电
+     */
+    private Integer warningType;
+
+    /**
+     * 预警位置id
+     */
+    private Integer unitId;
+
+    /**
+     * 预警位置名称
+     */
+    private String unitName;
+
+
+}

+ 11 - 0
musk/src/main/java/com/huimv/farm/musk/entity/vo/WeatherVo.java

@@ -0,0 +1,11 @@
+package com.huimv.farm.musk.entity.vo;
+
+import lombok.Data;
+
+@Data
+public class WeatherVo {
+
+
+    private  String tem;
+    private  String humidity;
+}

+ 24 - 0
musk/src/main/java/com/huimv/farm/musk/mapper/DevEnergyMapper.java

@@ -0,0 +1,24 @@
+package com.huimv.farm.musk.mapper;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.huimv.farm.musk.entity.DevEnergy;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.huimv.farm.musk.entity.DevEnv;
+
+import java.util.List;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author author
+ * @since 2024-09-02
+ */
+public interface DevEnergyMapper extends BaseMapper<DevEnergy> {
+
+    List<DevEnergy> listDataDay(QueryWrapper<DevEnv> queryWrapper);
+
+
+    List<DevEnergy> listData(QueryWrapper<DevEnv> queryWrapper);
+}

+ 24 - 0
musk/src/main/java/com/huimv/farm/musk/mapper/DevEnvMapper.java

@@ -0,0 +1,24 @@
+package com.huimv.farm.musk.mapper;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Constants;
+import com.huimv.farm.musk.entity.DevEnv;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author author
+ * @since 2024-09-02
+ */
+public interface DevEnvMapper extends BaseMapper<DevEnv> {
+
+    List<DevEnv> listDataDay(@Param(Constants.WRAPPER)QueryWrapper<DevEnv> queryWrapper);
+
+    List<DevEnv> listData(@Param(Constants.WRAPPER)QueryWrapper<DevEnv> queryWrapper);
+}

+ 16 - 0
musk/src/main/java/com/huimv/farm/musk/mapper/DevThresholdMapper.java

@@ -0,0 +1,16 @@
+package com.huimv.farm.musk.mapper;
+
+import com.huimv.farm.musk.entity.DevThreshold;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * <p>
+ * 环境阈值 Mapper 接口
+ * </p>
+ *
+ * @author author
+ * @since 2024-09-02
+ */
+public interface DevThresholdMapper extends BaseMapper<DevThreshold> {
+
+}

+ 16 - 0
musk/src/main/java/com/huimv/farm/musk/mapper/DevWarningMapper.java

@@ -0,0 +1,16 @@
+package com.huimv.farm.musk.mapper;
+
+import com.huimv.farm.musk.entity.DevWarning;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * <p>
+ * 预警信息 Mapper 接口
+ * </p>
+ *
+ * @author author
+ * @since 2024-09-02
+ */
+public interface DevWarningMapper extends BaseMapper<DevWarning> {
+
+}

+ 3 - 0
musk/src/main/java/com/huimv/farm/musk/service/IBaseBuildingService.java

@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
 import com.huimv.farm.musk.common.utils.Result;
 import com.huimv.farm.musk.entity.BaseBuilding;
 
+import java.util.List;
 import java.util.Map;
 
 /**
@@ -26,4 +27,6 @@ public interface IBaseBuildingService extends IService<BaseBuilding> {
     Result listBuilding(Map<String, String> map);
 
     Result listTreeBuilding(Map<String, String> map);
+
+    List<BaseBuilding> listUnit();
 }

+ 24 - 0
musk/src/main/java/com/huimv/farm/musk/service/IDevEnergyService.java

@@ -0,0 +1,24 @@
+package com.huimv.farm.musk.service;
+
+import com.huimv.farm.musk.common.utils.Result;
+import com.huimv.farm.musk.entity.DevEnergy;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+import java.util.Map;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author author
+ * @since 2024-09-02
+ */
+public interface IDevEnergyService extends IService<DevEnergy> {
+
+    Result pageEnergy(Map<String, Object> map);
+
+    Result listEnergy(Map<String, String> map);
+
+    Result listHistory(Map<String, String> paramsMap);
+}

+ 26 - 0
musk/src/main/java/com/huimv/farm/musk/service/IDevEnvService.java

@@ -0,0 +1,26 @@
+package com.huimv.farm.musk.service;
+
+import com.huimv.farm.musk.common.utils.Result;
+import com.huimv.farm.musk.entity.DevEnv;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+import java.util.Map;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author author
+ * @since 2024-09-02
+ */
+public interface IDevEnvService extends IService<DevEnv> {
+
+    Result pageDevEnv(Map<String, Object> map);
+
+    Result listEnergy(Map<String, String> map);
+
+    Result listHistory(Map<String, String> paramsMap);
+
+//    Result listScreen(Map<String, String> paramsMap);
+}

+ 20 - 0
musk/src/main/java/com/huimv/farm/musk/service/IDevThresholdService.java

@@ -0,0 +1,20 @@
+package com.huimv.farm.musk.service;
+
+import com.huimv.farm.musk.common.utils.Result;
+import com.huimv.farm.musk.entity.DevThreshold;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+import java.util.Map;
+
+/**
+ * <p>
+ * 环境阈值 服务类
+ * </p>
+ *
+ * @author author
+ * @since 2024-09-02
+ */
+public interface IDevThresholdService extends IService<DevThreshold> {
+
+    Result listThreshold(Map<String, String> map);
+}

+ 22 - 0
musk/src/main/java/com/huimv/farm/musk/service/IDevWarningService.java

@@ -0,0 +1,22 @@
+package com.huimv.farm.musk.service;
+
+import com.huimv.farm.musk.common.utils.Result;
+import com.huimv.farm.musk.entity.DevWarning;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+import java.util.Map;
+
+/**
+ * <p>
+ * 预警信息 服务类
+ * </p>
+ *
+ * @author author
+ * @since 2024-09-02
+ */
+public interface IDevWarningService extends IService<DevWarning> {
+
+    Result pageWarning(Map<String, Object> map);
+
+    Result listWarning(Map<String, String> map);
+}

+ 5 - 0
musk/src/main/java/com/huimv/farm/musk/service/impl/BaseBuildingServiceImpl.java

@@ -108,6 +108,11 @@ public class BaseBuildingServiceImpl extends ServiceImpl<BaseBuildingMapper, Bas
         return new Result(ResultCode.SUCCESS, treeBasePigpens);
     }
 
+    @Override
+    public List<BaseBuilding> listUnit() {
+        return this.list(new QueryWrapper<BaseBuilding>().eq("f_type",2));
+    }
+
     /**
      * 查询结果 转换成树形结构
      *

+ 102 - 0
musk/src/main/java/com/huimv/farm/musk/service/impl/DevEnergyServiceImpl.java

@@ -0,0 +1,102 @@
+package com.huimv.farm.musk.service.impl;
+
+import cn.hutool.core.date.DateTime;
+import cn.hutool.core.date.DateUtil;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.huimv.farm.musk.common.utils.DataUill;
+import com.huimv.farm.musk.common.utils.Result;
+import com.huimv.farm.musk.common.utils.ResultCode;
+import com.huimv.farm.musk.entity.DevEnergy;
+import com.huimv.farm.musk.entity.DevEnv;
+import com.huimv.farm.musk.entity.SysCameraArea;
+import com.huimv.farm.musk.mapper.DevEnergyMapper;
+import com.huimv.farm.musk.mapper.DevEnvMapper;
+import com.huimv.farm.musk.service.IDevEnergyService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.Date;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * <p>
+ *  服务实现类
+ * </p>
+ *
+ * @author author
+ * @since 2024-09-02
+ */
+@Service
+public class DevEnergyServiceImpl extends ServiceImpl<DevEnergyMapper, DevEnergy> implements IDevEnergyService {
+
+    @Autowired
+    private DevEnergyMapper energyMapper;
+
+    @Override
+    public Result pageEnergy(Map<String, Object> map) {
+
+        Integer current = (Integer) map.get("current");
+        Integer size = (Integer) map.get(" ");
+        String farmId = (String) map.get("farmId");
+        String unitId = (String) map.get("unitId");
+
+        IPage<DevEnergy> list = page(new Page<>(current, size), new QueryWrapper<DevEnergy>().eq(StringUtils.isNotBlank(unitId),"unit_id",unitId).eq("farm_id", farmId));
+
+        return new Result(ResultCode.SUCCESS, list);
+    }
+
+    @Override
+    public Result listEnergy(Map<String, String> map) {
+        String startDate = map.get("startDate");
+        String endDate = map.get("endDate");
+        String unitId = map.get("unitId");
+        return new Result(ResultCode.SUCCESS, this.list( new QueryWrapper<DevEnergy>().eq(StringUtils.isNotBlank(unitId),"unit_id",unitId)
+                .ge(StringUtils.isNotBlank(startDate),"date_time",startDate).le(StringUtils.isNotBlank(endDate),"date_time",endDate)));
+
+    }
+
+    @Override
+    public Result listHistory(Map<String, String> paramsMap) {
+        String farmId = paramsMap.get("farmId");
+        String unitId = paramsMap.get("unitId");
+        String timeType = paramsMap.get("timeType");
+
+        if ("".equals(timeType) || null == timeType) {
+            timeType = "1";
+        }
+        QueryWrapper<DevEnv> queryWrapper = new QueryWrapper<>();
+        queryWrapper.eq("farm_id", farmId).eq("unit_id", unitId);
+        //今日
+        List<DevEnergy> protEnvData =null ;
+        if ("1".equals(timeType)) {
+            Date timesmorning = DataUill.getTimesmorning();
+            queryWrapper.ge("create_time", timesmorning);
+            protEnvData = energyMapper.listDataDay(queryWrapper);
+        }
+        //本周
+        else if ("2".equals(timeType)) {
+            DateTime dateTime = DateUtil.beginOfWeek(new Date());
+            queryWrapper.ge("create_time", dateTime);
+            protEnvData = energyMapper.listData(queryWrapper);
+        }
+        //本月
+        else if ("3".equals(timeType)) {
+            Date monthmorning = DataUill.getTimesMonthmorning();
+            queryWrapper.ge("create_time", monthmorning);
+            protEnvData = energyMapper.listData(queryWrapper);
+        }
+        //自定义
+        else if ("4".equals(timeType)) {
+            String startDate = paramsMap.get("startDate");
+            String endDate = paramsMap.get("endDate");
+            queryWrapper.between("create_time", startDate, endDate);
+            protEnvData = energyMapper.listData(queryWrapper);
+        }
+        return new Result(ResultCode.SUCCESS, protEnvData);
+    }
+}

+ 111 - 0
musk/src/main/java/com/huimv/farm/musk/service/impl/DevEnvServiceImpl.java

@@ -0,0 +1,111 @@
+package com.huimv.farm.musk.service.impl;
+
+import cn.hutool.core.date.DateTime;
+import cn.hutool.core.date.DateUtil;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.huimv.farm.musk.common.utils.DataUill;
+import com.huimv.farm.musk.common.utils.Result;
+import com.huimv.farm.musk.common.utils.ResultCode;
+import com.huimv.farm.musk.entity.BaseBuilding;
+import com.huimv.farm.musk.entity.DevEnergy;
+import com.huimv.farm.musk.entity.DevEnv;
+import com.huimv.farm.musk.mapper.DevEnvMapper;
+import com.huimv.farm.musk.service.IDevEnvService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.checkerframework.checker.units.qual.A;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.Date;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * <p>
+ *  服务实现类
+ * </p>
+ *
+ * @author author
+ * @since 2024-09-02
+ */
+@Service
+public class DevEnvServiceImpl extends ServiceImpl<DevEnvMapper, DevEnv> implements IDevEnvService {
+
+    @Autowired
+    private DevEnvMapper devEnvMapper;
+
+    @Override
+    public Result pageDevEnv(Map<String, Object> map) {
+        Integer current = (Integer) map.get("current");
+        Integer size = (Integer) map.get("size");
+        String farmId = (String) map.get("farmId");
+        String unitId = (String) map.get("unitId");
+
+        IPage<DevEnv> list = page(new Page<>(current, size), new QueryWrapper<DevEnv>().eq(StringUtils.isNotBlank(unitId),"unit_id",unitId).eq("farm_id", farmId));
+
+        return new Result(ResultCode.SUCCESS, list);
+    }
+
+    @Override
+    public Result listEnergy(Map<String, String> map) {
+        String startDate = map.get("startDate");
+        String endDate = map.get("endDate");
+        String unitId = map.get("unitId");
+        return new Result(ResultCode.SUCCESS, this.list( new QueryWrapper<DevEnv>().eq(StringUtils.isNotBlank(unitId),"unit_id",unitId)
+                .ge(StringUtils.isNotBlank(startDate),"date_time",startDate).le(StringUtils.isNotBlank(endDate),"date_time",endDate)));
+
+    }
+
+    @Override
+    public Result listHistory(Map<String, String> paramsMap) {
+
+        String farmId = paramsMap.get("farmId");
+        String unitId = paramsMap.get("unitId");
+        String timeType = paramsMap.get("timeType");
+
+        if ("".equals(timeType) || null == timeType) {
+            timeType = "1";
+        }
+        QueryWrapper<DevEnv> queryWrapper = new QueryWrapper<>();
+        queryWrapper.eq("farm_id", farmId).eq("unit_id", unitId);
+        //今日
+        List<DevEnv> protEnvData =null ;
+        if ("1".equals(timeType)) {
+            Date timesmorning = DataUill.getTimesmorning();
+            queryWrapper.ge("create_time", timesmorning);
+            protEnvData = devEnvMapper.listDataDay(queryWrapper);
+        }
+        //本周
+        else if ("2".equals(timeType)) {
+            DateTime dateTime = DateUtil.beginOfWeek(new Date());
+            queryWrapper.ge("create_time", dateTime);
+            protEnvData = devEnvMapper.listData(queryWrapper);
+        }
+        //本月
+        else if ("3".equals(timeType)) {
+            Date monthmorning = DataUill.getTimesMonthmorning();
+            queryWrapper.ge("create_time", monthmorning);
+            protEnvData = devEnvMapper.listData(queryWrapper);
+        }
+        //自定义
+        else if ("4".equals(timeType)) {
+            String startDate = paramsMap.get("startDate");
+            String endDate = paramsMap.get("endDate");
+            queryWrapper.between("create_time", startDate, endDate);
+            protEnvData = devEnvMapper.listData(queryWrapper);
+        }
+        return new Result(ResultCode.SUCCESS, protEnvData);
+    }
+
+//    @Override
+//    public Result listScreen(Map<String, String> paramsMap) {
+//        String farmId = paramsMap.get("farmId");
+//        QueryWrapper<BaseBuilding> buildingQueryWrapper = new QueryWrapper<>();
+//        buildingQueryWrapper.eq("farm_id", farmId).eq("f_type", 1);
+//        List<BaseBuilding> buildings = buildingMapper.selectList(buildingQueryWrapper);
+//        return null;
+//    }
+}

+ 37 - 0
musk/src/main/java/com/huimv/farm/musk/service/impl/DevThresholdServiceImpl.java

@@ -0,0 +1,37 @@
+package com.huimv.farm.musk.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.huimv.farm.musk.common.utils.Result;
+import com.huimv.farm.musk.common.utils.ResultCode;
+import com.huimv.farm.musk.entity.DevThreshold;
+import com.huimv.farm.musk.mapper.DevThresholdMapper;
+import com.huimv.farm.musk.service.IDevThresholdService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+import org.springframework.util.ObjectUtils;
+
+import java.util.Map;
+
+/**
+ * <p>
+ * 环境阈值 服务实现类
+ * </p>
+ *
+ * @author author
+ * @since 2024-09-02
+ */
+@Service
+public class DevThresholdServiceImpl extends ServiceImpl<DevThresholdMapper, DevThreshold> implements IDevThresholdService {
+
+    @Override
+    public Result listThreshold(Map<String, String> map) {
+        String farmId = map.get("farmId");
+        DevThreshold devThreshold = this.getOne(new QueryWrapper<DevThreshold>().eq("farm_id", farmId));
+        if (ObjectUtils.isEmpty(devThreshold)){
+            devThreshold = new DevThreshold();
+           this.save(devThreshold);
+           devThreshold = this.getOne(new QueryWrapper<DevThreshold>().eq("farm_id", farmId));
+        }
+        return new Result(ResultCode.SUCCESS,devThreshold);
+    }
+}

+ 47 - 0
musk/src/main/java/com/huimv/farm/musk/service/impl/DevWarningServiceImpl.java

@@ -0,0 +1,47 @@
+package com.huimv.farm.musk.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.huimv.farm.musk.common.utils.Result;
+import com.huimv.farm.musk.common.utils.ResultCode;
+import com.huimv.farm.musk.entity.DevEnv;
+import com.huimv.farm.musk.entity.DevWarning;
+import com.huimv.farm.musk.mapper.DevWarningMapper;
+import com.huimv.farm.musk.service.IDevWarningService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+import java.util.Map;
+
+/**
+ * <p>
+ * 预警信息 服务实现类
+ * </p>
+ *
+ * @author author
+ * @since 2024-09-02
+ */
+@Service
+public class DevWarningServiceImpl extends ServiceImpl<DevWarningMapper, DevWarning> implements IDevWarningService {
+
+    @Override
+    public Result pageWarning(Map<String, Object> map) {
+        Integer current = (Integer) map.get("current");
+        Integer size = (Integer) map.get("size");
+        String farmId = (String) map.get("farmId");
+        String unitId = (String) map.get("unitId");
+        IPage<DevWarning> list = page(new Page<>(current, size), new QueryWrapper<DevWarning>().eq(StringUtils.isNotBlank(unitId),"unit_id",unitId).eq("farm_id", farmId));
+
+        return new Result(ResultCode.SUCCESS, list);
+    }
+
+    @Override
+    public Result listWarning(Map<String, String> map) {
+        String unitId = map.get("unitId");
+        String farmId = map.get("farmId");
+        return new Result(ResultCode.SUCCESS, this.list( new QueryWrapper<DevWarning>().eq(StringUtils.isNotBlank(unitId),"unit_id",unitId).eq("farm_id",farmId)));
+
+    }
+}

+ 49 - 0
musk/src/main/java/com/huimv/farm/musk/timer/DevTimer.java

@@ -0,0 +1,49 @@
+package com.huimv.farm.musk.timer;
+
+import com.huimv.farm.musk.entity.BaseBuilding;
+import com.huimv.farm.musk.entity.DevEnergy;
+import com.huimv.farm.musk.entity.DevEnv;
+import com.huimv.farm.musk.entity.vo.WeatherVo;
+import com.huimv.farm.musk.service.IBaseBuildingService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.scheduling.annotation.EnableScheduling;
+import org.springframework.scheduling.annotation.Scheduled;
+import org.springframework.stereotype.Component;
+import org.springframework.web.client.RestTemplate;
+
+import java.util.List;
+
+@Component
+@EnableScheduling
+public class DevTimer {
+
+    @Autowired
+    private IBaseBuildingService baseBuildingService;
+
+//    @Autowired
+//    private  RestTemplate restTemplate;
+    @Scheduled(cron = "0 0 * * * ?")
+    private void saveDevEnv(){
+        List<BaseBuilding> listUnit  = baseBuildingService.listUnit();
+        DevEnv devEnv = new DevEnv();
+        DevEnergy devEnergy = new DevEnergy();
+        WeatherVo weatherVo = getWeater("杭州");
+        String humidity = weatherVo.getHumidity().replace("%","");
+        String tem = weatherVo.getTem();
+        for (BaseBuilding baseBuilding : listUnit) {
+
+
+        }
+
+    }
+
+
+
+    private static   WeatherVo getWeater(String city){
+        RestTemplate restTemplate = new RestTemplate();
+
+        return   restTemplate.getForObject("http://v1.yiketianqi.com/api?unescape=1&appid=59521471&appsecret=HnCqt3I6&version=v61&city="+city, WeatherVo.class);
+    }
+
+
+}

+ 35 - 0
musk/src/main/resources/com/huimv/farm/musk/mapper/DevEnergyMapper.xml

@@ -0,0 +1,35 @@
+<?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.farm.musk.mapper.DevEnergyMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.huimv.farm.musk.entity.DevEnergy">
+        <id column="id" property="id" />
+        <result column="date_time" property="dateTime" />
+        <result column="water" property="water" />
+        <result column="elec" property="elec" />
+        <result column="unit_name" property="unitName" />
+        <result column="unit_id" property="unitId" />
+        <result column="farm_id" property="farmId" />
+    </resultMap>
+    <select id="listDataDay" resultType="com.huimv.farm.musk.entity.DevEnergy">
+          select Convert((IFNUll(avg(water),'0')),DECIMAL(10,2)) 'water',
+        Convert((IFNUll(avg(elec),'0')),DECIMAL(10,2)) 'elec',
+        date_time ,unit_id,unit_name,farm_id
+        from dev_energy
+        ${ew.customSqlSegment}
+        GROUP BY DATE_FORMAT(date_time,'%Y-%m-%d %H')
+        ORDER BY date_time ASC
+    </select>
+
+    <select id="listData" resultType="com.huimv.farm.musk.entity.DevEnergy">
+  select Convert((IFNUll(avg(water),'0')),DECIMAL(10,2)) 'water',
+        Convert((IFNUll(avg(elec),'0')),DECIMAL(10,2)) 'elec',
+        date_time ,unit_id,unit_name,farm_id
+        from dev_energy
+        ${ew.customSqlSegment}
+        GROUP BY DATE_FORMAT(date_time,'%Y-%m-%d')
+        ORDER BY date_time ASC
+    </select>
+
+</mapper>

+ 41 - 0
musk/src/main/resources/com/huimv/farm/musk/mapper/DevEnvMapper.xml

@@ -0,0 +1,41 @@
+<?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.farm.musk.mapper.DevEnvMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.huimv.farm.musk.entity.DevEnv">
+        <id column="id" property="id" />
+        <result column="date_time" property="dateTime" />
+        <result column="tem" property="tem" />
+        <result column="humi" property="humi" />
+        <result column="gas" property="gas" />
+        <result column="unit_name" property="unitName" />
+        <result column="unit_id" property="unitId" />
+        <result column="farm_id" property="farmId" />
+    </resultMap>
+
+
+    <select id="listDataDay" resultType="com.huimv.farm.musk.entity.DevEnv">
+   select Convert((IFNUll(avg(humi),'0')),DECIMAL(10,2)) 'humi',
+        Convert((IFNUll(avg(tem),'0')),DECIMAL(10,2)) 'tem',
+        Convert((IFNUll(avg(gas),'0')),DECIMAL(10,2)) 'gas',
+        date_time ,unit_id,unit_name,farm_id
+        from dev_env
+        ${ew.customSqlSegment}
+        GROUP BY DATE_FORMAT(date_time,'%Y-%m-%d %H')
+        ORDER BY date_time ASC
+    </select>
+
+
+    <select id="listData" resultType="com.huimv.farm.musk.entity.DevEnv">
+select Convert((IFNUll(avg(humi),'0')),DECIMAL(10,2)) 'humi',
+        Convert((IFNUll(avg(tem),'0')),DECIMAL(10,2)) 'tem',
+        Convert((IFNUll(avg(gas),'0')),DECIMAL(10,2)) 'gas',
+        date_time ,unit_id,unit_name,farm_id
+        from dev_env
+        ${ew.customSqlSegment}
+        GROUP BY DATE_FORMAT(date_time,'%Y-%m-%d')
+        ORDER BY date_time ASC
+    </select>
+
+</mapper>

+ 23 - 0
musk/src/main/resources/com/huimv/farm/musk/mapper/DevThresholdMapper.xml

@@ -0,0 +1,23 @@
+<?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.farm.musk.mapper.DevThresholdMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.huimv.farm.musk.entity.DevThreshold">
+        <id column="id" property="id" />
+        <result column="temp_upper" property="tempUpper" />
+        <result column="temp_down" property="tempDown" />
+        <result column="hum_upper" property="humUpper" />
+        <result column="hum_down" property="humDown" />
+        <result column="gas_upper" property="gasUpper" />
+        <result column="gas_down" property="gasDown" />
+        <result column="water_upper" property="waterUpper" />
+        <result column="water_down" property="waterDown" />
+        <result column="elec_upper" property="elecUpper" />
+        <result column="elec_down" property="elecDown" />
+        <result column="farm_id" property="farmId" />
+        <result column="user_id" property="userId" />
+        <result column="user_name" property="userName" />
+    </resultMap>
+
+</mapper>

+ 16 - 0
musk/src/main/resources/com/huimv/farm/musk/mapper/DevWarningMapper.xml

@@ -0,0 +1,16 @@
+<?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.farm.musk.mapper.DevWarningMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.huimv.farm.musk.entity.DevWarning">
+        <id column="id" property="id" />
+        <result column="create_time" property="createTime" />
+        <result column="content" property="content" />
+        <result column="farm_id" property="farmId" />
+        <result column="warning_type" property="warningType" />
+        <result column="unit_id" property="unitId" />
+        <result column="unit_name" property="unitName" />
+    </resultMap>
+
+</mapper>