|
@@ -387,11 +387,11 @@ public class BaseDuckInfoServiceImpl extends ServiceImpl<BaseDuckInfoMapper, Bas
|
|
|
// QueryWrapper<EnvMoveCall> queryWrapper1 = new QueryWrapper<>();
|
|
|
// queryWrapper1.eq("chi_num", baseDuckInfo.getChiNum()).
|
|
|
// between(StringUtils.isNotBlank(startTime), "call_date", startTime, endTime);
|
|
|
- List<EnvMoveCall> envMoveCalls = moveCallMapper.listPrint(baseDuckInfo.getChiNum(),startTime,endTime);//日龄体重
|
|
|
+ List<EnvMoveCall> envMoveCalls = moveCallMapper.listPrint(baseDuckInfo.getChiNum(), startTime, endTime);//日龄体重
|
|
|
|
|
|
QueryWrapper<EnvRegularCallFeeding> queryWrapper2 = new QueryWrapper<>();
|
|
|
queryWrapper2.eq("chi_num", baseDuckInfo.getChiNum()).
|
|
|
- between(StringUtils.isNotBlank(startTime), "call_date",startTime+" 00:00:00", endTime+" 23:59:59");
|
|
|
+ between(StringUtils.isNotBlank(startTime), "call_date", startTime + " 00:00:00", endTime + " 23:59:59");
|
|
|
List<EnvRegularCallFeeding> feedings = feedingMapper.selectList(queryWrapper2);//采食
|
|
|
double count = 0;
|
|
|
for (EnvRegularCallFeeding feeding : feedings) {
|
|
@@ -404,41 +404,41 @@ public class BaseDuckInfoServiceImpl extends ServiceImpl<BaseDuckInfoMapper, Bas
|
|
|
DateTime date = DateUtil.offsetDay(duckBirthday, 298);
|
|
|
Date dateTime = new Date(date.getTime());
|
|
|
List<EnvRegularCallEgg> envRegularCallEggs = eggMapper.selectList(new QueryWrapper<EnvRegularCallEgg>().lambda()
|
|
|
- .eq(EnvRegularCallEgg::getDuckNum,baseDuckInfo.getDuckNum())
|
|
|
+ .eq(EnvRegularCallEgg::getDuckNum, baseDuckInfo.getDuckNum())
|
|
|
.ge(EnvRegularCallEgg::getCallDate, dateTime));
|
|
|
- if (ObjectUtil.isNotEmpty(envRegularCallEggs)){
|
|
|
+ if (ObjectUtil.isNotEmpty(envRegularCallEggs)) {
|
|
|
for (EnvRegularCallEgg envRegularCallEgg : envRegularCallEggs) {
|
|
|
totalEgg += envRegularCallEgg.getEggNum();
|
|
|
- if (totalEgg > 3){
|
|
|
+ if (totalEgg > 3) {
|
|
|
resultDate = envRegularCallEgg.getCallDate();
|
|
|
- System.out.println("满足日龄的日期为:"+ resultDate);
|
|
|
+ System.out.println("满足日龄的日期为:" + resultDate);
|
|
|
break;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
printEntrty.setBaseDuckInfo(baseDuckInfo);
|
|
|
printEntrty.setFeeding(def.format(count));
|
|
|
- Date endDate = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(endTime+" 23:59:59");
|
|
|
+ Date endDate = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(endTime + " 23:59:59");
|
|
|
Date startDate = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(startTime + " 00:00:00");
|
|
|
System.out.println("开始时间:" + startDate);
|
|
|
System.out.println("结束时间:" + endDate);
|
|
|
System.out.println("满足日龄日期:" + resultDate);
|
|
|
- if (ObjectUtil.isNotEmpty(resultDate)){
|
|
|
- if (resultDate.after(endDate)){
|
|
|
+ if (ObjectUtil.isNotEmpty(resultDate)) {
|
|
|
+ if (resultDate.after(endDate)) {
|
|
|
System.out.println("满足日龄在结束日期之后");
|
|
|
printEntrty.setEggNum("0");
|
|
|
printEntrty.setEgging("0");
|
|
|
printEntrty.setAvgWeiht("0");
|
|
|
- }else {
|
|
|
+ } else {
|
|
|
QueryWrapper<EnvRegularCallEgg> queryWrapper1 = new QueryWrapper<>();
|
|
|
- queryWrapper.eq("duck_num",baseDuckInfo.getDuckNum());
|
|
|
+ queryWrapper.eq("duck_num", baseDuckInfo.getDuckNum());
|
|
|
EggVo eggVo = new EggVo();
|
|
|
- if (resultDate.before(startDate)){
|
|
|
- queryWrapper1.between("call_date",startDate,endDate);
|
|
|
+ if (resultDate.before(startDate)) {
|
|
|
+ queryWrapper1.between("call_date", startDate, endDate);
|
|
|
System.out.println("满足日龄在开始日期之前");
|
|
|
eggVo = eggMapper.print(queryWrapper1);
|
|
|
- }else {
|
|
|
- queryWrapper1.between("call_date",resultDate,endDate);
|
|
|
+ } else {
|
|
|
+ queryWrapper1.between("call_date", resultDate, endDate);
|
|
|
System.out.println("满足日龄在开始日期之后");
|
|
|
eggVo = eggMapper.print(queryWrapper1);
|
|
|
}
|
|
@@ -446,7 +446,7 @@ public class BaseDuckInfoServiceImpl extends ServiceImpl<BaseDuckInfoMapper, Bas
|
|
|
printEntrty.setEgging(eggVo.getTotalWeight());
|
|
|
printEntrty.setAvgWeiht(eggVo.getAvgWeight());
|
|
|
}
|
|
|
- }else {
|
|
|
+ } else {
|
|
|
System.out.println("日龄不满足");
|
|
|
printEntrty.setEggNum("0");
|
|
|
printEntrty.setEgging("0");
|
|
@@ -462,7 +462,6 @@ public class BaseDuckInfoServiceImpl extends ServiceImpl<BaseDuckInfoMapper, Bas
|
|
|
}
|
|
|
|
|
|
|
|
|
-
|
|
|
@Override
|
|
|
public void printChi(HttpServletResponse response, Map<String, String> paramsMap) throws Exception {
|
|
|
String farmId = paramsMap.get("farmId");
|
|
@@ -724,47 +723,98 @@ public class BaseDuckInfoServiceImpl extends ServiceImpl<BaseDuckInfoMapper, Bas
|
|
|
queryWrapper2.eq("farm_id", farmId).eq("duck_num", duckNum)
|
|
|
.orderByDesc("id").last(" limit 1");
|
|
|
EnvMoveCall call = moveCallMapper.selectOne(queryWrapper2);
|
|
|
- for (int j = 0; j < 7; j++) {
|
|
|
- if (envMoveCallVos.size() > j) {
|
|
|
- System.out.println("这个是平均值的时间:" + envMoveCallVos.get(j).getCallDate());
|
|
|
- SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
|
|
- String format = sdf.format(envMoveCallVos.get(j).getCallDate());
|
|
|
- System.out.println("格式化后的时间:" + format);
|
|
|
- EnvMoveCallVo moveCallVo = new EnvMoveCallVo();
|
|
|
- moveCallVo.setCallDate(sdf.parse(format));
|
|
|
- String start = format + " 00:00:00";
|
|
|
- String end = format + " 23:59:59";
|
|
|
- QueryWrapper<EnvMoveCall> queryWrapper1 = new QueryWrapper<>();
|
|
|
- queryWrapper1.eq("farm_id", farmId).eq("duck_num", duckNum)
|
|
|
- .between("call_date", start, end)
|
|
|
- .orderByDesc("id")
|
|
|
- .last(" limit 1");
|
|
|
- EnvMoveCall envMoveCall = moveCallMapper.selectOne(queryWrapper1);
|
|
|
-
|
|
|
- if (ObjectUtil.isEmpty(envMoveCall)) {
|
|
|
+ if (envMoveCallVos.size() == 0) {
|
|
|
+ QueryWrapper<EnvMoveCall> queryWrapper1 = new QueryWrapper<>();
|
|
|
+ queryWrapper1.eq("farm_id", farmId);
|
|
|
+ List<EnvMoveCallVo> moveCallVoList = moveCallMapper.listScreen2(queryWrapper1);
|
|
|
+ BigDecimal avgWeight = BigDecimal.ZERO;
|
|
|
+ if (moveCallVoList.size() > 6) {
|
|
|
+ for (int j = 0; j < 7; j++) {
|
|
|
+ EnvMoveCallVo moveCallVo = new EnvMoveCallVo();
|
|
|
+ DateTime dateTime1 = DateUtil.offsetDay(DateUtil.beginOfDay(new Date()), -i);
|
|
|
+ moveCallVo.setCallDate(dateTime1);
|
|
|
moveCallVo.setDuckWeight(call.getDuckWeight());
|
|
|
- } else {
|
|
|
- moveCallVo.setDuckWeight(envMoveCall.getDuckWeight());
|
|
|
+ envMoveCallVoList.add(moveCallVo);
|
|
|
+ if (moveCallVoList.size() > 7) {
|
|
|
+ moveCallVo.setAvgWeight(moveCallVoList.get(moveCallVoList.size() - 7 + j).getAvgWeight());
|
|
|
+ } else {
|
|
|
+ if (ObjectUtil.isNotEmpty(moveCallVoList.get(j))) {
|
|
|
+ avgWeight = moveCallVoList.get(j).getAvgWeight();
|
|
|
+ }
|
|
|
+ moveCallVo.setAvgWeight(avgWeight);
|
|
|
+ }
|
|
|
+ envMoveCallVoList.add(moveCallVo);
|
|
|
+ i--;
|
|
|
}
|
|
|
-
|
|
|
- moveCallVo.setAvgWeight(envMoveCallVos.get(j).getAvgWeight());
|
|
|
- envMoveCallVoList.add(moveCallVo);
|
|
|
} else {
|
|
|
- DateTime dateTime1 = DateUtil.offsetDay(DateUtil.beginOfDay(new Date()), -i);
|
|
|
- EnvMoveCallVo moveCallVo = new EnvMoveCallVo();
|
|
|
- moveCallVo.setDuckWeight(call.getDuckWeight());
|
|
|
- moveCallVo.setCallDate(dateTime1);
|
|
|
- if (ObjectUtil.isNull(envMoveCallVos) || envMoveCallVos.size()< 1){
|
|
|
- moveCallVo.setAvgWeight(new BigDecimal(0));
|
|
|
- }else {
|
|
|
- moveCallVo.setAvgWeight(envMoveCallVos.get(0).getAvgWeight());
|
|
|
+ BigDecimal decimal = BigDecimal.ZERO;
|
|
|
+ for (EnvMoveCallVo moveCallVo : moveCallVoList) {
|
|
|
+ EnvMoveCallVo moveCallVo1 = new EnvMoveCallVo();
|
|
|
+ DateTime dateTime1 = DateUtil.offsetDay(DateUtil.beginOfDay(new Date()), -i);
|
|
|
+ moveCallVo1.setCallDate(dateTime1);
|
|
|
+ moveCallVo1.setDuckWeight(call.getDuckWeight());
|
|
|
+ decimal = moveCallVo.getAvgWeight();
|
|
|
+ moveCallVo1.setAvgWeight(decimal);
|
|
|
+ envMoveCallVoList.add(moveCallVo1);
|
|
|
+ i--;
|
|
|
}
|
|
|
+ int a = 7 - moveCallVoList.size();
|
|
|
+ for (int j = 0; j < 7 - moveCallVoList.size(); j++) {
|
|
|
+ EnvMoveCallVo moveCallVo1 = new EnvMoveCallVo();
|
|
|
+ DateTime dateTime1 = DateUtil.offsetDay(DateUtil.beginOfDay(new Date()), -a);
|
|
|
+ moveCallVo1.setCallDate(dateTime1);
|
|
|
+ moveCallVo1.setDuckWeight(call.getDuckWeight());
|
|
|
+ moveCallVo1.setAvgWeight(decimal);
|
|
|
+ envMoveCallVoList.add(moveCallVo1);
|
|
|
+ a--;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
|
|
|
- envMoveCallVoList.add(moveCallVo);
|
|
|
+ } else {
|
|
|
+ for (int j = 0; j < 7; j++) {
|
|
|
+ if (envMoveCallVos.size() > j) {
|
|
|
+ System.out.println("这个是平均值的时间:" + envMoveCallVos.get(j).getCallDate());
|
|
|
+ SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
|
|
+ String format = sdf.format(envMoveCallVos.get(j).getCallDate());
|
|
|
+ System.out.println("格式化后的时间:" + format);
|
|
|
+ EnvMoveCallVo moveCallVo = new EnvMoveCallVo();
|
|
|
+ moveCallVo.setCallDate(sdf.parse(format));
|
|
|
+ String start = format + " 00:00:00";
|
|
|
+ String end = format + " 23:59:59";
|
|
|
+ QueryWrapper<EnvMoveCall> queryWrapper1 = new QueryWrapper<>();
|
|
|
+ queryWrapper1.eq("farm_id", farmId).eq("duck_num", duckNum)
|
|
|
+ .between("call_date", start, end)
|
|
|
+ .orderByDesc("id")
|
|
|
+ .last(" limit 1");
|
|
|
+ EnvMoveCall envMoveCall = moveCallMapper.selectOne(queryWrapper1);
|
|
|
+
|
|
|
+ if (ObjectUtil.isEmpty(envMoveCall)) {
|
|
|
+ moveCallVo.setDuckWeight(call.getDuckWeight());
|
|
|
+ } else {
|
|
|
+ moveCallVo.setDuckWeight(envMoveCall.getDuckWeight());
|
|
|
+ }
|
|
|
+
|
|
|
+ moveCallVo.setAvgWeight(envMoveCallVos.get(j).getAvgWeight());
|
|
|
+ envMoveCallVoList.add(moveCallVo);
|
|
|
+ } else {
|
|
|
+ DateTime dateTime1 = DateUtil.offsetDay(DateUtil.beginOfDay(new Date()), -i);
|
|
|
+ EnvMoveCallVo moveCallVo = new EnvMoveCallVo();
|
|
|
+ moveCallVo.setDuckWeight(call.getDuckWeight());
|
|
|
+ moveCallVo.setCallDate(dateTime1);
|
|
|
+ if (ObjectUtil.isNull(envMoveCallVos) || envMoveCallVos.size() < 1) {
|
|
|
+ moveCallVo.setAvgWeight(new BigDecimal(0));
|
|
|
+ } else {
|
|
|
+ moveCallVo.setAvgWeight(envMoveCallVos.get(0).getAvgWeight());
|
|
|
+ }
|
|
|
+
|
|
|
+ envMoveCallVoList.add(moveCallVo);
|
|
|
+ }
|
|
|
+ i--;
|
|
|
}
|
|
|
- i--;
|
|
|
}
|
|
|
|
|
|
+
|
|
|
// for (EnvMoveCallVo envMoveCallVo : envMoveCallVos) {
|
|
|
//
|
|
|
// System.out.println("这个是平均值的时间:"+envMoveCallVo.getCallDate());
|