|
@@ -6,10 +6,7 @@ import com.huimv.acquisition.entity.*;
|
|
import com.huimv.acquisition.mapper.CollectorRegisterDao;
|
|
import com.huimv.acquisition.mapper.CollectorRegisterDao;
|
|
import com.huimv.acquisition.mapper.EartagDataDao;
|
|
import com.huimv.acquisition.mapper.EartagDataDao;
|
|
import com.huimv.acquisition.mapper.EartagRegisterDao;
|
|
import com.huimv.acquisition.mapper.EartagRegisterDao;
|
|
-import com.huimv.acquisition.service.DeviceTempService;
|
|
|
|
-import com.huimv.acquisition.service.EartagDataService;
|
|
|
|
-import com.huimv.acquisition.service.EartagRegisterService;
|
|
|
|
-import com.huimv.acquisition.service.MovePigpenService;
|
|
|
|
|
|
+import com.huimv.acquisition.service.*;
|
|
import com.huimv.acquisition.socket.eartagrecive.util.DateUtil;
|
|
import com.huimv.acquisition.socket.eartagrecive.util.DateUtil;
|
|
import com.huimv.acquisition.socket.eartagrecive.util.DateUtilsPublic;
|
|
import com.huimv.acquisition.socket.eartagrecive.util.DateUtilsPublic;
|
|
import com.huimv.acquisition.socket.eartagrecive.util.StringUtilsWork;
|
|
import com.huimv.acquisition.socket.eartagrecive.util.StringUtilsWork;
|
|
@@ -53,6 +50,9 @@ public class ReceivePackageSerivce {
|
|
@Autowired
|
|
@Autowired
|
|
private DeviceTempService deviceTempService;
|
|
private DeviceTempService deviceTempService;
|
|
|
|
|
|
|
|
+ @Autowired
|
|
|
|
+ private CollectorRegisterService collectorRegisterService;
|
|
|
|
+
|
|
|
|
|
|
public String handleEartagData(String[] clientMessageArray) throws ParseException {
|
|
public String handleEartagData(String[] clientMessageArray) throws ParseException {
|
|
log.info("开始添加耳标数据......");
|
|
log.info("开始添加耳标数据......");
|
|
@@ -119,12 +119,9 @@ public class ReceivePackageSerivce {
|
|
System.out.println("丢弃");
|
|
System.out.println("丢弃");
|
|
return "hm+6+0+6+end";
|
|
return "hm+6+0+6+end";
|
|
}*/
|
|
}*/
|
|
-
|
|
|
|
-
|
|
|
|
System.out.println("存储");
|
|
System.out.println("存储");
|
|
//日龄
|
|
//日龄
|
|
eartagDataEntity.setDayAge2(eartagRegisterEntity.getAge());
|
|
eartagDataEntity.setDayAge2(eartagRegisterEntity.getAge());
|
|
-
|
|
|
|
//上传设备发生了变化, 转舍信息进行存储
|
|
//上传设备发生了变化, 转舍信息进行存储
|
|
//在接受数据的时候加一条记录迁移信息的数据到一个新表中,方便查找
|
|
//在接受数据的时候加一条记录迁移信息的数据到一个新表中,方便查找
|
|
eartagDataEntity.setStage(collectorRegisterEntity.getStage()); //获取阶段
|
|
eartagDataEntity.setStage(collectorRegisterEntity.getStage()); //获取阶段
|
|
@@ -132,6 +129,7 @@ public class ReceivePackageSerivce {
|
|
eartagDataEntity.setFarmCode(collectorRegisterEntity.getFarmCode());//获取牧场编码
|
|
eartagDataEntity.setFarmCode(collectorRegisterEntity.getFarmCode());//获取牧场编码
|
|
//关于两个日龄的处理--不应该是直接增加,应该是判断上一条的“日”和当前是否相同 ,相同不增加,不相同增加
|
|
//关于两个日龄的处理--不应该是直接增加,应该是判断上一条的“日”和当前是否相同 ,相同不增加,不相同增加
|
|
|
|
|
|
|
|
+
|
|
LambdaQueryWrapper<EartagDataEntity> wrapper = Wrappers.lambdaQuery();
|
|
LambdaQueryWrapper<EartagDataEntity> wrapper = Wrappers.lambdaQuery();
|
|
wrapper.eq(EartagDataEntity::getEartagNo, eartag_no ).orderByDesc( EartagDataEntity::getId ).last( "limit 1");
|
|
wrapper.eq(EartagDataEntity::getEartagNo, eartag_no ).orderByDesc( EartagDataEntity::getId ).last( "limit 1");
|
|
EartagDataEntity lastEarTagDate = eartagDataDao.selectOne(wrapper);
|
|
EartagDataEntity lastEarTagDate = eartagDataDao.selectOne(wrapper);
|
|
@@ -147,7 +145,6 @@ public class ReceivePackageSerivce {
|
|
movePigpenEntity.setMoveDate(DateUtilsPublic.parseDateTime(DateUtilsPublic.buildDateTimeString(time)));
|
|
movePigpenEntity.setMoveDate(DateUtilsPublic.parseDateTime(DateUtilsPublic.buildDateTimeString(time)));
|
|
movePigpenEntity.setStage(collectorRegisterEntity.getStage());
|
|
movePigpenEntity.setStage(collectorRegisterEntity.getStage());
|
|
movePigpenService.save(movePigpenEntity);
|
|
movePigpenService.save(movePigpenEntity);
|
|
-
|
|
|
|
if(eartagRegisterEntity1==null){
|
|
if(eartagRegisterEntity1==null){
|
|
//说明之前没有注册过--现在注册一下--设备ID的设置留给定时任务
|
|
//说明之前没有注册过--现在注册一下--设备ID的设置留给定时任务
|
|
EartagRegisterEntity eartagRegisterEntity2 = new EartagRegisterEntity();
|
|
EartagRegisterEntity eartagRegisterEntity2 = new EartagRegisterEntity();
|
|
@@ -160,6 +157,7 @@ public class ReceivePackageSerivce {
|
|
eartagRegisterEntity2.setStage(null);
|
|
eartagRegisterEntity2.setStage(null);
|
|
eartagRegisterService.save(eartagRegisterEntity2);//存储一条还没有处理的数据
|
|
eartagRegisterService.save(eartagRegisterEntity2);//存储一条还没有处理的数据
|
|
}
|
|
}
|
|
|
|
+
|
|
//第一次上传的数据----注册表肯定没有这只耳标的信息
|
|
//第一次上传的数据----注册表肯定没有这只耳标的信息
|
|
/* eartagDataEntity.setDayAge (0); //佩标日龄----默认值,第一次有数据上传就是默认值
|
|
/* eartagDataEntity.setDayAge (0); //佩标日龄----默认值,第一次有数据上传就是默认值
|
|
eartagDataEntity.setDayAge2(50); //日龄----默认第50天佩戴耳标*/
|
|
eartagDataEntity.setDayAge2(50); //日龄----默认第50天佩戴耳标*/
|
|
@@ -169,14 +167,14 @@ public class ReceivePackageSerivce {
|
|
return "hm+6+0+6+end";
|
|
return "hm+6+0+6+end";
|
|
}
|
|
}
|
|
|
|
|
|
-
|
|
|
|
-
|
|
|
|
-
|
|
|
|
if(!eartagRegisterEntity.getDeviceCode().equals(device_code) ){
|
|
if(!eartagRegisterEntity.getDeviceCode().equals(device_code) ){
|
|
//与注册表不同,,不存
|
|
//与注册表不同,,不存
|
|
System.out.println("丢弃");
|
|
System.out.println("丢弃");
|
|
return "hm+6+0+6+end";
|
|
return "hm+6+0+6+end";
|
|
|
|
+
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+
|
|
if( Double.parseDouble(new DecimalFormat("#,##0.00").format(( Double.parseDouble(env_temp)/100))) <1.0){
|
|
if( Double.parseDouble(new DecimalFormat("#,##0.00").format(( Double.parseDouble(env_temp)/100))) <1.0){
|
|
//与注册表不同,,不存
|
|
//与注册表不同,,不存
|
|
System.out.println("丢弃环境温度为0");
|
|
System.out.println("丢弃环境温度为0");
|
|
@@ -184,13 +182,17 @@ public class ReceivePackageSerivce {
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
+ if( device_code.equals("112007239999996")){
|
|
|
|
+ //这个基站的数据不要了
|
|
|
|
+ System.out.println("丢弃环境温度为0");
|
|
|
|
+ return "hm+6+0+6+end";
|
|
|
|
+ }
|
|
|
|
|
|
-
|
|
|
|
|
|
+//202007239999123
|
|
|
|
|
|
//上一条不为空---而且判断是存储注册表device-code
|
|
//上一条不为空---而且判断是存储注册表device-code
|
|
//存储转舍信息--还要判断新的设备阶段和老的设备阶段是否相同,如果相同就不存储转舍信息
|
|
//存储转舍信息--还要判断新的设备阶段和老的设备阶段是否相同,如果相同就不存储转舍信息
|
|
if(!lastEarTagDate.getDeviceCode().equals(device_code)){
|
|
if(!lastEarTagDate.getDeviceCode().equals(device_code)){
|
|
-
|
|
|
|
/* LambdaQueryWrapper<EartagRegisterEntity> wrapper4 = Wrappers.lambdaQuery();
|
|
/* LambdaQueryWrapper<EartagRegisterEntity> wrapper4 = Wrappers.lambdaQuery();
|
|
wrapper4.eq(EartagRegisterEntity::getEartagNo, eartag_no );
|
|
wrapper4.eq(EartagRegisterEntity::getEartagNo, eartag_no );
|
|
EartagRegisterEntity eartagRegisterEntity1 = eartagRegisterDao.selectOne(wrapper4);//查到注册信息--有可能为空的
|
|
EartagRegisterEntity eartagRegisterEntity1 = eartagRegisterDao.selectOne(wrapper4);//查到注册信息--有可能为空的
|
|
@@ -215,8 +217,11 @@ public class ReceivePackageSerivce {
|
|
//获取当前时间的 “天”---判断天的情况
|
|
//获取当前时间的 “天”---判断天的情况
|
|
int dayNow= Integer.parseInt(String.format("%td", DateUtilsPublic.parseDateTime(DateUtilsPublic.buildDateTimeString(time)))); //当前上传数据的天
|
|
int dayNow= Integer.parseInt(String.format("%td", DateUtilsPublic.parseDateTime(DateUtilsPublic.buildDateTimeString(time)))); //当前上传数据的天
|
|
int dayLastData= Integer.parseInt(String.format("%td",lastEarTagDate.getTime())); //当前的天
|
|
int dayLastData= Integer.parseInt(String.format("%td",lastEarTagDate.getTime())); //当前的天
|
|
-
|
|
|
|
System.out.println("当天时间="+dayNow+"----上一条时间"+dayLastData);
|
|
System.out.println("当天时间="+dayNow+"----上一条时间"+dayLastData);
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
if( dayNow == dayLastData){
|
|
if( dayNow == dayLastData){
|
|
//若相等,沿用上一条的日龄和配标日龄
|
|
//若相等,沿用上一条的日龄和配标日龄
|
|
eartagDataEntity.setDayAge (lastEarTagDate.getDayAge()); //佩标日龄
|
|
eartagDataEntity.setDayAge (lastEarTagDate.getDayAge()); //佩标日龄
|
|
@@ -227,7 +232,9 @@ public class ReceivePackageSerivce {
|
|
eartagDataEntity.setDayAge2(lastEarTagDate.getDayAge2()+1 ); //日龄
|
|
eartagDataEntity.setDayAge2(lastEarTagDate.getDayAge2()+1 ); //日龄
|
|
}
|
|
}
|
|
|
|
|
|
-
|
|
|
|
|
|
+ //设置最后一次上传时间
|
|
|
|
+ collectorRegisterEntity.setLastTime(new Date());
|
|
|
|
+ collectorRegisterService.updateById(collectorRegisterEntity);
|
|
|
|
|
|
eartagDataService.save(eartagDataEntity);
|
|
eartagDataService.save(eartagDataEntity);
|
|
return "hm+6+0+6+end";
|
|
return "hm+6+0+6+end";
|