浏览代码

Merge remote-tracking branch 'origin/master'

523096025 4 年之前
父节点
当前提交
145390e3cb

+ 0 - 148
ear_tag/huimv-eartag-monitor/huimv-eartag-monitor.iml

@@ -1,148 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<module org.jetbrains.idea.maven.project.MavenProjectsManager.isMavenModule="true" type="JAVA_MODULE" version="4">
-  <component name="FacetManager">
-    <facet type="jpa" name="JPA">
-      <configuration>
-        <setting name="validation-enabled" value="true" />
-        <setting name="provider-name" value="Hibernate" />
-        <datasource-mapping />
-        <naming-strategy-map />
-      </configuration>
-    </facet>
-    <facet type="Spring" name="Spring">
-      <configuration />
-    </facet>
-    <facet type="web" name="Web">
-      <configuration>
-        <webroots />
-        <sourceRoots>
-          <root url="file://$MODULE_DIR$/src/main/java" />
-          <root url="file://$MODULE_DIR$/src/main/resources" />
-        </sourceRoots>
-      </configuration>
-    </facet>
-  </component>
-  <component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_8">
-    <output url="file://$MODULE_DIR$/target/classes" />
-    <output-test url="file://$MODULE_DIR$/target/test-classes" />
-    <content url="file://$MODULE_DIR$">
-      <sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
-      <sourceFolder url="file://$MODULE_DIR$/src/main/resources" type="java-resource" />
-      <sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
-      <excludeFolder url="file://$MODULE_DIR$/target" />
-    </content>
-    <orderEntry type="inheritedJdk" />
-    <orderEntry type="sourceFolder" forTests="false" />
-    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-web:2.4.2" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter:2.4.2" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot:2.4.2" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-autoconfigure:2.4.2" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-logging:2.4.2" level="project" />
-    <orderEntry type="library" name="Maven: ch.qos.logback:logback-classic:1.2.3" level="project" />
-    <orderEntry type="library" name="Maven: ch.qos.logback:logback-core:1.2.3" level="project" />
-    <orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-to-slf4j:2.13.3" level="project" />
-    <orderEntry type="library" name="Maven: jakarta.annotation:jakarta.annotation-api:1.3.5" level="project" />
-    <orderEntry type="library" name="Maven: org.yaml:snakeyaml:1.27" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-json:2.4.2" level="project" />
-    <orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-databind:2.11.4" level="project" />
-    <orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.11.4" level="project" />
-    <orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-core:2.11.4" level="project" />
-    <orderEntry type="library" name="Maven: com.fasterxml.jackson.datatype:jackson-datatype-jdk8:2.11.4" level="project" />
-    <orderEntry type="library" name="Maven: com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.11.4" level="project" />
-    <orderEntry type="library" name="Maven: com.fasterxml.jackson.module:jackson-module-parameter-names:2.11.4" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-tomcat:2.4.2" level="project" />
-    <orderEntry type="library" name="Maven: org.apache.tomcat.embed:tomcat-embed-core:9.0.41" level="project" />
-    <orderEntry type="library" name="Maven: org.glassfish:jakarta.el:3.0.3" level="project" />
-    <orderEntry type="library" name="Maven: org.apache.tomcat.embed:tomcat-embed-websocket:9.0.41" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework:spring-web:5.3.3" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework:spring-beans:5.3.3" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework:spring-webmvc:5.3.3" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework:spring-aop:5.3.3" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework:spring-context:5.3.3" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework:spring-expression:5.3.3" level="project" />
-    <orderEntry type="library" scope="TEST" name="Maven: org.springframework.boot:spring-boot-starter-test:2.4.2" level="project" />
-    <orderEntry type="library" scope="TEST" name="Maven: org.springframework.boot:spring-boot-test:2.4.2" level="project" />
-    <orderEntry type="library" scope="TEST" name="Maven: org.springframework.boot:spring-boot-test-autoconfigure:2.4.2" level="project" />
-    <orderEntry type="library" scope="TEST" name="Maven: com.jayway.jsonpath:json-path:2.4.0" level="project" />
-    <orderEntry type="library" scope="TEST" name="Maven: net.minidev:json-smart:2.3" level="project" />
-    <orderEntry type="library" scope="TEST" name="Maven: net.minidev:accessors-smart:1.2" level="project" />
-    <orderEntry type="library" scope="TEST" name="Maven: org.ow2.asm:asm:5.0.4" level="project" />
-    <orderEntry type="library" name="Maven: org.slf4j:slf4j-api:1.7.30" level="project" />
-    <orderEntry type="library" name="Maven: jakarta.xml.bind:jakarta.xml.bind-api:2.3.3" level="project" />
-    <orderEntry type="library" name="Maven: jakarta.activation:jakarta.activation-api:1.2.2" level="project" />
-    <orderEntry type="library" scope="TEST" name="Maven: org.assertj:assertj-core:3.18.1" level="project" />
-    <orderEntry type="library" scope="TEST" name="Maven: org.hamcrest:hamcrest:2.2" level="project" />
-    <orderEntry type="library" scope="TEST" name="Maven: org.junit.jupiter:junit-jupiter:5.7.0" level="project" />
-    <orderEntry type="library" scope="TEST" name="Maven: org.junit.jupiter:junit-jupiter-api:5.7.0" level="project" />
-    <orderEntry type="library" scope="TEST" name="Maven: org.apiguardian:apiguardian-api:1.1.0" level="project" />
-    <orderEntry type="library" scope="TEST" name="Maven: org.opentest4j:opentest4j:1.2.0" level="project" />
-    <orderEntry type="library" scope="TEST" name="Maven: org.junit.platform:junit-platform-commons:1.7.0" level="project" />
-    <orderEntry type="library" scope="TEST" name="Maven: org.junit.jupiter:junit-jupiter-params:5.7.0" level="project" />
-    <orderEntry type="library" scope="TEST" name="Maven: org.junit.jupiter:junit-jupiter-engine:5.7.0" level="project" />
-    <orderEntry type="library" scope="TEST" name="Maven: org.junit.platform:junit-platform-engine:1.7.0" level="project" />
-    <orderEntry type="library" scope="TEST" name="Maven: org.mockito:mockito-core:3.6.28" level="project" />
-    <orderEntry type="library" name="Maven: net.bytebuddy:byte-buddy:1.10.19" level="project" />
-    <orderEntry type="library" scope="TEST" name="Maven: net.bytebuddy:byte-buddy-agent:1.10.19" level="project" />
-    <orderEntry type="library" scope="TEST" name="Maven: org.objenesis:objenesis:3.1" level="project" />
-    <orderEntry type="library" scope="TEST" name="Maven: org.mockito:mockito-junit-jupiter:3.6.28" level="project" />
-    <orderEntry type="library" scope="TEST" name="Maven: org.skyscreamer:jsonassert:1.5.0" level="project" />
-    <orderEntry type="library" scope="TEST" name="Maven: com.vaadin.external.google:android-json:0.0.20131108.vaadin1" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework:spring-core:5.3.3" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework:spring-jcl:5.3.3" level="project" />
-    <orderEntry type="library" scope="TEST" name="Maven: org.springframework:spring-test:5.3.3" level="project" />
-    <orderEntry type="library" scope="TEST" name="Maven: org.xmlunit:xmlunit-core:2.7.0" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-data-jpa:2.4.2" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-aop:2.4.2" level="project" />
-    <orderEntry type="library" name="Maven: org.aspectj:aspectjweaver:1.9.6" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-jdbc:2.4.2" level="project" />
-    <orderEntry type="library" name="Maven: com.zaxxer:HikariCP:3.4.5" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework:spring-jdbc:5.3.3" level="project" />
-    <orderEntry type="library" name="Maven: jakarta.transaction:jakarta.transaction-api:1.3.3" level="project" />
-    <orderEntry type="library" name="Maven: jakarta.persistence:jakarta.persistence-api:2.2.3" level="project" />
-    <orderEntry type="library" name="Maven: org.hibernate:hibernate-core:5.4.27.Final" level="project" />
-    <orderEntry type="library" name="Maven: org.jboss.logging:jboss-logging:3.4.1.Final" level="project" />
-    <orderEntry type="library" name="Maven: org.javassist:javassist:3.27.0-GA" level="project" />
-    <orderEntry type="library" name="Maven: antlr:antlr:2.7.7" level="project" />
-    <orderEntry type="library" name="Maven: org.jboss:jandex:2.1.3.Final" level="project" />
-    <orderEntry type="library" name="Maven: com.fasterxml:classmate:1.5.1" level="project" />
-    <orderEntry type="library" name="Maven: org.dom4j:dom4j:2.1.3" level="project" />
-    <orderEntry type="library" name="Maven: org.hibernate.common:hibernate-commons-annotations:5.1.2.Final" level="project" />
-    <orderEntry type="library" name="Maven: org.glassfish.jaxb:jaxb-runtime:2.3.3" level="project" />
-    <orderEntry type="library" name="Maven: org.glassfish.jaxb:txw2:2.3.3" level="project" />
-    <orderEntry type="library" name="Maven: com.sun.istack:istack-commons-runtime:3.0.11" level="project" />
-    <orderEntry type="library" scope="RUNTIME" name="Maven: com.sun.activation:jakarta.activation:1.2.2" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework.data:spring-data-jpa:2.4.3" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework.data:spring-data-commons:2.4.3" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework:spring-orm:5.3.3" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework:spring-tx:5.3.3" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework:spring-aspects:5.3.3" level="project" />
-    <orderEntry type="library" scope="RUNTIME" name="Maven: mysql:mysql-connector-java:8.0.22" level="project" />
-    <orderEntry type="library" scope="TEST" name="Maven: junit:junit:4.13.1" level="project" />
-    <orderEntry type="library" scope="TEST" name="Maven: org.hamcrest:hamcrest-core:2.2" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-log4j2:2.4.2" level="project" />
-    <orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-slf4j-impl:2.13.3" level="project" />
-    <orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-api:2.13.3" level="project" />
-    <orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-core:2.13.3" level="project" />
-    <orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-jul:2.13.3" level="project" />
-    <orderEntry type="library" name="Maven: org.slf4j:jul-to-slf4j:1.7.30" level="project" />
-    <orderEntry type="library" name="Maven: com.alibaba:fastjson:1.2.62" level="project" />
-    <orderEntry type="library" name="Maven: javax.persistence:persistence-api:1.0" level="project" />
-    <orderEntry type="library" name="Maven: tk.mybatis:mapper-spring-boot-starter:2.1.5" level="project" />
-    <orderEntry type="library" name="Maven: org.mybatis:mybatis:3.4.6" level="project" />
-    <orderEntry type="library" name="Maven: org.mybatis:mybatis-spring:1.3.2" level="project" />
-    <orderEntry type="library" name="Maven: tk.mybatis:mapper-core:1.1.5" level="project" />
-    <orderEntry type="library" name="Maven: tk.mybatis:mapper-base:1.1.5" level="project" />
-    <orderEntry type="library" name="Maven: tk.mybatis:mapper-weekend:1.1.5" level="project" />
-    <orderEntry type="library" name="Maven: tk.mybatis:mapper-spring:1.1.5" level="project" />
-    <orderEntry type="library" name="Maven: tk.mybatis:mapper-extra:1.1.5" level="project" />
-    <orderEntry type="library" name="Maven: tk.mybatis:mapper-spring-boot-autoconfigure:2.1.5" level="project" />
-    <orderEntry type="library" name="Maven: com.github.pagehelper:pagehelper-spring-boot-starter:1.2.3" level="project" />
-    <orderEntry type="library" name="Maven: org.mybatis.spring.boot:mybatis-spring-boot-starter:1.3.1" level="project" />
-    <orderEntry type="library" name="Maven: org.mybatis.spring.boot:mybatis-spring-boot-autoconfigure:1.3.1" level="project" />
-    <orderEntry type="library" name="Maven: com.github.pagehelper:pagehelper-spring-boot-autoconfigure:1.2.3" level="project" />
-    <orderEntry type="library" name="Maven: com.github.pagehelper:pagehelper:5.1.2" level="project" />
-    <orderEntry type="library" name="Maven: com.github.jsqlparser:jsqlparser:1.0" level="project" />
-    <orderEntry type="library" name="Maven: org.projectlombok:lombok:1.18.16" level="project" />
-    <orderEntry type="library" name="Maven: com.huimv:huimv-common:1.0-SNAPSHOT" level="project" />
-  </component>
-</module>

+ 11 - 0
ear_tag/huimv-eartag-monitor/src/main/java/com/huimv/eartag/monitor/EartagMonitorApplication.java

@@ -20,3 +20,14 @@ public class EartagMonitorApplication {
         SpringApplication.run(EartagMonitorApplication.class, args);
     }
 }
+
+
+
+
+
+
+
+
+
+
+

+ 11 - 0
ear_tag/huimv-eartag-monitor/src/main/java/com/huimv/eartag/monitor/dao/EartagDataMapper.java

@@ -2,6 +2,9 @@ package com.huimv.eartag.monitor.dao;
 
 
 import com.huimv.eartag.monitor.pojo.EartagData;
+import com.huimv.eartag.monitor.pojo.Jqid;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
 import tk.mybatis.mapper.common.Mapper;
 
 /****
@@ -10,4 +13,12 @@ import tk.mybatis.mapper.common.Mapper;
  * @Date 2019/6/14 0:12
  *****/
 public interface EartagDataMapper extends Mapper<EartagData> {
+
+
+    //
+    @Select("select  YDL  from eartag_data where eartag_id =#{eartagId} order by id DESC limit 1")
+    Integer getDeviceIdByJQcode(@Param("eartagId") String eartagId);
+
+
+
 }

+ 20 - 1
ear_tag/huimv-eartag-monitor/src/main/java/com/huimv/eartag/monitor/pojo/EartagData.java

@@ -50,7 +50,20 @@ public class EartagData implements Serializable{
     @Column(name = "YDL")
 	private Integer YDL;//运动量
 
-    @Column(name = "CQS")
+
+	@Column(name = "qjydl")
+	private Integer qjydl;//区间运动量
+
+
+	public Integer getQjydl() {
+		return qjydl;
+	}
+
+	public void setQjydl(Integer qjydl) {
+		this.qjydl = qjydl;
+	}
+
+	@Column(name = "CQS")
 	private Integer CQS;//重启数
 
     @Column(name = "RSSYI")
@@ -220,4 +233,10 @@ public class EartagData implements Serializable{
 	public void setHeader(String header) {
 		this.header = header;
 	}
+
+
+
+
+
+
 }

+ 6 - 0
ear_tag/huimv-eartag-monitor/src/main/java/com/huimv/eartag/monitor/service/EartagDataService.java

@@ -69,4 +69,10 @@ public interface EartagDataService {
      * @return
      */
     List<EartagData> findAll();
+
+    /***
+     * 查询最新运动量
+     * @return
+     */
+    Integer findYDL(String eartagId);
 }

+ 7 - 0
ear_tag/huimv-eartag-monitor/src/main/java/com/huimv/eartag/monitor/service/IClientDataPacketService.java

@@ -6,4 +6,11 @@ public interface IClientDataPacketService {
 
     // 解析客户端数据包
     public String handleClientSendPacket(String clientMessage) throws ParseException;
+
+
+
+
+
+
+
 }

+ 3 - 0
ear_tag/huimv-eartag-monitor/src/main/java/com/huimv/eartag/monitor/service/impl/ClientDataPacketServiceImpl.java

@@ -54,7 +54,10 @@ public class ClientDataPacketServiceImpl implements IClientDataPacketService {
             return receivePackageSerivce.handleEartagDampness(clientMessageArray);
         } else if (Integer.parseInt(cmd) == 6) {
             // 处理耳标数据
+            System.out.println("处理耳标数据");
+            System.out.println(clientMessageTxt);
             return receivePackageSerivce.handleEartagData(clientMessageArray).toString();
+
         } else {
             log.error("出错:当前命令cmd>>[" + cmd + "]未做任何处理.");
             return null;

+ 10 - 0
ear_tag/huimv-eartag-monitor/src/main/java/com/huimv/eartag/monitor/service/impl/EartagDataServiceImpl.java

@@ -83,6 +83,8 @@ public class EartagDataServiceImpl implements EartagDataService {
             // 
             if(!StringUtils.isEmpty(eartagData.getId())){
                     criteria.andEqualTo("id",eartagData.getId());
+
+
             }
             // 设备id
             if(!StringUtils.isEmpty(eartagData.getSBID())){
@@ -193,4 +195,12 @@ public class EartagDataServiceImpl implements EartagDataService {
     public List<EartagData> findAll() {
         return eartagDataMapper.selectAll();
     }
+
+
+
+
+    @Override
+    public Integer findYDL(String eartagId) {
+        return eartagDataMapper.getDeviceIdByJQcode(eartagId);
+    }
 }

+ 80 - 29
ear_tag/huimv-eartag-monitor/src/main/java/com/huimv/eartag/monitor/service/impl/ReceivePackageSerivce.java

@@ -14,6 +14,8 @@ import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
+import java.text.DecimalFormat;
+import java.text.NumberFormat;
 import java.text.ParseException;
 
 /**
@@ -40,14 +42,13 @@ public class ReceivePackageSerivce {
     private EartagDampnessService dampnessService;
 
     /**
-     * @Method      : handleEartagData
+     * @Method : handleEartagData
      * @Description : 处理耳标数据
-     * @Params      : [clientMessageArray]
-     * @Return      : java.lang.String
-     * 
-     * @Author      : ZhuoNing
-     * @Date        : 2021/1/16       
-     * @Time        : 12:08
+     * @Params : [clientMessageArray]
+     * @Return : java.lang.String
+     * @Author : ZhuoNing
+     * @Date : 2021/1/16
+     * @Time : 12:08
      */
     public String handleEartagData(String[] clientMessageArray) throws ParseException {
         log.info("开始添加耳标数据......");
@@ -61,24 +62,38 @@ public class ReceivePackageSerivce {
         String nbwd = clientMessageArray[7];
         String ntc = clientMessageArray[8];
         String ebwd = "";
-        String ydl = clientMessageArray[9];
+        String ydl = clientMessageArray[9];/**********/
+        //计算区间运动量
+
+        Integer ydl1 = eartagDataService.findYDL(eartagId);
+        //新添加的耳标没有历史数据,设置为0
+        if (ydl1 == null) {
+            ydl1 = 0;
+        }
+        Integer qjydl = Integer.parseInt(ydl) - ydl1;
+
         String cqs = clientMessageArray[10];
         String rssi = clientMessageArray[11];
         String timestamp = clientMessageArray[12];
         String checkNumber = clientMessageArray[13];
         String commandTail = clientMessageArray[14];
-
-        //
+        //耳标数据填充
         EartagData eartagData = new EartagData();
         eartagData.setHeader(commandHeader);
         eartagData.setCMD(Integer.parseInt(cmd));
         eartagData.setSBID(Integer.parseInt(deviceId));
         eartagData.setVersion(version);
         eartagData.setSerial(Integer.parseInt(serial));
+        eartagData.setQjydl(qjydl);
+
         eartagData.setEartagId(eartagId);
+        //电量不需要处理   89就是89%
         eartagData.setDl(Integer.parseInt(dl));
-        eartagData.setNBWD(Integer.parseInt(nbwd));
-        eartagData.setEBWD(0.0);
+
+        eartagData.setNBWD(Integer.parseInt(nbwd) / 100);
+        // eartagData.setEBWD(0.0);
+        eartagData.setEBWD(ln(Integer.parseInt(ntc)));
+        //热敏电阻值,计算耳标温度
         eartagData.setNtc(Integer.parseInt(ntc));
         eartagData.setYDL(Integer.parseInt(ydl));
         eartagData.setCQS(Integer.parseInt(cqs));
@@ -86,23 +101,23 @@ public class ReceivePackageSerivce {
         eartagData.setTimestamp(DateUtil.parseDateTime(DateUtil.buildDateTimeString(timestamp)));
         eartagData.setCheckNumber(Integer.parseInt(checkNumber));
         eartagData.setMLW(commandTail);
-        // 保存耳标数据
+
+
         eartagDataService.add(eartagData);
         log.info(Const.SAVE_EARTAG_SUCCESS);
         StringBuilder returnSb = new StringBuilder();
-//        return returnSb.append("hm").append("+").append(6).append("+").append(0).append("+").append(6).append("+").append("end").toString();
+//      return returnSb.append("hm").append("+").append(6).append("+").append(0).append("+").append(6).append("+").append("end").toString();
         return "hm+6+0+6+end";
     }
 
     /**
-     * @Method      : _handleEartagDampness
+     * @Method : _handleEartagDampness
      * @Description : 处理网关湿度
-     * @Params      : [clientMessageArray]
-     * @Return      : java.lang.String
-     *
-     * @Author      : ZhuoNing
-     * @Date        : 2021/1/15
-     * @Time        : 17:47
+     * @Params : [clientMessageArray]
+     * @Return : java.lang.String
+     * @Author : ZhuoNing
+     * @Date : 2021/1/15
+     * @Time : 17:47
      */
     public String handleEartagDampness(String[] clientMessageArray) throws ParseException {
         String header = clientMessageArray[0];
@@ -129,14 +144,13 @@ public class ReceivePackageSerivce {
     }
 
     /**
-     * @Method      : _handleEartagTemperature
+     * @Method : _handleEartagTemperature
      * @Description : 处理网关温度
-     * @Params      : [clientMessageArray]
-     * @Return      : java.lang.String
-     *
-     * @Author      : ZhuoNing
-     * @Date        : 2021/1/15
-     * @Time        : 17:46
+     * @Params : [clientMessageArray]
+     * @Return : java.lang.String
+     * @Author : ZhuoNing
+     * @Date : 2021/1/15
+     * @Time : 17:46
      */
     public String handleEartagTemperature(String[] clientMessageArray) throws ParseException {
         String header = clientMessageArray[0];
@@ -152,7 +166,7 @@ public class ReceivePackageSerivce {
         EartagTemperaturePojo.setDeviceId(Integer.parseInt(deviceId));
         EartagTemperaturePojo.setCmd(Integer.parseInt(cmd));
         EartagTemperaturePojo.setSerialNo(Integer.parseInt(serialNo));
-        EartagTemperaturePojo.setValue(Double.parseDouble(value));
+        EartagTemperaturePojo.setValue(Double.parseDouble(value) / 10);
         EartagTemperaturePojo.setCreateDate(DateUtil.parseDateTime(DateUtil.buildDateTimeString(timestamp)));
         EartagTemperaturePojo.setCheckNumber(Integer.parseInt(checkCode));
         EartagTemperaturePojo.setTail(tail);
@@ -161,4 +175,41 @@ public class ReceivePackageSerivce {
         log.info(Const.SAVE_TEMPERATURE_SUCCESS);
         return "hm+4+0+7+end";
     }
+
+
+    public static String swapHex(String src) {
+        String target = "";
+        for (int i = src.length() - 1; i > 0; i -= 2) {
+            target += src.substring(i - 1, i + 1);
+        }
+        return target;
+    }
+
+
+    public static String numberFormater(double d) {
+        DecimalFormat nf = new DecimalFormat();
+        nf.setMaximumFractionDigits(2);
+        return nf.format(d);
+    }
+
+    public static double A = 0.00335396319311466;
+    public static double B = 0.000256376549039663;
+    public static double C = 0.00000248933580817244;
+    public static double D = 0.0000000753805242068686;
+    public static double E = -0.0000000204758173596178;
+
+    //保留一位小数
+    public static double changeDouble(Double dou) {
+        NumberFormat nf = new DecimalFormat("0.0 ");
+        dou = Double.parseDouble(nf.format(dou));
+        return dou;
+    }
+
+    //温度转换
+    public static double ln(int rv) {
+        int R_REF = 10000;
+        double ln = Math.log((double) rv / R_REF);
+        //保留一位小数
+        return changeDouble(1 / (A + B * ln + C * Math.pow(ln, 2) + D * Math.pow(ln, 3) + E * Math.pow(ln, 4)) - 273.15);
+    }
 }

+ 6 - 1
ear_tag/huimv-eartag-monitor/src/main/java/com/huimv/eartag/monitor/socket/Server.java

@@ -1,6 +1,8 @@
 package com.huimv.eartag.monitor.socket;
 
 
+import com.huimv.eartag.monitor.service.IClientDataPacketService;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.boot.CommandLineRunner;
 import org.springframework.stereotype.Component;
 
@@ -11,6 +13,9 @@ import java.net.Socket;
 @Component
 public class Server implements CommandLineRunner {
 
+    @Autowired
+    private IClientDataPacketService iClientDataPacketService;
+
     @Override
     public void run(String... args) throws Exception {
         try {
@@ -26,7 +31,7 @@ public class Server implements CommandLineRunner {
             Socket socket = null;
             while (true) {
                 socket = serverSocket.accept();
-                ServerThread serverThread = new ServerThread(socket);
+                ServerThread serverThread = new ServerThread(socket, iClientDataPacketService);
                 System.out.println("client host address is: " + socket.getInetAddress().getHostAddress());
                 serverThread.start();
                 count++;

+ 9 - 32
ear_tag/huimv-eartag-monitor/src/main/java/com/huimv/eartag/monitor/socket/ServerThread.java

@@ -15,11 +15,12 @@ import java.util.Date;
 public class ServerThread extends Thread {
 
     private Socket socket;
-    @Autowired
+   // @Autowired
     private IClientDataPacketService iClientDataPacketService;
 
-    public ServerThread(Socket socket) {
+    public ServerThread(Socket socket,IClientDataPacketService iClientDataPacketService) {
         this.socket = socket;
+        this.iClientDataPacketService = iClientDataPacketService;
     }
 
     @Override
@@ -35,44 +36,20 @@ public class ServerThread extends Thread {
             // server接收消息
             inputStream = socket.getInputStream();
 
-            outputStream = socket.getOutputStream();
+
             inputStream = socket.getInputStream();
             byte[] b = new byte[1024];
             inputStream.read(b);
             String packet = new String(b);
 
             int i = packet.indexOf("+", packet.indexOf("+") + 1);
-            int ver = Integer.parseInt(packet.substring(i + 1, i + 2));
+            //int ver = Integer.parseInt(packet.substring(i + 1, i + 2));
             outputStream = socket.getOutputStream();
-
+            packet = packet.trim();
             // 处理数据包
-            iClientDataPacketService.handleClientSendPacket(packet);
-
-//            //首次应答返回机器ID
-//            if (ver == 1){
-//
-//            }
-//
-//            if (ver == 2) {
-//                SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
-//                String time = "hm+2+" + sdf.format(new Date()) + "+4+end";
-//                outputStream.write(time.getBytes());
-//            }
-//            if (ver == 6) {
-//                outputStream.write("hm+6+0+6+end".getBytes());
-//            }
-//            if (ver == 3) {
-//                outputStream.write("hm+3+0+6+end".getBytes());
-//
-//            }
-//
-//            if (ver == 4) {
-//                outputStream.write("hm+4+0+7+end".getBytes());
-//
-//            }
-//            if (ver == 8) {
-//                outputStream.write("hm+5+0+8+end".getBytes());
-//            }
+             String ss = iClientDataPacketService.handleClientSendPacket(packet);
+
+            outputStream.write(ss.getBytes());
 
             socket.shutdownInput();