Bläddra i källkod

整理了流程问题

yang 3 år sedan
förälder
incheckning
4d1493e928

+ 11 - 7
smart.eartag.data.platform/huimv-smart-eartag-data-acquisition/src/main/java/com/huimv/acquisition/controller/EartagDataController.java

@@ -39,62 +39,66 @@ public class EartagDataController {
     }
 
 
-
     //根据耳标电量查询
     @RequestMapping("/findByConditions")
     public R findByFarmId(@RequestParam Map<String, Object> params) throws ParseException {
         PageUtils byConditions = eartagDataService.findByConditions(params);
         return R.ok().put("page", byConditions);
-
     }
 
 
+
+
+
     @RequestMapping("/list_deatils")
     public R listDeatils(@RequestParam Map<String, Object> params) throws ParseException {
         Map queryDetailsMap = eartagDataService.queryDetails(params);
         return R.ok().put("page", queryDetailsMap);
     }
 
+
     /**
      * 信息
      */
     @RequestMapping("/info/{id}")
     public R info(@PathVariable("id") Integer id) {
         EartagDataEntity eartagData = eartagDataService.getById(id);
-
-
         return R.ok().put("eartagData", eartagData);
     }
 
+
+
     /**
      * 保存
      */
     @RequestMapping("/save")
     public R save(@RequestBody EartagDataEntity eartagData) {
         eartagDataService.save(eartagData);
-
         return R.ok();
     }
 
+
+
     /**
      * 修改
      */
     @RequestMapping("/update")
     public R update(@RequestBody EartagDataEntity eartagData) {
         eartagDataService.updateById(eartagData);
-
         return R.ok();
     }
 
+
     /**
      * 删除
      */
     @RequestMapping("/delete")
     public R delete(@RequestBody Integer[] ids) {
         eartagDataService.removeByIds(Arrays.asList(ids));
-
         return R.ok();
     }
 
 
+
+
 }

+ 4 - 0
smart.eartag.data.platform/huimv-smart-eartag-data-acquisition/src/main/java/com/huimv/acquisition/entity/SowRankTableEntity.java

@@ -81,4 +81,8 @@ public class SowRankTableEntity implements Serializable {
 	 */
 	private String rank;
 
+	//创建时间
+	private Date create_time;
+
+
 }

+ 2 - 0
smart.eartag.data.platform/huimv-smart-eartag-data-acquisition/src/main/java/com/huimv/acquisition/mapper/SowRankTableDao.java

@@ -3,6 +3,7 @@ package com.huimv.acquisition.mapper;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.huimv.acquisition.entity.SowRankTableEntity;
 import org.apache.ibatis.annotations.Mapper;
+import org.springframework.stereotype.Repository;
 
 /**
  * 
@@ -12,6 +13,7 @@ import org.apache.ibatis.annotations.Mapper;
  * @date 2021-08-04 17:47:18
  */
 @Mapper
+@Repository
 public interface SowRankTableDao extends BaseMapper<SowRankTableEntity> {
 	
 }

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

@@ -106,25 +106,34 @@ public class EartagDataServiceImpl extends ServiceImpl<EartagDataDao, EartagData
             wrapper.between(EartagDataEntity::getEnvTemp, highEnvTemp, lowEnvTemp);
         }
         wrapper.orderByDesc( EartagDataEntity::getId );
+
         IPage<EartagDataEntity>  page =  this.page((new Query<EartagDataEntity>().getPage(params)),wrapper);
         //拼接栋舍信息在里面
-        List<EartagDataEntity> records = page.getRecords();
+        List<EartagDataEntity> records = page.getRecords();  //获取信息
 
 
         for (EartagDataEntity record : records) {
+            //这一页的数据
+            System.out.println("数据"+records);
 
             LambdaQueryWrapper<MovePigpenEntity> wrapper23 = Wrappers.lambdaQuery();
             wrapper23.eq(MovePigpenEntity::getEartagNo , record.getEartagNo()).orderByAsc( MovePigpenEntity::getId ).last( "limit 1");
             MovePigpenEntity  movePigpen = movePigpenDao.selectOne(wrapper23);
+            System.out.println("转舍信息"+movePigpen);
+            //获取注册---注册信息为空
 
-            //获取注册
             LambdaQueryWrapper<CollectorRegisterEntity> wrapper3 = Wrappers.lambdaQuery();
             wrapper3.eq(CollectorRegisterEntity::getDeviceCode, record.getDeviceCode()  );
             CollectorRegisterEntity collectorRegisterEntity = collectorRegisterDao.selectOne(wrapper3);
+            System.out.println("注册表信息"+collectorRegisterEntity);
+
 
             LambdaQueryWrapper<BasePigpenEntity> wrapper4 = Wrappers.lambdaQuery();
             wrapper4.eq(BasePigpenEntity::getId, collectorRegisterEntity.getPigpenId() );
             BasePigpenEntity basePigpenEntity = basePigpenDao.selectOne(wrapper4);
+            System.out.println("栋舍信息"+basePigpenEntity);
+
+
 
             LambdaQueryWrapper<BasePigpenEntity> wrapper5 = Wrappers.lambdaQuery();
             wrapper5.eq(BasePigpenEntity::getId, collectorRegisterEntity.getUnitId() );
@@ -132,7 +141,11 @@ public class EartagDataServiceImpl extends ServiceImpl<EartagDataDao, EartagData
              record.setVersion(basePigpenEntity.getPigpenName());//这个多余字段存猪舍名字
              record.setCommand(basePigpenEntity1.getPigpenName());//这个多余字段存单元名字
             //格式化传入的时
-              record.setTail(DateUtilsPublic.dateToString(movePigpen.getMoveDate()));
+            if (movePigpen!=null) {
+                record.setTail(DateUtilsPublic.dateToString(movePigpen.getMoveDate()));
+            }
+
+
         }
         return  new PageUtils(page);
     }

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

@@ -1,7 +1,4 @@
 package com.huimv.acquisition.socket;
-
-
-
 import com.huimv.acquisition.socket.eartagrecive.service.IClientDataPacketService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.boot.CommandLineRunner;

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

@@ -245,4 +245,17 @@ public class DateUtilsPublic {
 		System.out.println("提前3小时:" + endTime);
 		return endTime;
 	}
+
+
+	//判断日是否相同
+	public   static  Boolean  dayIsSame( Date date1 , Date  date2) {
+		int   a = Integer.parseInt(String .format("%td", date1));
+		int   b = Integer.parseInt(String .format("%td", date2));
+		Boolean result = a==b;
+		return result;
+	}
+
+
+
+
 }

+ 1 - 6
smart.eartag.data.platform/huimv-smart-eartag-data-acquisition/src/main/java/com/huimv/acquisition/timmertask/RefreshEartagRegiest.java

@@ -56,7 +56,7 @@ public class RefreshEartagRegiest {
    //还要
    //每天中午12点触发------处理开始上传但是从未注册过的耳标数据
 
-    @Scheduled(cron = "0 0 12 * * ?")
+   // @Scheduled(cron = "0 0 12 * * ?")
     private void settingRegisting() {
         LambdaQueryWrapper<EartagRegisterEntity> lambdaQuery1 = Wrappers.lambdaQuery();
         //过滤时间--抓出时间段内所有这个数据
@@ -149,7 +149,6 @@ public class RefreshEartagRegiest {
                 //更新存储的编码
                 movePenEntity.setDeviceCode(deviceCode);
                 movePigpenService.save(movePenEntity);
-
                 //取到未注册的(耳标注册条) 开始填写上耳标号
                 eartagRegisterEntity.setDeviceCode(deviceCode);
                 eartagRegisterService.save(eartagRegisterEntity); //上面的计算获得出现次数最高的deviceCode  并且赋值给他--保存;
@@ -157,10 +156,6 @@ public class RefreshEartagRegiest {
             }
         }
     }
-
-
-
-
 }
 
 

+ 52 - 103
smart.eartag.data.platform/huimv-smart-eartag-data-acquisition/src/main/java/com/huimv/acquisition/timmertask/provideNewRankData.java

@@ -2,12 +2,12 @@ package com.huimv.acquisition.timmertask;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
-import com.fasterxml.jackson.databind.ser.Serializers;
 import com.huimv.acquisition.entity.*;
 import com.huimv.acquisition.mapper.*;
 import com.huimv.acquisition.service.BaseFarmInfoService;
 import com.huimv.acquisition.service.EartagRegisterService;
 import com.huimv.acquisition.service.MovePigpenService;
+import com.huimv.acquisition.service.SowRankTableService;
 import com.huimv.acquisition.socket.eartagrecive.util.DateUtil;
 import com.huimv.acquisition.socket.eartagrecive.util.DateUtilsPublic;
 import lombok.extern.slf4j.Slf4j;
@@ -55,137 +55,86 @@ public class provideNewRankData {
     private EartagRegisterDao eartagRegisterDao;
 
     @Autowired
-    private   BaseFarmInfoDao baseFarmInfoDao ;
+    private BaseFarmInfoDao baseFarmInfoDao;
 
     @Autowired
-    private BaseFarmInfoService  baseFarmInfoService  ;
+    private BaseFarmInfoService baseFarmInfoService;
 
 
     @Autowired
-    private DailyTabulateDataDao dailyTabulateDataDao   ;
+    private DailyTabulateDataDao dailyTabulateDataDao;
+
+
+    @Autowired
+    private SowRankTableService sowRankTableService;
+
+    @Autowired
+    private SowRankTableDao sowRankTableDao;
+
 
     //首先查找出所有的牧场id
 
-   // @Scheduled(cron = "0 0 12 * * ?")
-    @Scheduled(cron = "0/5 * * * * ?")
+    // @Scheduled(cron = "0 0 12 * * ?")
+    //@Scheduled(cron = "0/5 * * * * ?")
     private void settingRegisting() throws ParseException {
 
-       //找出所有的猪舍
-     /*   LambdaQueryWrapper<BaseFarmInfoEntity> lambdaQuery3 = Wrappers.lambdaQuery();
-        lambdaQuery3.orderByDesc( BaseFarmInfoEntity::get );
-        List<BaseFarmInfoEntity> baseFarmInfoEntities = baseFarmInfoDao.selectList(lambdaQuery2);
-*/
         String date = DateUtilsPublic.formatDate(new Date(), DATE_FORMAT);
-        String datebegan= date+" 00:00:00";
-        String dateend  = date+" 23:59:00";
+        String datebegan = date + " 00:00:00";
+        String dateend = date + " 23:59:00";
         Date datebegan1 = DateUtil.parseDateTime(datebegan);
         Date dateeend = DateUtil.parseDateTime(dateend);
 
-
         LambdaQueryWrapper<DailyTabulateDataEntity> lambdaQuery2 = Wrappers.lambdaQuery();
-        lambdaQuery2.between(DailyTabulateDataEntity::getStatisticDate,datebegan1, dateeend);
-        lambdaQuery2.orderByDesc( DailyTabulateDataEntity::getStockTotal);//母猪总存栏
+        lambdaQuery2.between(DailyTabulateDataEntity::getStatisticDate, datebegan1, dateeend);
+        lambdaQuery2.orderByDesc(DailyTabulateDataEntity::getStockTotal);//母猪总存栏
         List<DailyTabulateDataEntity> dailyTabulateDataEntit = dailyTabulateDataDao.selectList(lambdaQuery2);
-         int a = 0;
+        int a = 0;
         System.out.println();
-        for ( DailyTabulateDataEntity dailyTabulateDataEnt : dailyTabulateDataEntit ) {
-            System.out.println(dailyTabulateDataEnt.getId());
-
-
-
-/*
-              if ()
-            SowRankTableEntity sowRankTableEntity = new SowRankTableEntity();
-            sowRankTableEntity.setFarmCode(dailyTabulateDataEnt.getFarmCode());
-             a++;
-            sowRankTableEntity.setRank( String.valueOf(a));
-            sowRankTableEntity.setOutStockCount(1);*/
-
+        LambdaQueryWrapper<SowRankTableEntity> lambdaQuery3 = Wrappers.lambdaQuery();
+        lambdaQuery3.orderByDesc(SowRankTableEntity::getId).last("limit 1");
+        SowRankTableEntity sowRankTableEntity1 = sowRankTableDao.selectOne(lambdaQuery3);
+
+        if (sowRankTableEntity1 == null) {
+            //为空,自动执行刷新流程
+            for (DailyTabulateDataEntity dailyTabulateDataEnt : dailyTabulateDataEntit) {
+                System.out.println(dailyTabulateDataEnt.getId());
+                SowRankTableEntity sowRankTableEntity = new SowRankTableEntity();
+                sowRankTableEntity.setFarmCode(dailyTabulateDataEnt.getFarmCode());
+                a++;
+                sowRankTableEntity.setRank(String.valueOf(a));
+                sowRankTableEntity.setSowLivestock(dailyTabulateDataEnt.getSowStock());//总存栏量
+                sowRankTableEntity.setOutStockCount(1);
+                //if(data.getTime().after(startTime)&data.getTime().before(DateUtilsPublic.addDateHour(startTime,1))){
+            }
         }
-
-
-
-       //当日母猪总存栏是总数
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
     }
 }
 
 
 
 
+//如果数据不为空,说明已经存在----就只能更新而不是*----
 
 
+        /*else if(          ){//如果不为空--那么就判断时间是否合适--这里为刷新时间1.如果日不相同,,刷新
 
+        }
+            Date date1 = new Date();
+            //当前时间大于上一次时间四小时就更新----过零点自动刷新后面加上就可以
+            Boolean timeGaptrue  = date1.after(sowRankTableEntity1.getCreate_time())   ;
+            if (sowRankTableEntity1||    )
+            System.out.println(dailyTabulateDataEnt.getId());
 
+            SowRankTableEntity sowRankTableEntity = new SowRankTableEntity();
+            sowRankTableEntity.setFarmCode(dailyTabulateDataEnt.getFarmCode());
+             a++;
+            sowRankTableEntity.setRank( String.valueOf(a));
+            sowRankTableEntity.setSowLivestock(dailyTabulateDataEnt.getSowStock() );//总存栏量
+            sowRankTableEntity.setOutStockCount(1);
+        }
 
 
 
+       //当日母猪总存栏是总数
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+*/

+ 1 - 1
smart.eartag.data.platform/huimv-smart-eartag-data-acquisition/src/main/resources/application-dev.yml

@@ -1,5 +1,5 @@
 server:
-  port: 9500
+  port: 8210
 
 spring:
   datasource: