Ver código fonte

新建首页环保查询接口

zhuoning 4 anos atrás
pai
commit
557afc234d
21 arquivos alterados com 2052 adições e 47 exclusões
  1. 2 1
      shiwan/env/src/main/java/com/huimv/env/EnvApplication.java
  2. 94 0
      shiwan/env/src/main/java/com/huimv/env/controller/EnvironmentController.java
  3. 571 0
      shiwan/env/src/main/java/com/huimv/env/dao/entity/DaLqdaEntity.java
  4. 377 0
      shiwan/env/src/main/java/com/huimv/env/dao/entity/DaMcdaEntity.java
  5. 69 21
      shiwan/env/src/main/java/com/huimv/env/dao/entity/DaZsdaEntity.java
  6. 138 0
      shiwan/env/src/main/java/com/huimv/env/dao/entity/SjHkAqEntity.java
  7. 138 0
      shiwan/env/src/main/java/com/huimv/env/dao/entity/SjHkSdEntity.java
  8. 138 0
      shiwan/env/src/main/java/com/huimv/env/dao/entity/SjHkWdEntity.java
  9. 15 0
      shiwan/env/src/main/java/com/huimv/env/dao/repo/DaLqdaEntityRepository.java
  10. 9 0
      shiwan/env/src/main/java/com/huimv/env/dao/repo/DaMcdaEntityRepository.java
  11. 2 5
      shiwan/env/src/main/java/com/huimv/env/dao/repo/DaZsdaEntityRepository.java
  12. 18 0
      shiwan/env/src/main/java/com/huimv/env/dao/repo/SjHkAqEntityRepository.java
  13. 18 0
      shiwan/env/src/main/java/com/huimv/env/dao/repo/SjHkSdEntityRepository.java
  14. 19 0
      shiwan/env/src/main/java/com/huimv/env/dao/repo/SjHkWdEntityRepository.java
  15. 1 1
      shiwan/env/src/main/java/com/huimv/env/scheduler/Scheduler.java
  16. 32 0
      shiwan/env/src/main/java/com/huimv/env/service/IEnvironmentService.java
  17. 34 1
      shiwan/env/src/main/java/com/huimv/env/service/impl/EnvServiceImpl.java
  18. 328 0
      shiwan/env/src/main/java/com/huimv/env/service/impl/EnvironmentServiceImpl.java
  19. 47 17
      shiwan/env/src/main/resources/application-prod.yml
  20. 1 1
      shiwan/env/src/main/resources/application-test.yml
  21. 1 0
      shiwan/env/src/main/resources/application.properties

+ 2 - 1
shiwan/env/src/main/java/com/huimv/env/EnvApplication.java

@@ -1,11 +1,12 @@
 package com.huimv.env;
 
+import com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceAutoConfigure;
 import org.springframework.boot.SpringApplication;
 import org.springframework.boot.autoconfigure.SpringBootApplication;
 import org.springframework.scheduling.annotation.EnableScheduling;
 
 @EnableScheduling
-@SpringBootApplication
+@SpringBootApplication(exclude = DruidDataSourceAutoConfigure.class)
 public class EnvApplication {
 
     public static void main(String[] args) {

+ 94 - 0
shiwan/env/src/main/java/com/huimv/env/controller/EnvironmentController.java

@@ -0,0 +1,94 @@
+package com.huimv.env.controller;
+
+import com.alibaba.fastjson.JSONArray;
+import com.huimv.common.utils.Result;
+import com.huimv.env.service.IEnvironmentService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.CrossOrigin;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * @Project : huimv.shiwan
+ * @Package : com.huimv.biosafety.uface.controller
+ * @Description : TODO
+ * @Version : 1.0
+ * @Author : ZhuoNing
+ * @Create : 2020-12-25
+ **/
+@CrossOrigin
+@RestController
+@RequestMapping(value = "/environment")
+public class EnvironmentController {
+    @Autowired
+    private IEnvironmentService environmentService;
+
+    /**
+     * @Method      : getLastEnvData
+     * @Description : 
+     * @Params      : []
+     * @Return      : com.huimv.common.utils.Result
+     * 
+     * @Author      : ZhuoNing
+     * @Date        : 2020/12/28       
+     * @Time        : 20:48
+     */
+    @RequestMapping("/getLastEnvData")
+    public Result getLastEnvData(){
+        int mcid = 39;
+        //
+        return environmentService.getLastEnvData(mcid);
+    }
+
+    /**
+     * @Method      : getLastEnvData2
+     * @Description : 
+     * @Params      : []
+     * @Return      : com.huimv.common.utils.Result
+     * 
+     * @Author      : ZhuoNing
+     * @Date        : 2020/12/28       
+     * @Time        : 20:48
+     */
+    @RequestMapping("/getLastEnvData2")
+    public Result getLastEnvData2(){
+        int mcid = 39;
+        //
+        return environmentService.getLastEnvData2(mcid);
+    }
+
+    /**
+     * @Method      : getZsda
+     * @Description : 读取所有和包括栏期
+     * @Params      : []
+     * @Return      : com.huimv.common.utils.Result
+     * 
+     * @Author      : ZhuoNing
+     * @Date        : 2020/12/28       
+     * @Time        : 20:48
+     */
+    @RequestMapping("/getZsda")
+    public Result getZsda(@RequestParam(value = "mcid") Integer mcid){
+        //
+        return environmentService.getZsda(mcid);
+    }
+
+    /**
+     * @Method      : getLastEnvByLq
+     * @Description : 
+     * @Params      : [lqid]
+     * @Return      : com.huimv.common.utils.Result
+     * 
+     * @Author      : ZhuoNing
+     * @Date        : 2020/12/28       
+     * @Time        : 20:51
+     */
+    @RequestMapping("/getLastEnvByLq")
+    public Result getLastEnvByLq(@RequestParam(value = "lqid") Integer lqid){
+        //
+        return environmentService.getLastEnvByLq(lqid);
+    }
+
+
+}

+ 571 - 0
shiwan/env/src/main/java/com/huimv/env/dao/entity/DaLqdaEntity.java

@@ -0,0 +1,571 @@
+package com.huimv.env.dao.entity;
+
+import javax.persistence.*;
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.sql.Date;
+import java.sql.Timestamp;
+
+/**
+ * 档案-栏期信息
+ */
+@Entity
+@Table(name = "da_lqda")
+public class DaLqdaEntity implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * ID
+     */
+    @Id
+    @GeneratedValue(strategy = GenerationType.IDENTITY)
+    @Column(name = "ID", nullable = false)
+    private Integer ID;
+
+    /**
+     * 牧场编号
+     */
+    @Column(name = "ZSID", nullable = false)
+    private Integer ZSID;
+
+    /**
+     * 栏期名称
+     */
+    @Column(name = "LQMC")
+    private String LQMC;
+
+    /**
+     * 建栏时间
+     */
+    @Column(name = "JLSJ")
+    private Date JLSJ;
+
+    /**
+     * 计划栏结束时间
+     */
+    @Column(name = "JHLJSSJ")
+    private Date JHLJSSJ;
+
+    /**
+     * 实际栏结束时间
+     */
+    @Column(name = "SJLJSSJ")
+    private Date SJLJSSJ;
+
+    /**
+     * 入栏平均体重
+     */
+    @Column(name = "RLPJTZ")
+    private BigDecimal RLPJTZ;
+
+    /**
+     * 在栏动物数
+     */
+    @Column(name = "ZLS")
+    private BigDecimal ZLS;
+
+    /**
+     * 入栏动物数
+     */
+    @Column(name = "RLS")
+    private BigDecimal RLS;
+
+    /**
+     * 死亡动物数
+     */
+    @Column(name = "SWS")
+    private BigDecimal SWS;
+
+    /**
+     * 售出动物数
+     */
+    @Column(name = "SCS")
+    private BigDecimal SCS;
+
+    /**
+     * 隔离动物数
+     */
+    @Column(name = "GLS")
+    private BigDecimal GLS;
+
+    /**
+     * 耳标丢失数
+     */
+    @Column(name = "EBDSS")
+    private BigDecimal EBDSS;
+
+    /**
+     * 管理员
+     */
+    @Column(name = "GLY")
+    private String GLY;
+
+    /**
+     * 挑选开始日期
+     */
+    @Column(name = "TXKSRQ")
+    private Date TXKSRQ;
+
+    /**
+     * 挑选开始标识
+     */
+    @Column(name = "TXKSBZ")
+    private BigDecimal TXKSBZ;
+
+    /**
+     * 统计开始日期
+     */
+    @Column(name = "TJKSRQ")
+    private Date TJKSRQ;
+
+    /**
+     * 初始遗留饲料量
+     */
+    @Column(name = "CSYLSLL")
+    private BigDecimal CSYLSLL;
+
+    /**
+     * 结束剩余饲料量
+     */
+    @Column(name = "JSSYSLL")
+    private BigDecimal JSSYSLL;
+
+    /**
+     * 修改人
+     */
+    @Column(name = "XGR")
+    private String XGR;
+
+    /**
+     * 修改时间
+     */
+    @Column(name = "XGSJ")
+    private Timestamp XGSJ;
+
+    /**
+     * 作废标识
+     */
+    @Column(name = "ZFBZ")
+    private Integer ZFBZ;
+
+    /**
+     * 出栏数
+     */
+    @Column(name = "CLS")
+    private BigDecimal CLS;
+
+    /**
+     * 淘汰数
+     */
+    @Column(name = "TTS")
+    private BigDecimal TTS;
+
+    /**
+     * 体重统计时间
+     */
+    @Column(name = "TZTJSJ")
+    private Timestamp TZTJSJ;
+
+    /**
+     * 入栏日龄
+     */
+    @Column(name = "RLRL")
+    private String RLRL;
+
+    /**
+     * ID
+     */
+    public void setID(Integer ID) {
+        this.ID = ID;
+    }
+
+    /**
+     * ID
+     */
+    public Integer getID() {
+        return ID;
+    }
+
+    /**
+     * 牧场编号
+     */
+    public void setZSID(Integer ZSID) {
+        this.ZSID = ZSID;
+    }
+
+    /**
+     * 牧场编号
+     */
+    public Integer getZSID() {
+        return ZSID;
+    }
+
+    /**
+     * 栏期名称
+     */
+    public void setLQMC(String LQMC) {
+        this.LQMC = LQMC;
+    }
+
+    /**
+     * 栏期名称
+     */
+    public String getLQMC() {
+        return LQMC;
+    }
+
+    /**
+     * 建栏时间
+     */
+    public void setJLSJ(Date JLSJ) {
+        this.JLSJ = JLSJ;
+    }
+
+    /**
+     * 建栏时间
+     */
+    public Date getJLSJ() {
+        return JLSJ;
+    }
+
+    /**
+     * 计划栏结束时间
+     */
+    public void setJHLJSSJ(Date JHLJSSJ) {
+        this.JHLJSSJ = JHLJSSJ;
+    }
+
+    /**
+     * 计划栏结束时间
+     */
+    public Date getJHLJSSJ() {
+        return JHLJSSJ;
+    }
+
+    /**
+     * 实际栏结束时间
+     */
+    public void setSJLJSSJ(Date SJLJSSJ) {
+        this.SJLJSSJ = SJLJSSJ;
+    }
+
+    /**
+     * 实际栏结束时间
+     */
+    public Date getSJLJSSJ() {
+        return SJLJSSJ;
+    }
+
+    /**
+     * 入栏平均体重
+     */
+    public void setRLPJTZ(BigDecimal RLPJTZ) {
+        this.RLPJTZ = RLPJTZ;
+    }
+
+    /**
+     * 入栏平均体重
+     */
+    public BigDecimal getRLPJTZ() {
+        return RLPJTZ;
+    }
+
+    /**
+     * 在栏动物数
+     */
+    public void setZLS(BigDecimal ZLS) {
+        this.ZLS = ZLS;
+    }
+
+    /**
+     * 在栏动物数
+     */
+    public BigDecimal getZLS() {
+        return ZLS;
+    }
+
+    /**
+     * 入栏动物数
+     */
+    public void setRLS(BigDecimal RLS) {
+        this.RLS = RLS;
+    }
+
+    /**
+     * 入栏动物数
+     */
+    public BigDecimal getRLS() {
+        return RLS;
+    }
+
+    /**
+     * 死亡动物数
+     */
+    public void setSWS(BigDecimal SWS) {
+        this.SWS = SWS;
+    }
+
+    /**
+     * 死亡动物数
+     */
+    public BigDecimal getSWS() {
+        return SWS;
+    }
+
+    /**
+     * 售出动物数
+     */
+    public void setSCS(BigDecimal SCS) {
+        this.SCS = SCS;
+    }
+
+    /**
+     * 售出动物数
+     */
+    public BigDecimal getSCS() {
+        return SCS;
+    }
+
+    /**
+     * 隔离动物数
+     */
+    public void setGLS(BigDecimal GLS) {
+        this.GLS = GLS;
+    }
+
+    /**
+     * 隔离动物数
+     */
+    public BigDecimal getGLS() {
+        return GLS;
+    }
+
+    /**
+     * 耳标丢失数
+     */
+    public void setEBDSS(BigDecimal EBDSS) {
+        this.EBDSS = EBDSS;
+    }
+
+    /**
+     * 耳标丢失数
+     */
+    public BigDecimal getEBDSS() {
+        return EBDSS;
+    }
+
+    /**
+     * 管理员
+     */
+    public void setGLY(String GLY) {
+        this.GLY = GLY;
+    }
+
+    /**
+     * 管理员
+     */
+    public String getGLY() {
+        return GLY;
+    }
+
+    /**
+     * 挑选开始日期
+     */
+    public void setTXKSRQ(Date TXKSRQ) {
+        this.TXKSRQ = TXKSRQ;
+    }
+
+    /**
+     * 挑选开始日期
+     */
+    public Date getTXKSRQ() {
+        return TXKSRQ;
+    }
+
+    /**
+     * 挑选开始标识
+     */
+    public void setTXKSBZ(BigDecimal TXKSBZ) {
+        this.TXKSBZ = TXKSBZ;
+    }
+
+    /**
+     * 挑选开始标识
+     */
+    public BigDecimal getTXKSBZ() {
+        return TXKSBZ;
+    }
+
+    /**
+     * 统计开始日期
+     */
+    public void setTJKSRQ(Date TJKSRQ) {
+        this.TJKSRQ = TJKSRQ;
+    }
+
+    /**
+     * 统计开始日期
+     */
+    public Date getTJKSRQ() {
+        return TJKSRQ;
+    }
+
+    /**
+     * 初始遗留饲料量
+     */
+    public void setCSYLSLL(BigDecimal CSYLSLL) {
+        this.CSYLSLL = CSYLSLL;
+    }
+
+    /**
+     * 初始遗留饲料量
+     */
+    public BigDecimal getCSYLSLL() {
+        return CSYLSLL;
+    }
+
+    /**
+     * 结束剩余饲料量
+     */
+    public void setJSSYSLL(BigDecimal JSSYSLL) {
+        this.JSSYSLL = JSSYSLL;
+    }
+
+    /**
+     * 结束剩余饲料量
+     */
+    public BigDecimal getJSSYSLL() {
+        return JSSYSLL;
+    }
+
+    /**
+     * 修改人
+     */
+    public void setXGR(String XGR) {
+        this.XGR = XGR;
+    }
+
+    /**
+     * 修改人
+     */
+    public String getXGR() {
+        return XGR;
+    }
+
+    /**
+     * 修改时间
+     */
+    public void setXGSJ(Timestamp XGSJ) {
+        this.XGSJ = XGSJ;
+    }
+
+    /**
+     * 修改时间
+     */
+    public Timestamp getXGSJ() {
+        return XGSJ;
+    }
+
+    /**
+     * 作废标识
+     */
+    public void setZFBZ(Integer ZFBZ) {
+        this.ZFBZ = ZFBZ;
+    }
+
+    /**
+     * 作废标识
+     */
+    public Integer getZFBZ() {
+        return ZFBZ;
+    }
+
+    /**
+     * 出栏数
+     */
+    public void setCLS(BigDecimal CLS) {
+        this.CLS = CLS;
+    }
+
+    /**
+     * 出栏数
+     */
+    public BigDecimal getCLS() {
+        return CLS;
+    }
+
+    /**
+     * 淘汰数
+     */
+    public void setTTS(BigDecimal TTS) {
+        this.TTS = TTS;
+    }
+
+    /**
+     * 淘汰数
+     */
+    public BigDecimal getTTS() {
+        return TTS;
+    }
+
+    /**
+     * 体重统计时间
+     */
+    public void setTZTJSJ(Timestamp TZTJSJ) {
+        this.TZTJSJ = TZTJSJ;
+    }
+
+    /**
+     * 体重统计时间
+     */
+    public Timestamp getTZTJSJ() {
+        return TZTJSJ;
+    }
+
+    /**
+     * 入栏日龄
+     */
+    public void setRLRL(String RLRL) {
+        this.RLRL = RLRL;
+    }
+
+    /**
+     * 入栏日龄
+     */
+    public String getRLRL() {
+        return RLRL;
+    }
+
+    @Override
+    public String toString() {
+        return "DaLqdaEntity{" +
+                "ID=" + ID + '\'' +
+                "ZSID=" + ZSID + '\'' +
+                "LQMC=" + LQMC + '\'' +
+                "JLSJ=" + JLSJ + '\'' +
+                "JHLJSSJ=" + JHLJSSJ + '\'' +
+                "SJLJSSJ=" + SJLJSSJ + '\'' +
+                "RLPJTZ=" + RLPJTZ + '\'' +
+                "ZLS=" + ZLS + '\'' +
+                "RLS=" + RLS + '\'' +
+                "SWS=" + SWS + '\'' +
+                "SCS=" + SCS + '\'' +
+                "GLS=" + GLS + '\'' +
+                "EBDSS=" + EBDSS + '\'' +
+                "GLY=" + GLY + '\'' +
+                "TXKSRQ=" + TXKSRQ + '\'' +
+                "TXKSBZ=" + TXKSBZ + '\'' +
+                "TJKSRQ=" + TJKSRQ + '\'' +
+                "CSYLSLL=" + CSYLSLL + '\'' +
+                "JSSYSLL=" + JSSYSLL + '\'' +
+                "XGR=" + XGR + '\'' +
+                "XGSJ=" + XGSJ + '\'' +
+                "ZFBZ=" + ZFBZ + '\'' +
+                "CLS=" + CLS + '\'' +
+                "TTS=" + TTS + '\'' +
+                "TZTJSJ=" + TZTJSJ + '\'' +
+                "RLRL=" + RLRL + '\'' +
+                '}';
+    }
+}

+ 377 - 0
shiwan/env/src/main/java/com/huimv/env/dao/entity/DaMcdaEntity.java

@@ -0,0 +1,377 @@
+package com.huimv.env.dao.entity;
+
+import javax.persistence.*;
+import java.io.Serializable;
+import java.sql.Timestamp;
+
+@Entity
+@Table(name = "da_mcda")
+public class DaMcdaEntity implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * ID
+     */
+    @Id
+    @GeneratedValue(strategy = GenerationType.IDENTITY)
+    @Column(name = "ID", nullable = false)
+    private Integer ID;
+
+    /**
+     * 企业ID
+     */
+    @Column(name = "QYID")
+    private Integer QYID;
+
+    /**
+     * 企业名称
+     */
+    @Column(name = "QYMC")
+    private String QYMC;
+
+    /**
+     * 牧场名称
+     */
+    @Column(name = "MCMC")
+    private String MCMC;
+
+    /**
+     * 区划编码
+     */
+    @Column(name = "QHBM")
+    private String QHBM;
+
+    /**
+     * 区划名称
+     */
+    @Column(name = "QHMC")
+    private String QHMC;
+
+    /**
+     * 牧场地址
+     */
+    @Column(name = "MCDZ")
+    private String MCDZ;
+
+    /**
+     * 牧场负责人ID
+     */
+    @Column(name = "MCFZR", nullable = false)
+    private Integer MCFZR;
+
+    /**
+     * 牧场负责人姓名
+     */
+    @Column(name = "MCFZRXM")
+    private String MCFZRXM;
+
+    /**
+     * 牧场电话
+     */
+    @Column(name = "MCDH")
+    private String MCDH;
+
+    /**
+     * 牧场邮编
+     */
+    @Column(name = "MCYB")
+    private String MCYB;
+
+    /**
+     * 牧场传真
+     */
+    @Column(name = "MCCZ")
+    private String MCCZ;
+
+    /**
+     * 修改人
+     */
+    @Column(name = "XGR", nullable = false)
+    private String XGR;
+
+    /**
+     * 修改时间
+     */
+    @Column(name = "XGSJ")
+    private Timestamp XGSJ;
+
+    /**
+     * 作废标识
+     */
+    @Column(name = "ZFBZ", nullable = false)
+    private Integer ZFBZ;
+
+    /**
+     * 经度
+     */
+    @Column(name = "longitude")
+    private String longitude;
+
+    /**
+     * 维度
+     */
+    @Column(name = "latitude")
+    private String latitude;
+
+    /**
+     * ID
+     */
+    public void setID(Integer ID) {
+        this.ID = ID;
+    }
+
+    /**
+     * ID
+     */
+    public Integer getID() {
+        return ID;
+    }
+
+    /**
+     * 企业ID
+     */
+    public void setQYID(Integer QYID) {
+        this.QYID = QYID;
+    }
+
+    /**
+     * 企业ID
+     */
+    public Integer getQYID() {
+        return QYID;
+    }
+
+    /**
+     * 企业名称
+     */
+    public void setQYMC(String QYMC) {
+        this.QYMC = QYMC;
+    }
+
+    /**
+     * 企业名称
+     */
+    public String getQYMC() {
+        return QYMC;
+    }
+
+    /**
+     * 牧场名称
+     */
+    public void setMCMC(String MCMC) {
+        this.MCMC = MCMC;
+    }
+
+    /**
+     * 牧场名称
+     */
+    public String getMCMC() {
+        return MCMC;
+    }
+
+    /**
+     * 区划编码
+     */
+    public void setQHBM(String QHBM) {
+        this.QHBM = QHBM;
+    }
+
+    /**
+     * 区划编码
+     */
+    public String getQHBM() {
+        return QHBM;
+    }
+
+    /**
+     * 区划名称
+     */
+    public void setQHMC(String QHMC) {
+        this.QHMC = QHMC;
+    }
+
+    /**
+     * 区划名称
+     */
+    public String getQHMC() {
+        return QHMC;
+    }
+
+    /**
+     * 牧场地址
+     */
+    public void setMCDZ(String MCDZ) {
+        this.MCDZ = MCDZ;
+    }
+
+    /**
+     * 牧场地址
+     */
+    public String getMCDZ() {
+        return MCDZ;
+    }
+
+    /**
+     * 牧场负责人ID
+     */
+    public void setMCFZR(Integer MCFZR) {
+        this.MCFZR = MCFZR;
+    }
+
+    /**
+     * 牧场负责人ID
+     */
+    public Integer getMCFZR() {
+        return MCFZR;
+    }
+
+    /**
+     * 牧场负责人姓名
+     */
+    public void setMCFZRXM(String MCFZRXM) {
+        this.MCFZRXM = MCFZRXM;
+    }
+
+    /**
+     * 牧场负责人姓名
+     */
+    public String getMCFZRXM() {
+        return MCFZRXM;
+    }
+
+    /**
+     * 牧场电话
+     */
+    public void setMCDH(String MCDH) {
+        this.MCDH = MCDH;
+    }
+
+    /**
+     * 牧场电话
+     */
+    public String getMCDH() {
+        return MCDH;
+    }
+
+    /**
+     * 牧场邮编
+     */
+    public void setMCYB(String MCYB) {
+        this.MCYB = MCYB;
+    }
+
+    /**
+     * 牧场邮编
+     */
+    public String getMCYB() {
+        return MCYB;
+    }
+
+    /**
+     * 牧场传真
+     */
+    public void setMCCZ(String MCCZ) {
+        this.MCCZ = MCCZ;
+    }
+
+    /**
+     * 牧场传真
+     */
+    public String getMCCZ() {
+        return MCCZ;
+    }
+
+    /**
+     * 修改人
+     */
+    public void setXGR(String XGR) {
+        this.XGR = XGR;
+    }
+
+    /**
+     * 修改人
+     */
+    public String getXGR() {
+        return XGR;
+    }
+
+    /**
+     * 修改时间
+     */
+    public void setXGSJ(Timestamp XGSJ) {
+        this.XGSJ = XGSJ;
+    }
+
+    /**
+     * 修改时间
+     */
+    public Timestamp getXGSJ() {
+        return XGSJ;
+    }
+
+    /**
+     * 作废标识
+     */
+    public void setZFBZ(Integer ZFBZ) {
+        this.ZFBZ = ZFBZ;
+    }
+
+    /**
+     * 作废标识
+     */
+    public Integer getZFBZ() {
+        return ZFBZ;
+    }
+
+    /**
+     * 经度
+     */
+    public void setLongitude(String longitude) {
+        this.longitude = longitude;
+    }
+
+    /**
+     * 经度
+     */
+    public String getLongitude() {
+        return longitude;
+    }
+
+    /**
+     * 维度
+     */
+    public void setLatitude(String latitude) {
+        this.latitude = latitude;
+    }
+
+    /**
+     * 维度
+     */
+    public String getLatitude() {
+        return latitude;
+    }
+
+    @Override
+    public String toString() {
+        return "DaMcdaEntity{" +
+                "ID=" + ID + '\'' +
+                "QYID=" + QYID + '\'' +
+                "QYMC=" + QYMC + '\'' +
+                "MCMC=" + MCMC + '\'' +
+                "QHBM=" + QHBM + '\'' +
+                "QHMC=" + QHMC + '\'' +
+                "MCDZ=" + MCDZ + '\'' +
+                "MCFZR=" + MCFZR + '\'' +
+                "MCFZRXM=" + MCFZRXM + '\'' +
+                "MCDH=" + MCDH + '\'' +
+                "MCYB=" + MCYB + '\'' +
+                "MCCZ=" + MCCZ + '\'' +
+                "XGR=" + XGR + '\'' +
+                "XGSJ=" + XGSJ + '\'' +
+                "ZFBZ=" + ZFBZ + '\'' +
+                "longitude=" + longitude + '\'' +
+                "latitude=" + latitude + '\'' +
+                '}';
+    }
+}

+ 69 - 21
shiwan/env/src/main/java/com/huimv/env/dao/entity/DaZsdaEntity.java

@@ -2,12 +2,12 @@ package com.huimv.env.dao.entity;
 
 import javax.persistence.*;
 import java.io.Serializable;
+import java.math.BigDecimal;
 import java.sql.Timestamp;
 
 /**
  * 档案-猪舍信息
  */
-//@Proxy(lazy = false)
 @Entity
 @Table(name = "da_zsda")
 public class DaZsdaEntity implements Serializable {
@@ -136,6 +136,50 @@ public class DaZsdaEntity implements Serializable {
     @Column(name = "SPJK")
     private String SPJK;
 
+    @Transient
+    private int lqid;
+    @Transient
+    private BigDecimal dqwd;
+    @Transient
+    private BigDecimal dqsd;
+
+    public BigDecimal getDqwd() {
+        return dqwd;
+    }
+
+    public void setDqwd(BigDecimal dqwd) {
+        this.dqwd = dqwd;
+    }
+
+    public BigDecimal getDqsd() {
+        return dqsd;
+    }
+
+    public void setDqsd(BigDecimal dqsd) {
+        this.dqsd = dqsd;
+    }
+
+    public BigDecimal getDqaq() {
+        return dqaq;
+    }
+
+    public void setDqaq(BigDecimal dqaq) {
+        this.dqaq = dqaq;
+    }
+
+    @Transient
+    private BigDecimal dqaq;
+
+
+
+    public int getLqid() {
+        return lqid;
+    }
+
+    public void setLqid(int lqid) {
+        this.lqid = lqid;
+    }
+
     /**
      * ID
      */
@@ -419,26 +463,30 @@ public class DaZsdaEntity implements Serializable {
     @Override
     public String toString() {
         return "DaZsdaEntity{" +
-                "ID=" + ID + '\'' +
-                "MCID=" + MCID + '\'' +
-                "ZSMC=" + ZSMC + '\'' +
-                "CSQ1=" + CSQ1 + '\'' +
-                "CSQ2=" + CSQ2 + '\'' +
-                "FLQ=" + FLQ + '\'' +
-                "DQLQ=" + DQLQ + '\'' +
-                "YZJD=" + YZJD + '\'' +
-                "GLY=" + GLY + '\'' +
-                "GLYXM=" + GLYXM + '\'' +
-                "XGR=" + XGR + '\'' +
-                "XGSJ=" + XGSJ + '\'' +
-                "ZFBZ=" + ZFBZ + '\'' +
-                "ZSBZ=" + ZSBZ + '\'' +
-                "SSQY=" + SSQY + '\'' +
-                "LCBZ=" + LCBZ + '\'' +
-                "HKBZ=" + HKBZ + '\'' +
-                "ZDBZ=" + ZDBZ + '\'' +
-                "ZSQY=" + ZSQY + '\'' +
-                "SPJK=" + SPJK + '\'' +
+                "ID=" + ID +
+                ", MCID=" + MCID +
+                ", ZSMC='" + ZSMC + '\'' +
+                ", CSQ1='" + CSQ1 + '\'' +
+                ", CSQ2='" + CSQ2 + '\'' +
+                ", FLQ='" + FLQ + '\'' +
+                ", DQLQ='" + DQLQ + '\'' +
+                ", YZJD='" + YZJD + '\'' +
+                ", GLY=" + GLY +
+                ", GLYXM='" + GLYXM + '\'' +
+                ", XGR='" + XGR + '\'' +
+                ", XGSJ=" + XGSJ +
+                ", ZFBZ=" + ZFBZ +
+                ", ZSBZ=" + ZSBZ +
+                ", SSQY=" + SSQY +
+                ", LCBZ=" + LCBZ +
+                ", HKBZ=" + HKBZ +
+                ", ZDBZ=" + ZDBZ +
+                ", ZSQY=" + ZSQY +
+                ", SPJK='" + SPJK + '\'' +
+                ", lqid=" + lqid +
+                ", dqwd=" + dqwd +
+                ", dqsd=" + dqsd +
+                ", dqaq=" + dqaq +
                 '}';
     }
 }

+ 138 - 0
shiwan/env/src/main/java/com/huimv/env/dao/entity/SjHkAqEntity.java

@@ -0,0 +1,138 @@
+package com.huimv.env.dao.entity;
+
+import javax.persistence.*;
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.sql.Timestamp;
+
+@Entity
+@Table(name = "sj_hk_aq")
+public class SjHkAqEntity implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    @Id
+    @GeneratedValue(strategy = GenerationType.IDENTITY)
+    @Column(name = "ID", nullable = false)
+    private Integer ID;
+
+    /**
+     * 栏期ID
+     */
+    @Column(name = "LQID")
+    private Integer LQID;
+
+    /**
+     * 传感器ID
+     */
+    @Column(name = "CGQID")
+    private String CGQID;
+
+    /**
+     * 当前氨气
+     */
+    @Column(name = "DQAQ")
+    private BigDecimal DQAQ;
+
+    /**
+     * 采集时间
+     */
+    @Column(name = "CJSJ")
+    private Timestamp CJSJ;
+
+    /**
+     * 上传时间
+     */
+    @Column(name = "SCSJ")
+    private Timestamp SCSJ;
+
+    public void setID(Integer ID) {
+        this.ID = ID;
+    }
+
+    public Integer getID() {
+        return ID;
+    }
+
+    /**
+     * 栏期ID
+     */
+    public void setLQID(Integer LQID) {
+        this.LQID = LQID;
+    }
+
+    /**
+     * 栏期ID
+     */
+    public Integer getLQID() {
+        return LQID;
+    }
+
+    /**
+     * 传感器ID
+     */
+    public void setCGQID(String CGQID) {
+        this.CGQID = CGQID;
+    }
+
+    /**
+     * 传感器ID
+     */
+    public String getCGQID() {
+        return CGQID;
+    }
+
+    /**
+     * 当前氨气
+     */
+    public void setDQAQ(BigDecimal DQAQ) {
+        this.DQAQ = DQAQ;
+    }
+
+    /**
+     * 当前氨气
+     */
+    public BigDecimal getDQAQ() {
+        return DQAQ;
+    }
+
+    /**
+     * 采集时间
+     */
+    public void setCJSJ(Timestamp CJSJ) {
+        this.CJSJ = CJSJ;
+    }
+
+    /**
+     * 采集时间
+     */
+    public Timestamp getCJSJ() {
+        return CJSJ;
+    }
+
+    /**
+     * 上传时间
+     */
+    public void setSCSJ(Timestamp SCSJ) {
+        this.SCSJ = SCSJ;
+    }
+
+    /**
+     * 上传时间
+     */
+    public Timestamp getSCSJ() {
+        return SCSJ;
+    }
+
+    @Override
+    public String toString() {
+        return "SjHkAqEntity{" +
+                "ID=" + ID + '\'' +
+                "LQID=" + LQID + '\'' +
+                "CGQID=" + CGQID + '\'' +
+                "DQAQ=" + DQAQ + '\'' +
+                "CJSJ=" + CJSJ + '\'' +
+                "SCSJ=" + SCSJ + '\'' +
+                '}';
+    }
+}

+ 138 - 0
shiwan/env/src/main/java/com/huimv/env/dao/entity/SjHkSdEntity.java

@@ -0,0 +1,138 @@
+package com.huimv.env.dao.entity;
+
+import javax.persistence.*;
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.sql.Timestamp;
+
+@Entity
+@Table(name = "sj_hk_sd")
+public class SjHkSdEntity implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    @Id
+    @GeneratedValue(strategy = GenerationType.IDENTITY)
+    @Column(name = "ID", nullable = false)
+    private Integer ID;
+
+    /**
+     * 栏期ID
+     */
+    @Column(name = "LQID")
+    private Integer LQID;
+
+    /**
+     * 传感器ID
+     */
+    @Column(name = "CGQID")
+    private String CGQID;
+
+    /**
+     * 当前湿度
+     */
+    @Column(name = "DQSD")
+    private BigDecimal DQSD;
+
+    /**
+     * 采集时间
+     */
+    @Column(name = "CJSJ")
+    private Timestamp CJSJ;
+
+    /**
+     * 上传时间
+     */
+    @Column(name = "SCSJ")
+    private Timestamp SCSJ;
+
+    public void setID(Integer ID) {
+        this.ID = ID;
+    }
+
+    public Integer getID() {
+        return ID;
+    }
+
+    /**
+     * 栏期ID
+     */
+    public void setLQID(Integer LQID) {
+        this.LQID = LQID;
+    }
+
+    /**
+     * 栏期ID
+     */
+    public Integer getLQID() {
+        return LQID;
+    }
+
+    /**
+     * 传感器ID
+     */
+    public void setCGQID(String CGQID) {
+        this.CGQID = CGQID;
+    }
+
+    /**
+     * 传感器ID
+     */
+    public String getCGQID() {
+        return CGQID;
+    }
+
+    /**
+     * 当前湿度
+     */
+    public void setDQSD(BigDecimal DQSD) {
+        this.DQSD = DQSD;
+    }
+
+    /**
+     * 当前湿度
+     */
+    public BigDecimal getDQSD() {
+        return DQSD;
+    }
+
+    /**
+     * 采集时间
+     */
+    public void setCJSJ(Timestamp CJSJ) {
+        this.CJSJ = CJSJ;
+    }
+
+    /**
+     * 采集时间
+     */
+    public Timestamp getCJSJ() {
+        return CJSJ;
+    }
+
+    /**
+     * 上传时间
+     */
+    public void setSCSJ(Timestamp SCSJ) {
+        this.SCSJ = SCSJ;
+    }
+
+    /**
+     * 上传时间
+     */
+    public Timestamp getSCSJ() {
+        return SCSJ;
+    }
+
+    @Override
+    public String toString() {
+        return "SjHkSdEntity{" +
+                "ID=" + ID + '\'' +
+                "LQID=" + LQID + '\'' +
+                "CGQID=" + CGQID + '\'' +
+                "DQSD=" + DQSD + '\'' +
+                "CJSJ=" + CJSJ + '\'' +
+                "SCSJ=" + SCSJ + '\'' +
+                '}';
+    }
+}

+ 138 - 0
shiwan/env/src/main/java/com/huimv/env/dao/entity/SjHkWdEntity.java

@@ -0,0 +1,138 @@
+package com.huimv.env.dao.entity;
+
+import javax.persistence.*;
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.sql.Timestamp;
+
+@Entity
+@Table(name = "sj_hk_wd")
+public class SjHkWdEntity implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    @Id
+    @GeneratedValue(strategy = GenerationType.IDENTITY)
+    @Column(name = "ID", nullable = false)
+    private Integer ID;
+
+    /**
+     * 栏期ID
+     */
+    @Column(name = "LQID")
+    private Integer LQID;
+
+    /**
+     * 传感器ID
+     */
+    @Column(name = "CGQID")
+    private String CGQID;
+
+    /**
+     * 当前温度
+     */
+    @Column(name = "DQWD")
+    private BigDecimal DQWD;
+
+    /**
+     * 采集时间
+     */
+    @Column(name = "CJSJ")
+    private Timestamp CJSJ;
+
+    /**
+     * 上传时间
+     */
+    @Column(name = "SCSJ")
+    private Timestamp SCSJ;
+
+    public void setID(Integer ID) {
+        this.ID = ID;
+    }
+
+    public Integer getID() {
+        return ID;
+    }
+
+    /**
+     * 栏期ID
+     */
+    public void setLQID(Integer LQID) {
+        this.LQID = LQID;
+    }
+
+    /**
+     * 栏期ID
+     */
+    public Integer getLQID() {
+        return LQID;
+    }
+
+    /**
+     * 传感器ID
+     */
+    public void setCGQID(String CGQID) {
+        this.CGQID = CGQID;
+    }
+
+    /**
+     * 传感器ID
+     */
+    public String getCGQID() {
+        return CGQID;
+    }
+
+    /**
+     * 当前温度
+     */
+    public void setDQWD(BigDecimal DQWD) {
+        this.DQWD = DQWD;
+    }
+
+    /**
+     * 当前温度
+     */
+    public BigDecimal getDQWD() {
+        return DQWD;
+    }
+
+    /**
+     * 采集时间
+     */
+    public void setCJSJ(Timestamp CJSJ) {
+        this.CJSJ = CJSJ;
+    }
+
+    /**
+     * 采集时间
+     */
+    public Timestamp getCJSJ() {
+        return CJSJ;
+    }
+
+    /**
+     * 上传时间
+     */
+    public void setSCSJ(Timestamp SCSJ) {
+        this.SCSJ = SCSJ;
+    }
+
+    /**
+     * 上传时间
+     */
+    public Timestamp getSCSJ() {
+        return SCSJ;
+    }
+
+    @Override
+    public String toString() {
+        return "SjHkWdEntity{" +
+                "ID=" + ID + '\'' +
+                "LQID=" + LQID + '\'' +
+                "CGQID=" + CGQID + '\'' +
+                "DQWD=" + DQWD + '\'' +
+                "CJSJ=" + CJSJ + '\'' +
+                "SCSJ=" + SCSJ + '\'' +
+                '}';
+    }
+}

+ 15 - 0
shiwan/env/src/main/java/com/huimv/env/dao/repo/DaLqdaEntityRepository.java

@@ -0,0 +1,15 @@
+package com.huimv.env.dao.repo;
+
+import com.alibaba.fastjson.JSONArray;
+import com.huimv.env.dao.entity.DaLqdaEntity;
+import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
+import org.springframework.data.jpa.repository.Query;
+
+import java.util.List;
+
+public interface DaLqdaEntityRepository extends JpaRepository<DaLqdaEntity, Integer>, JpaSpecificationExecutor<DaLqdaEntity> {
+
+    @Query(nativeQuery = true , value = "SELECT * FROM da_lqda WHERE id IN(SELECT MAX(id) FROM da_lqda WHERE zsid IN(?1) GROUP BY zsid)")
+    List<DaLqdaEntity> getLqid(List<Integer> zsids);
+}

+ 9 - 0
shiwan/env/src/main/java/com/huimv/env/dao/repo/DaMcdaEntityRepository.java

@@ -0,0 +1,9 @@
+package com.huimv.env.dao.repo;
+
+import com.huimv.env.dao.entity.DaMcdaEntity;
+import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
+
+public interface DaMcdaEntityRepository extends JpaRepository<DaMcdaEntity, Integer>, JpaSpecificationExecutor<DaMcdaEntity> {
+
+}

+ 2 - 5
shiwan/env/src/main/java/com/huimv/env/dao/repo/DaZsdaEntityRepository.java

@@ -6,12 +6,9 @@ import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
 import org.springframework.data.jpa.repository.Query;
 
 import java.util.List;
-import java.util.Optional;
-
 
 public interface DaZsdaEntityRepository extends JpaRepository<DaZsdaEntity, Integer>, JpaSpecificationExecutor<DaZsdaEntity> {
 
-    @Query(nativeQuery = true , value = "SELECT * FROM da_zsda WHERE id=?1")
-//    @Query(nativeQuery = true , value = "SELECT * FROM da_zsda")
-    List<DaZsdaEntity> findById2(int i);
+    @Query(nativeQuery = true , value = "SELECT * FROM da_zsda WHERE mcid=?1 AND ZFBZ=0")
+    List<DaZsdaEntity> getAllZs(int mcid);
 }

+ 18 - 0
shiwan/env/src/main/java/com/huimv/env/dao/repo/SjHkAqEntityRepository.java

@@ -0,0 +1,18 @@
+package com.huimv.env.dao.repo;
+
+import com.huimv.env.dao.entity.SjHkAqEntity;
+import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
+import org.springframework.data.jpa.repository.Query;
+
+import java.util.List;
+
+public interface SjHkAqEntityRepository extends JpaRepository<SjHkAqEntity, Integer>, JpaSpecificationExecutor<SjHkAqEntity> {
+
+    @Query(nativeQuery = true , value = "SELECT id,CGQID,lqid,dqaq,CJSJ,SCSJ FROM sj_hk_aq WHERE id IN(SELECT MAX(id) FROM sj_hk_aq WHERE lqid IN(?1) AND DATE_FORMAT(CJSJ,'%Y-%m-%d')=?2 GROUP BY lqid)")
+    List<SjHkAqEntity> getLastAq(List<Integer> lqids,String todayDate);
+
+//    @Query(nativeQuery = true , value = "SELECT id,CGQID,lqid,dqaq,CJSJ,SCSJ FROM sj_hk_aq WHERE lqid=?1 AND function(\"date_format\",CJSJ,\"%Y-%m-%d\")=?2 ORDER BY cjsj DESC LIMIT 0,1)")
+    @Query(nativeQuery = true , value = "SELECT id,CGQID,lqid,dqaq,CJSJ,SCSJ FROM sj_hk_aq WHERE lqid=?1 AND date_format(CJSJ,'%Y-%m-%d')=?2 ORDER BY cjsj DESC LIMIT 0,1")
+    SjHkAqEntity getLastAq(Integer lqid,String todayDate);
+}

+ 18 - 0
shiwan/env/src/main/java/com/huimv/env/dao/repo/SjHkSdEntityRepository.java

@@ -0,0 +1,18 @@
+package com.huimv.env.dao.repo;
+
+import com.huimv.env.dao.entity.SjHkAqEntity;
+import com.huimv.env.dao.entity.SjHkSdEntity;
+import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
+import org.springframework.data.jpa.repository.Query;
+
+import java.util.List;
+
+public interface SjHkSdEntityRepository extends JpaRepository<SjHkSdEntity, Integer>, JpaSpecificationExecutor<SjHkSdEntity> {
+
+    @Query(nativeQuery = true , value = "SELECT ID,LQID,CGQID,DQSD,CJSJ,SCSJ FROM sj_hk_sd WHERE id IN( SELECT MAX(id) FROM sj_hk_sd WHERE lqid IN(?1) AND DATE_FORMAT(CJSJ,'%Y-%m-%d')=?2  GROUP BY lqid)")
+    List<SjHkSdEntity> getLastSd(List lqidList,String date);
+
+    @Query(nativeQuery = true , value = "SELECT id,CGQID,lqid,dqsd,CJSJ,SCSJ FROM sj_hk_sd WHERE lqid=?1 AND DATE_FORMAT(CJSJ,'%Y-%m-%d')=?2 ORDER BY cjsj DESC LIMIT 0,1")
+    SjHkSdEntity getLastSd(Integer lqid, String todayDate);
+}

+ 19 - 0
shiwan/env/src/main/java/com/huimv/env/dao/repo/SjHkWdEntityRepository.java

@@ -0,0 +1,19 @@
+package com.huimv.env.dao.repo;
+
+import com.huimv.env.dao.entity.SjHkAqEntity;
+import com.huimv.env.dao.entity.SjHkSdEntity;
+import com.huimv.env.dao.entity.SjHkWdEntity;
+import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
+import org.springframework.data.jpa.repository.Query;
+
+import java.util.List;
+
+public interface SjHkWdEntityRepository extends JpaRepository<SjHkWdEntity, Integer>, JpaSpecificationExecutor<SjHkWdEntity> {
+
+    @Query(nativeQuery = true , value = "SELECT id,lqid,cgqid,dqwd,cjsj,scsj FROM sj_hk_wd WHERE id IN(SELECT MAX(id) FROM sj_hk_wd WHERE lqid IN(?1) AND DATE_FORMAT(CJSJ,'%Y-%m-%d')=?2  GROUP BY lqid)")
+    List<SjHkWdEntity> getLastWd(List lqidList,String date);
+
+    @Query(nativeQuery = true , value = "SELECT id,CGQID,lqid,dqwd,CJSJ,SCSJ FROM sj_hk_wd WHERE lqid=?1 AND DATE_FORMAT(CJSJ,'%Y-%m-%d')=?2 ORDER BY cjsj DESC LIMIT 0,1")
+    SjHkWdEntity getLastWd(Integer lqid, String todayDate);
+}

+ 1 - 1
shiwan/env/src/main/java/com/huimv/env/scheduler/Scheduler.java

@@ -20,7 +20,7 @@ public class Scheduler {
 
     //每隔2秒执行一次
 //    @Scheduled(fixedRate = 2000)
-//    @Scheduled(cron = "02 * * * * *")
+//    @Scheduled(cron = "0 0/5 * * * ?")
     public void testTasks1() {
         System.out.println("定时任务执行时间:" + dateFormat.format(new Date()));
     }

+ 32 - 0
shiwan/env/src/main/java/com/huimv/env/service/IEnvironmentService.java

@@ -0,0 +1,32 @@
+package com.huimv.env.service;
+
+import com.alibaba.fastjson.JSONArray;
+import com.huimv.common.utils.Result;
+
+/**
+ * @Project : huimv.shiwan
+ * @Package : com.huimv.biosafety.uface.controller
+ * @Description : TODO
+ * @Version : 1.0
+ * @Author : ZhuoNing
+ * @Create : 2020-12-25
+ **/
+public interface IEnvironmentService {
+    /**
+     * @Method      : getLastEnvData
+     * @Description : 
+     * @Params      : [mcid]
+     * @Return      : com.huimv.common.utils.Result
+     * 
+     * @Author      : ZhuoNing
+     * @Date        : 2020/12/28       
+     * @Time        : 17:25
+     */
+    Result getLastEnvData(int mcid);
+
+    Result getLastEnvData2(int mcid);
+
+    Result getZsda(int mcid);
+
+    Result getLastEnvByLq(Integer lqid);
+}

+ 34 - 1
shiwan/env/src/main/java/com/huimv/env/service/impl/EnvServiceImpl.java

@@ -24,6 +24,39 @@ public class EnvServiceImpl implements IEnvService {
     @Autowired
     private DaZsdaEntityRepository daZsdaEntityRepo;
 
+
+    /**
+     * @Method      : getEnvData
+     * @Description : 获取5分钟之前的
+     * @Params      : []
+     * @Return      : java.util.List
+     * 
+     * @Author      : ZhuoNing
+     * @Date        : 2020/12/27       
+     * @Time        : 17:29
+     */
+    @DS("slave")
+    public List getLastEnvData(){
+
+        return null;
+    }
+    
+    /**
+     * @Method      : getPartEnvData
+     * @Description : 
+     * @Params      : []
+     * @Return      : java.lang.String
+     * 
+     * @Author      : ZhuoNing
+     * @Date        : 2020/12/27       
+     * @Time        : 21:13
+     */
+    @DS("slave")
+    public String getPartEnvData(){
+
+        return null;
+    }
+
     @Override
     @DS("slave")
     public void getEnv() {
@@ -33,9 +66,9 @@ public class EnvServiceImpl implements IEnvService {
 //        List<DaZsdaEntity> daZsdaEntityList = daZsdaEntityRepo.findById2(id);
         System.out.println("daZsdaEntity:454>>"+daZsdaEntity.toString());
 
-
     }
 
+
     @Override
     @DS("master")
     public void getEnv2() {

+ 328 - 0
shiwan/env/src/main/java/com/huimv/env/service/impl/EnvironmentServiceImpl.java

@@ -0,0 +1,328 @@
+package com.huimv.env.service.impl;
+
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
+import com.baomidou.dynamic.datasource.annotation.DS;
+import com.huimv.common.utils.DateUtil;
+import com.huimv.common.utils.Result;
+import com.huimv.common.utils.ResultCode;
+import com.huimv.env.dao.entity.*;
+import com.huimv.env.dao.repo.*;
+import com.huimv.env.service.IEnvironmentService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.math.BigDecimal;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * @Project : huimv.shiwan
+ * @Package : com.huimv.biosafety.uface.controller
+ * @Description : TODO
+ * @Version : 1.0
+ * @Author : ZhuoNing
+ * @Create : 2020-12-25
+ **/
+@Service
+public class EnvironmentServiceImpl implements IEnvironmentService {
+
+    @Autowired
+    private DaZsdaEntityRepository zsdaEntityRepo;
+    @Autowired
+    private DaLqdaEntityRepository lqdaEntityRepo;
+    @Autowired
+    private SjHkAqEntityRepository aqEntityRepo;
+    @Autowired
+    private SjHkSdEntityRepository sdEntityRepo;
+    @Autowired
+    private SjHkWdEntityRepository wdEntityRepo;
+
+    @Override
+    @DS("slave")
+    public Result getLastEnvData(int mcid) {
+        //--读取所有猪舍
+        List<DaZsdaEntity> zsdsList = zsdaEntityRepo.getAllZs(mcid);
+//        System.out.println("zsdsList.size>>"+zsdsList.size());
+        if (zsdsList.size() == 0) {
+            //返回出错
+            return new Result(10001, "牧场id(" + mcid + ")中的猪舍为0", false);
+        }
+        List zsidList = new ArrayList();
+        for (DaZsdaEntity zsdaEntity : zsdsList) {
+            zsidList.add(zsdaEntity.getID());
+        }
+//        System.out.println("zsSb>>"+zsidList.toString());
+        //--读取所有栏期
+        List<DaLqdaEntity> lqdaEntityList = lqdaEntityRepo.getLqid(zsidList);
+//        System.out.println("栏期length>>"+lqdaEntityList.size());
+        if (lqdaEntityList.size() == 0) {
+            //返回出错.
+            return new Result(10002, "这个牧场(" + mcid + ")中的猪舍暂无相关任何栏期", false);
+        }
+        List lqidList = new ArrayList();
+        for (DaLqdaEntity lqdaEntity : lqdaEntityList) {
+            lqidList.add(lqdaEntity.getID());
+        }
+//        System.out.println("lqidList>>"+lqidList.toString());
+        for (DaZsdaEntity zsdaEntity : zsdsList) {
+            int zsid = zsdaEntity.getID();
+//            String zsmc = zsdaEntity.getZSMC();
+            for (DaLqdaEntity lqdaEntity : lqdaEntityList) {
+                if (lqdaEntity.getZSID() == zsid) {
+                    zsdaEntity.setLqid(lqdaEntity.getID());
+                    break;
+                }
+            }
+        }
+        String todayDate = new DateUtil().formatDate(new Date());
+        System.out.println("" + lqidList.toString());
+//        //--读取最新氨气
+        List<SjHkAqEntity> aqList = aqEntityRepo.getLastAq(lqidList, todayDate);
+//        System.out.println("aqList.size>>"+aqList.size());
+
+        //--读取最新湿度
+        List<SjHkSdEntity> sdList = sdEntityRepo.getLastSd(lqidList, todayDate);
+//        System.out.println("sdList.size>>"+sdList.size());
+
+        //--读取最新温度
+        List<SjHkWdEntity> wdList = wdEntityRepo.getLastWd(lqidList, todayDate);
+//        System.out.println("wdList.size>>"+wdList.size());
+        for (DaZsdaEntity zsdaEntity : zsdsList) {
+//            System.out.println(zsdaEntity.getZSMC()+","+zsdaEntity.getLqid());
+            // 温度
+            for (SjHkWdEntity wdEntity : wdList) {
+                if (wdEntity.getLQID() == zsdaEntity.getLqid()) {
+                    zsdaEntity.setDqwd(wdEntity.getDQWD());
+                    break;
+                }
+            }
+            // 湿度
+            for (SjHkSdEntity sdEntity : sdList) {
+                if (sdEntity.getLQID() == zsdaEntity.getLqid()) {
+                    zsdaEntity.setDqsd(sdEntity.getDQSD());
+                    break;
+                }
+            }
+            // 氨气
+            for (SjHkAqEntity aqEntity : aqList) {
+                if (aqEntity.getLQID() == zsdaEntity.getLqid()) {
+                    zsdaEntity.setDqaq(aqEntity.getDQAQ());
+//                    System.out.println("dqaq>>"+aqEntity.getDQAQ());
+                    break;
+                }
+            }
+        }
+        JSONArray envJa = new JSONArray();
+        for (DaZsdaEntity zsdaEntity : zsdsList) {
+            JSONObject envJo = new JSONObject();
+            envJa.add(envJo);
+//            System.out.println(""+zsdaEntity.toString());
+            envJo.put("id", zsdaEntity.getID());
+            envJo.put("position", zsdaEntity.getZSMC());
+            // 温度
+            if (zsdaEntity.getDqwd() == null) {
+                envJo.put("temp", "");
+            } else {
+                envJo.put("temp", zsdaEntity.getDqwd());
+            }
+            // 湿度
+            if (zsdaEntity.getDqsd() == null) {
+                envJo.put("humidity", "");
+            } else {
+                envJo.put("humidity", zsdaEntity.getDqsd());
+            }
+            // 氨气
+            if (zsdaEntity.getDqaq() == null) {
+                envJo.put("ammonia", "");
+            } else {
+                envJo.put("ammonia", zsdaEntity.getDqaq());
+            }
+        }
+        return new Result(ResultCode.SUCCESS, envJa);
+    }
+
+    /**
+     * @Method      : getLastEnvData2
+     * @Description : 
+     * @Params      : [mcid]
+     * @Return      : com.huimv.common.utils.Result
+     * 
+     * @Author      : ZhuoNing
+     * @Date        : 2020/12/28       
+     * @Time        : 21:01
+     */
+    @Override
+    @DS("slave")
+    public Result getLastEnvData2(int mcid) {
+        //--读取所有猪舍
+        List<DaZsdaEntity> zsdsList = zsdaEntityRepo.getAllZs(mcid);
+//        System.out.println("zsdsList.size>>"+zsdsList.size());
+        if (zsdsList.size() == 0) {
+            //返回出错
+            return new Result(10001, "牧场id(" + mcid + ")中的猪舍为0", false);
+        }
+        List zsidList = new ArrayList();
+        for (DaZsdaEntity zsdaEntity : zsdsList) {
+            zsidList.add(zsdaEntity.getID());
+        }
+//        System.out.println("zsSb>>"+zsidList.toString());
+        //--读取所有栏期
+        List<DaLqdaEntity> lqdaEntityList = lqdaEntityRepo.getLqid(zsidList);
+//        System.out.println("栏期length>>"+lqdaEntityList.size());
+        if (lqdaEntityList.size() == 0) {
+            //返回出错.
+            return new Result(10002, "这个牧场(" + mcid + ")中的猪舍暂无相关任何栏期", false);
+        }
+        List lqidList = new ArrayList();
+        for (DaLqdaEntity lqdaEntity : lqdaEntityList) {
+            lqidList.add(lqdaEntity.getID());
+        }
+//        System.out.println("lqidList>>"+lqidList.toString());
+        for (DaZsdaEntity zsdaEntity : zsdsList) {
+            int zsid = zsdaEntity.getID();
+//            String zsmc = zsdaEntity.getZSMC();
+            for (DaLqdaEntity lqdaEntity : lqdaEntityList) {
+                if (lqdaEntity.getZSID() == zsid) {
+                    zsdaEntity.setLqid(lqdaEntity.getID());
+                    break;
+                }
+            }
+        }
+        String todayDate = new DateUtil().formatDate(new Date());
+        System.out.println("" + lqidList.toString());
+
+        JSONArray envJa = new JSONArray();
+        for (DaZsdaEntity zsdaEntity : zsdsList) {
+            int lqid = zsdaEntity.getLqid();
+            System.out.println("lqid>>" + lqid);
+            JSONObject envJo = new JSONObject();
+            envJa.add(envJo);
+            envJo.put("id",zsdaEntity.getID());
+            envJo.put("zsmc",zsdaEntity.getZSMC());
+            //--读取最新氨气
+            SjHkAqEntity aqEntity = aqEntityRepo.getLastAq(lqid, todayDate);
+            System.out.println("aqEntity>>" + aqEntity);
+            if (aqEntity != null) {
+                envJo.put("ammonia", aqEntity.getDQAQ());
+            } else {
+                envJo.put("ammonia", "");
+            }
+            //--读取最新湿度
+            SjHkSdEntity sdEntity = sdEntityRepo.getLastSd(lqid, todayDate);
+            if (sdEntity != null) {
+                envJo.put("humidity", sdEntity.getDQSD());
+            } else {
+                envJo.put("humidity", "");
+            }
+            //--读取最新温度
+            SjHkWdEntity wdEntity = wdEntityRepo.getLastWd(lqid, todayDate);
+            if (wdEntity != null) {
+                envJo.put("temp", wdEntity.getDQWD());
+            } else {
+                envJo.put("temp", "");
+            }
+        }
+        return new Result(ResultCode.SUCCESS, envJa);
+    }
+
+    /**
+     * @Method      : getZsda
+     * @Description : 
+     * @Params      : [mcid]
+     * @Return      : com.huimv.common.utils.Result
+     * 
+     * @Author      : ZhuoNing
+     * @Date        : 2020/12/28       
+     * @Time        : 21:01
+     */
+    @Override
+    @DS("slave")
+    public Result getZsda(int mcid) {
+        //--读取所有猪舍
+        List<DaZsdaEntity> zsdsList = zsdaEntityRepo.getAllZs(mcid);
+//        System.out.println("zsdsList.size>>"+zsdsList.size());
+        if (zsdsList.size() == 0) {
+            //返回出错
+            return new Result(10001, "牧场id(" + mcid + ")中的猪舍为0", false);
+        }
+        List zsidList = new ArrayList();
+        for (DaZsdaEntity zsdaEntity : zsdsList) {
+            zsidList.add(zsdaEntity.getID());
+        }
+//        System.out.println("zsSb>>"+zsidList.toString());
+        //--读取所有栏期
+        List<DaLqdaEntity> lqdaEntityList = lqdaEntityRepo.getLqid(zsidList);
+//        System.out.println("栏期length>>"+lqdaEntityList.size());
+        if (lqdaEntityList.size() == 0) {
+            //返回出错.
+            return new Result(10002, "这个牧场(" + mcid + ")中的猪舍暂无相关任何栏期", false);
+        }
+        List lqidList = new ArrayList();
+//        for (DaLqdaEntity lqdaEntity : lqdaEntityList) {
+//            lqidList.add(lqdaEntity.getID());
+//        }
+//        System.out.println("lqidList>>"+lqidList.toString());
+        JSONArray zsJa = new JSONArray();
+        for (DaZsdaEntity zsdaEntity : zsdsList) {
+            int zsid = zsdaEntity.getID();
+            JSONObject zsJo = new JSONObject();
+            zsJa.add(zsJo);
+            zsJo.put("zsid", zsid);
+            zsJo.put("zsmc", zsdaEntity.getZSMC());
+            for (DaLqdaEntity lqdaEntity : lqdaEntityList) {
+                if (lqdaEntity.getZSID() == zsid) {
+                    zsJo.put("lqid", zsdaEntity.getID());
+                    break;
+                }
+            }
+        }
+        return new Result(ResultCode.SUCCESS, zsJa);
+    }
+
+    /**
+     * @Method      : getLastEnvByLq
+     * @Description : 
+     * @Params      : [lqid]
+     * @Return      : com.huimv.common.utils.Result
+     * 
+     * @Author      : ZhuoNing
+     * @Date        : 2020/12/28       
+     * @Time        : 21:01
+     */
+    @Override
+    @DS("slave")
+    public Result getLastEnvByLq(Integer lqid) {
+        String todayDate = new DateUtil().formatDate(new Date());
+//        JSONArray envJa = new JSONArray();
+        JSONObject envJo = new JSONObject();
+//        envJa.add(envJo);
+        envJo.put("lqid",lqid);
+        //--读取最新氨气
+        SjHkAqEntity aqEntity = aqEntityRepo.getLastAq(lqid, todayDate);
+        System.out.println("aqEntity>>" + aqEntity);
+        if (aqEntity != null) {
+            envJo.put("ammonia", aqEntity.getDQAQ());
+        } else {
+            envJo.put("ammonia", "");
+        }
+        //--读取最新湿度
+        SjHkSdEntity sdEntity = sdEntityRepo.getLastSd(lqid, todayDate);
+        if (sdEntity != null) {
+            envJo.put("humidity", sdEntity.getDQSD());
+        } else {
+            envJo.put("humidity", "");
+        }
+        //--读取最新温度
+        SjHkWdEntity wdEntity = wdEntityRepo.getLastWd(lqid, todayDate);
+        if (wdEntity != null) {
+            envJo.put("temp", wdEntity.getDQWD());
+        } else {
+            envJo.put("temp", "");
+        }
+        return new Result(ResultCode.SUCCESS, envJo);
+    }
+
+
+}

+ 47 - 17
shiwan/env/src/main/resources/application-prod.yml

@@ -6,26 +6,56 @@ spring:
     name: env
 
   datasource:
-    url: jdbc:mysql://192.168.1.7:3306/core_db?useUnicode=true&characterEncoding=UTF-8&useSSL=false&autoReconnect=true&serverTimezone=Asia/Shanghai
-    username: root
-    password: hm123456
-    driver-class-name: com.mysql.cj.jdbc.Driver
+    dynamic:
+      druid: #以下是全局默认值,可以全局更改
+        initial-size: 0
+        max-active: 8
+        min-idle: 2
+        max-wait: -1
+        min-evictable-idle-time-millis: 30000
+        max-evictable-idle-time-millis: 30000
+        time-between-eviction-runs-millis: 0
+        validation-query: select 1
+        validation-query-timeout: -1
+        test-on-borrow: false
+        test-on-return: false
+        test-while-idle: true
+        pool-prepared-statements: true
+        max-open-prepared-statements: 100
+        filters: stat,wall
+        share-prepared-statements: true
+      datasource:
+        master:
+          url: jdbc:mysql://192.168.1.7:3306/env_db?useUnicode=true&characterEncoding=UTF-8&useSSL=false&autoReconnect=true&serverTimezone=Asia/Shanghai
+          driver-class-name: com.mysql.cj.jdbc.Driver
+          username: root
+          password: hm123456
+          druid:
+            initial-size: 5
+        slave:
+          url: jdbc:mysql://122.112.219.87:3306/ifm?useUnicode=true&characterEncoding=UTF-8&useSSL=false&autoReconnect=true&serverTimezone=Asia/Shanghai
+          username: huimv
+          password: hm123456
+          driver-class-name: com.mysql.cj.jdbc.Driver
+          druid:
+            initial-size: 3
+
+
   jpa:
     hibernate:
       ddl-auto: update
     database-platform: org.hibernate.dialect.MySQL5InnoDBDialect
-    #    dialect: org.hibernate.dialect.MySQL8Dialect
     open-in-view: false
 
-  redis:
-    database: 0
-    host: 119.3.84.55
-    port: 6379
-    password: hm123456
-    jedis:
-      pool:
-        max-active: 20
-        max-wait: -1
-        max-idle: 10
-        min-idle: 0
-    timeout: 5000
+#  redis:
+#    database: 0
+#    host: 119.3.84.55
+#    port: 6379
+#    password: hm123456
+#    jedis:
+#      pool:
+#        max-active: 20
+#        max-wait: -1
+#        max-idle: 10
+#        min-idle: 0
+#    timeout: 5000

+ 1 - 1
shiwan/env/src/main/resources/application-test.yml

@@ -31,7 +31,7 @@ spring:
     database: mysql
     hibernate:
       ddl-auto: update
-#    database-platform: org.hibernate.dialect.MySQL5InnoDBDialect
+    database-platform: org.hibernate.dialect.MySQL5InnoDBDialect
     open-in-view: true
 
     #  redis:

+ 1 - 0
shiwan/env/src/main/resources/application.properties

@@ -1 +1,2 @@
 spring.profiles.active=test
+