|
@@ -117,77 +117,57 @@ public class EartagDataServiceImpl extends ServiceImpl<EartagDataDao, EartagData
|
|
|
QueryWrapper<EartagDataEntity> wrapper = new QueryWrapper<>();
|
|
|
wrapper.eq("farm_code", farmCode);
|
|
|
wrapper.ge("time", DateUtil.beginOfDay(now));
|
|
|
- wrapper.groupBy("eartag_no");
|
|
|
+
|
|
|
+ wrapper.apply("id IN (SELECT MAX(id) from eartag_data group by eartag_no)");
|
|
|
List<EartagDataEntity> eartagDataEntities = baseMapper.selectList(wrapper);
|
|
|
|
|
|
- //过滤
|
|
|
- Set<String> nowSet = new HashSet();
|
|
|
- for (EartagDataEntity eartagDataEntity : eartagDataEntities) {
|
|
|
- nowSet.add(eartagDataEntity.getEartagNo());
|
|
|
- }
|
|
|
|
|
|
//查询昨日牧场下耳标数据
|
|
|
wrapper.clear();
|
|
|
wrapper.eq("farm_code", farmCode);
|
|
|
- wrapper.le("time", DateUtil.beginOfDay(now));
|
|
|
+
|
|
|
wrapper.ge("time", DateUtil.offsetDay(DateUtil.beginOfDay(now), -1));
|
|
|
- wrapper.groupBy("eartag_no");
|
|
|
+
|
|
|
+ wrapper.apply("id IN (SELECT MAX(id) from eartag_data group by eartag_no)");
|
|
|
List<EartagDataEntity> yesterdayEartagDataEntities = baseMapper.selectList(wrapper);
|
|
|
|
|
|
- //过滤
|
|
|
- Set<String> yesterdaySet = new HashSet();
|
|
|
- for (EartagDataEntity eartagDataEntity : yesterdayEartagDataEntities) {
|
|
|
- yesterdaySet.add(eartagDataEntity.getEartagNo());
|
|
|
- }
|
|
|
- Set<String> set = ObjectUtil.cloneByStream(nowSet);
|
|
|
+
|
|
|
+
|
|
|
|
|
|
Integer allSow =0;
|
|
|
|
|
|
- List<EartagDataEntity> sowEartagDataEntities =new ArrayList<>();
|
|
|
+ List<String> sowEartagDataEntities =new ArrayList<>();
|
|
|
//当日母猪总存栏
|
|
|
for (EartagDataEntity eartagDataEntity : eartagDataEntities) {
|
|
|
Integer stage = eartagDataEntity.getStage();
|
|
|
if (stage == 1 || stage == 2 || stage == 5 || stage ==6){
|
|
|
allSow++;
|
|
|
- sowEartagDataEntities.add(eartagDataEntity);
|
|
|
+ sowEartagDataEntities.add(eartagDataEntity.getEartagNo());
|
|
|
}
|
|
|
}
|
|
|
- List<EartagDataEntity> sowYesterdayEartagDataEntities =new ArrayList<>();
|
|
|
+
|
|
|
+
|
|
|
+ List<String> sowYesterdayEartagDataEntities =new ArrayList<>();
|
|
|
//昨日母猪总存栏
|
|
|
for (EartagDataEntity yesterEartagDataEntity : yesterdayEartagDataEntities) {
|
|
|
Integer stage = yesterEartagDataEntity.getStage();
|
|
|
if (stage == 1 || stage == 2 || stage == 5 || stage ==6){
|
|
|
- allSow++;
|
|
|
- sowYesterdayEartagDataEntities.add(yesterEartagDataEntity);
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- //过滤
|
|
|
- Set<String> sowNowSet = new HashSet();
|
|
|
- for (EartagDataEntity eartagDataEntity : sowEartagDataEntities) {
|
|
|
- sowNowSet.add(eartagDataEntity.getEartagNo());
|
|
|
- }
|
|
|
|
|
|
- Set<String> sowYesterdaySet = new HashSet();
|
|
|
- for (EartagDataEntity eartagDataEntity : sowYesterdayEartagDataEntities) {
|
|
|
- sowYesterdaySet.add(eartagDataEntity.getEartagNo());
|
|
|
+ sowYesterdayEartagDataEntities.add(yesterEartagDataEntity.getEartagNo());
|
|
|
+ }
|
|
|
}
|
|
|
+ //拷贝
|
|
|
+ List sowEartagDataEntities1 = ObjectUtil.cloneByStream(sowEartagDataEntities);
|
|
|
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
- /* //当日母猪总存栏
|
|
|
- int allSow = nowSet.size();
|
|
|
-*/
|
|
|
//得到新增
|
|
|
- sowNowSet.removeAll(sowYesterdaySet);
|
|
|
- int newSow = nowSet.size();
|
|
|
+ sowEartagDataEntities.removeAll(sowYesterdayEartagDataEntities);
|
|
|
+ int newSow = sowEartagDataEntities.size();
|
|
|
//得到离线
|
|
|
- sowYesterdaySet.removeAll(sowNowSet);
|
|
|
- int offSow = yesterdaySet.size();
|
|
|
+ sowYesterdayEartagDataEntities.removeAll(sowEartagDataEntities1);
|
|
|
+ int offSow = sowYesterdayEartagDataEntities.size();
|
|
|
|
|
|
//添加离线表
|
|
|
- for (String eartagNo : yesterdaySet) {
|
|
|
+ for (String eartagNo : sowYesterdayEartagDataEntities) {
|
|
|
wrapper.clear();
|
|
|
wrapper.eq("eartag_no", eartagNo);
|
|
|
wrapper.eq("farm_code", farmCode);
|