Parcourir la source

修改耳标详情

yang il y a 3 ans
Parent
commit
fb4261ab73

+ 42 - 14
smart.eartag.data.platform/huimv-smart-eartag-data-acquisition/src/main/java/com/huimv/acquisition/service/impl/EartagDataServiceImpl.java

@@ -200,9 +200,6 @@ public class EartagDataServiceImpl extends ServiceImpl<EartagDataDao, EartagData
         wrapper23.eq(MovePigpenEntity::getEartagNo , earTagData.getEartagNo()).orderByAsc( MovePigpenEntity::getId ).last( "limit 1");
         MovePigpenEntity  movePigpen = movePigpenDao.selectOne(wrapper23);
 
-
-
-
         movePigpenEntities.add(movePigpen);//加上去l
 
         System.out.println(movePigpen+"ioioio");//最开始不为空
@@ -272,12 +269,14 @@ public class EartagDataServiceImpl extends ServiceImpl<EartagDataDao, EartagData
         List<EartagDataEntity> eartagDateEntities1 = baseMapper.selectList(lambdaQuery1);
         Map averange = getAverange(starttime, endtime, eartagDateEntities1);
 
+        //这样,时间轴
+
         List<String> timeList = new ArrayList<>();
         List<Double>  tempList = new ArrayList<>();
         List<Integer>  sportsList = new ArrayList<>();
         List<Integer> electricList = new ArrayList<>();
         List<Double> environmenttempList = new ArrayList<>();
-
+        List<String> averangeTemp = new ArrayList<>();
         for (EartagDataEntity data : eartagDateEntities) {
             timeList.add(fmt.format(data.getTime()));
             tempList.add(data.getEarTemp());
@@ -289,32 +288,55 @@ public class EartagDataServiceImpl extends ServiceImpl<EartagDataDao, EartagData
             electricList.add(data.getBat());
             //sleeptime.add(data.getSleepStatus());    用来存睡眠状态了
             environmenttempList.add(data.getEnvTemp());
-        }
+            averangeTemp.add(getMonthDayHour(data.getTime()) );
+            }
 
         map1.put("time",timeList);
         map1.put("temp",tempList);
         map1.put("sports",sportsList);
         map1.put("electric",electricList);
         map1.put("environmenttemp",environmenttempList);
-        map1.put("averangeTemp",averange);
+        map1.put("averangeTemp",averangeTemp);
+
+        System.out.println("changdu"+timeList.size()+"**"+averangeTemp.size()
+        );
+        //对time循环--用contains来处理稍微快一点
+        //map1.put("averangeTemp",averange);
+
         //关于耳标存在的位置的信息,这里需要做记录,如果发生位置迁移那么需要将位置迁移信息记录到一张表中
         return map1;
     }
 
-       Map  getAverange( String  starttime , String endtime  , List<EartagDataEntity>   entityList     ) throws ParseException {
-           DecimalFormat df = new DecimalFormat("####0.00");
+    public  String getMonthDayHour(  Date date  ){
+
+        String year=String.format("%tY", date);
+        String mon=String .format("%tm", date);
+        String day=String .format("%td", date);
+        String h=String .format("%tH", date);
+        String m=String .format("%tM", date);
+        String s=String .format("%tS", date);
+
+return mon+day+h;
+
+    }
+
+
+
+
+
+       public   Map<String ,String>    getAverange( String  starttime , String endtime  , List<EartagDataEntity>   entityList     ) throws ParseException {
+            DecimalFormat df = new DecimalFormat("####0.00");
          DateFormat fmt1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
          SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
-         Map<String, List> map2 = new HashMap();
+
          //格式化传入的时间
          Date startTime = fmt1.parse(starttime);
          Date endTime  =    fmt1.parse(endtime);
-         Map map = new HashMap();
+         Map<String ,String> map = new HashMap<>();
          while(startTime.before(endTime)){
-             Double totlatemp = 0.0;
-             Double avreange = 0.0;
+             double totlatemp = 0.0;
+             double avreange = 0.0;
              System.out.println("开始时间"+startTime+"----"+"结束时间"+endTime);
-
              int a =0;
              for (EartagDataEntity data : entityList) {
                  //这个操作占用时间太多
@@ -324,14 +346,20 @@ public class EartagDataServiceImpl extends ServiceImpl<EartagDataDao, EartagData
                      System.out.println(data.getEarTemp());
                  }
              }
+
              System.out.println("结果"+totlatemp+a+totlatemp/a);
              //直接三元
              if(totlatemp/a>0.01){
                  avreange  =  totlatemp/a;
              }
-                map.put(format.format(startTime),df.format(avreange));
+             //这个时间有点麻烦,需要对应进去
+               // map.put(format.format(startTime),df.format(avreange));
+                 //时间变为年+天+小时
+                map.put(getMonthDayHour(startTime),df.format(avreange));
+
              startTime =DateUtilsPublic.addDateHour(startTime,1);
            }
+
        return  map;
     }
 }

+ 0 - 3
smart.eartag.data.platform/huimv-smart-eartag-data-acquisition/src/main/java/com/huimv/acquisition/socket/eartagrecive/util/DateUtilsPublic.java

@@ -108,9 +108,6 @@ public class DateUtilsPublic {
 	}
 
 
-
-
-
 	//过去一天
 	public static Date getPassedDay(){
 		Calendar c = Calendar.getInstance();