|
@@ -1,298 +1,291 @@
|
|
-//
|
|
|
|
-//package com.huimv.eartag2.manage2.schedule;
|
|
|
|
-//
|
|
|
|
-//import cn.hutool.core.date.DateTime;
|
|
|
|
-//import cn.hutool.core.date.DateUtil;
|
|
|
|
-//import cn.hutool.core.util.ObjectUtil;
|
|
|
|
-//import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
|
-//import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
|
|
|
-//import com.baomidou.mybatisplus.core.toolkit.StringUtils;
|
|
|
|
-//import com.huimv.eartag2.common.utils.MathUtil;
|
|
|
|
-//import com.huimv.eartag2.manage2.mapper.*;
|
|
|
|
-//import com.huimv.eartag2.manage2.pojo.*;
|
|
|
|
-//import com.huimv.eartag2.manage2.service.EartagDeviceRegisterService;
|
|
|
|
-//import com.huimv.eartag2.manage2.service.IEartagService;
|
|
|
|
-//import com.huimv.eartag2.manage2.service.SysBaseConfigService;
|
|
|
|
-//import org.springframework.beans.factory.annotation.Autowired;
|
|
|
|
-//import org.springframework.beans.factory.annotation.Value;
|
|
|
|
-//import org.springframework.context.annotation.Configuration;
|
|
|
|
-//import org.springframework.scheduling.annotation.EnableScheduling;
|
|
|
|
-//import org.springframework.scheduling.annotation.Scheduled;
|
|
|
|
-//
|
|
|
|
-//import java.io.IOException;
|
|
|
|
-//import java.math.BigDecimal;
|
|
|
|
-//import java.sql.Timestamp;
|
|
|
|
-//import java.text.ParseException;
|
|
|
|
-//import java.util.Date;
|
|
|
|
-//import java.util.List;
|
|
|
|
-//
|
|
|
|
-//
|
|
|
|
-///**
|
|
|
|
-// * @Project : huimv.shiwan
|
|
|
|
-// * @Package : com.huimv.biosafety.uface.controller
|
|
|
|
-// * @Description : TODO
|
|
|
|
-// * @Version : 1.0
|
|
|
|
-// * @Author : ZhuoNing
|
|
|
|
-// * @Create : 2020-12-25
|
|
|
|
-// **/
|
|
|
|
-//
|
|
|
|
-//@Configuration //1.主要用于标记配置类,兼备Component的效果。
|
|
|
|
-//@EnableScheduling // 2.开启定时任务
|
|
|
|
-//public class EartagTask {
|
|
|
|
-// @Autowired
|
|
|
|
-// private IEartagService eartagService;
|
|
|
|
-// @Autowired
|
|
|
|
-// private SysBaseConfigService baseConfigService;
|
|
|
|
-// @Autowired
|
|
|
|
-// private EartagDeviceRegisterService deviceRegisterService;
|
|
|
|
-// @Autowired
|
|
|
|
-// private EartagResetMapper eartagResetMapper;
|
|
|
|
-// @Autowired
|
|
|
|
-// private EartagEartagRegister2Mapper eartagEartagRegister2Mapper;
|
|
|
|
-// @Autowired
|
|
|
|
-// private BaseFarmerMapper baseFarmerMapper;
|
|
|
|
-// @Autowired
|
|
|
|
-// private EartagDeviceRegisterMapper eartagDeviceRegisterMapper;
|
|
|
|
-// @Autowired
|
|
|
|
-// private FarmerAssetMapper farmerAssetMapper;
|
|
|
|
-// @Value("${farmer.pig.price}")
|
|
|
|
-// private String pigPrice;
|
|
|
|
-// @Autowired
|
|
|
|
-// private FarmerDayageWeightMapper farmerDayageWeightMapper;
|
|
|
|
-// @Autowired
|
|
|
|
-// private EartagData2Mapper eartagData2Mapper;
|
|
|
|
-//
|
|
|
|
-// @Autowired
|
|
|
|
-// private EartagAbnormalAlarmMapper eartagAbnormalAlarmMapper;
|
|
|
|
-//
|
|
|
|
-// @Autowired
|
|
|
|
-// private BasePigpenMapper pigpenMapper;
|
|
|
|
-//
|
|
|
|
-///**
|
|
|
|
-// * @Method : countEartagOnlineTimes
|
|
|
|
-// * @Description : 判断耳标离线状态
|
|
|
|
-// * @Params : []
|
|
|
|
-// * @Return : void
|
|
|
|
-// * @Author : ZhuoNing
|
|
|
|
-// * @Date : 2022/8/20
|
|
|
|
-// * @Time : 19:35
|
|
|
|
-// */
|
|
|
|
-//
|
|
|
|
-// // 10分钟
|
|
|
|
-// @Scheduled(cron = "0 0/10 * * * ? ")
|
|
|
|
-//// @Scheduled(cron = "0 * * * * ? ")
|
|
|
|
-// private void countEartagOnlineTimes() throws IOException, ParseException {
|
|
|
|
-// Timestamp nowTimestamp = new Timestamp(new java.util.Date().getTime());
|
|
|
|
-//// System.out.println("时间戳="+nowTimestamp);
|
|
|
|
-//
|
|
|
|
-//// ExecutorService service = Executors.newFixedThreadPool(5);
|
|
|
|
-//// ExecutorService service = Executors.newSingleThreadExecutor();
|
|
|
|
-//// RunnableTaskEartagOnlineStatus task1 = new RunnableTaskEartagOnlineStatus();
|
|
|
|
-//// service.execute(task1);
|
|
|
|
-// //更新耳标在线状态
|
|
|
|
-// eartagService.updateEartagLiveStatusAndCount();
|
|
|
|
-// }
|
|
|
|
-//
|
|
|
|
-//
|
|
|
|
-///**
|
|
|
|
-// * @Method : updateDevice
|
|
|
|
-// * @Description : 判断设备离线状态
|
|
|
|
-// * @Params : []
|
|
|
|
-// * @Return : void
|
|
|
|
-// * @Author : ZhuoNing
|
|
|
|
-// * @Date : 2022/8/20
|
|
|
|
-// * @Time : 19:36
|
|
|
|
-// */
|
|
|
|
-//
|
|
|
|
-// // 5分钟
|
|
|
|
-//// @Scheduled(cron = "0 * * * * ? ")
|
|
|
|
-// @Scheduled(cron = "0 5 * * * ? ")
|
|
|
|
-// private void updateDevice() {
|
|
|
|
-// List<EartagDeviceRegister> list = deviceRegisterService.list();
|
|
|
|
-// for (EartagDeviceRegister eartagDeviceRegister : list) {
|
|
|
|
-// Integer farmerId = eartagDeviceRegister.getFarmerId();
|
|
|
|
-// SysBaseConfig config_value = baseConfigService.getOne(new QueryWrapper<SysBaseConfig>().eq("config_value", farmerId));
|
|
|
|
-// String configValueStr ="60";
|
|
|
|
-// if(ObjectUtil.isNotEmpty(config_value) ){
|
|
|
|
-// SysBaseConfig one = baseConfigService.getOne(new QueryWrapper<SysBaseConfig>().eq("row_id", config_value.getRowId()).eq("config_key", "deviceOfflineTime"));
|
|
|
|
-// configValueStr = one.getConfigValue();
|
|
|
|
-// }
|
|
|
|
-//
|
|
|
|
-// int configValueInt = Integer.parseInt(configValueStr);
|
|
|
|
-// Date date = new Date();
|
|
|
|
-// DateTime dateTime = DateUtil.offsetMinute(date, -configValueInt);
|
|
|
|
-// //未离线
|
|
|
|
-// if (eartagDeviceRegister.getLastTime() !=null && dateTime.before(eartagDeviceRegister.getLastTime())){
|
|
|
|
-// if (eartagDeviceRegister.getActiveStatus() != 1){
|
|
|
|
-// eartagDeviceRegister.setActiveStatus(1);
|
|
|
|
-// eartagDeviceRegister.setDeviceStatus(1);
|
|
|
|
-// deviceRegisterService.updateById(eartagDeviceRegister);
|
|
|
|
-// }
|
|
|
|
-// }else { //离线
|
|
|
|
-// if ( eartagDeviceRegister.getActiveStatus() != 2){
|
|
|
|
-// eartagDeviceRegister.setActiveStatus(2);
|
|
|
|
-// eartagDeviceRegister.setDeviceStatus(0);
|
|
|
|
-// deviceRegisterService.updateById(eartagDeviceRegister);
|
|
|
|
-//
|
|
|
|
-// String deviceCode = eartagDeviceRegister.getDeviceCode();
|
|
|
|
-// String farmId = eartagDeviceRegister.getFarmId();
|
|
|
|
-// Integer unitId = eartagDeviceRegister.getUnitId();
|
|
|
|
-// Integer pigpenId = eartagDeviceRegister.getPigpenId();
|
|
|
|
-// BasePigpen basePigpen = pigpenMapper.selectById(unitId);
|
|
|
|
-// BasePigpen basePigpen1 = pigpenMapper.selectById(pigpenId);
|
|
|
|
-// String pigpen = "";
|
|
|
|
-// if (ObjectUtil.isNotEmpty(basePigpen)){
|
|
|
|
-// pigpen += basePigpen.getPigpenName();
|
|
|
|
-// }
|
|
|
|
-// if (ObjectUtil.isNotEmpty(basePigpen1)){
|
|
|
|
-// pigpen += basePigpen1.getPigpenName();
|
|
|
|
-// }
|
|
|
|
-// //耳标离线:6
|
|
|
|
-// int alarmSort = 2;
|
|
|
|
-// //耳标:2
|
|
|
|
-// int alarmFrom = 1;
|
|
|
|
-// //状态:1
|
|
|
|
-// int alarmType = 1;
|
|
|
|
-//
|
|
|
|
-// //报警
|
|
|
|
-// String alarmContent = "离线警报:"+pigpen+"设备号["+deviceCode+"]已离线";
|
|
|
|
-// EartagAbnormalAlarm newEartagAbnormalAlarmEntity = new EartagAbnormalAlarm();
|
|
|
|
-// newEartagAbnormalAlarmEntity.setFarmCode(farmId);
|
|
|
|
-// newEartagAbnormalAlarmEntity.setAddTime(date);
|
|
|
|
-// newEartagAbnormalAlarmEntity.setAddDate(date);
|
|
|
|
-// newEartagAbnormalAlarmEntity.setAlarmSort(alarmSort);
|
|
|
|
-// newEartagAbnormalAlarmEntity.setAlarmType(alarmType);
|
|
|
|
-// newEartagAbnormalAlarmEntity.setAlarmFrom(alarmFrom);
|
|
|
|
-// newEartagAbnormalAlarmEntity.setContent(alarmContent);
|
|
|
|
-// eartagAbnormalAlarmMapper.insert(newEartagAbnormalAlarmEntity);
|
|
|
|
-// }
|
|
|
|
-//
|
|
|
|
-// }
|
|
|
|
|
|
+
|
|
|
|
+package com.huimv.eartag2.manage2.schedule;
|
|
|
|
+
|
|
|
|
+import cn.hutool.core.date.DateTime;
|
|
|
|
+import cn.hutool.core.date.DateUtil;
|
|
|
|
+import cn.hutool.core.util.ObjectUtil;
|
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
|
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
|
|
|
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
|
|
|
|
+import com.huimv.eartag2.common.utils.MathUtil;
|
|
|
|
+import com.huimv.eartag2.manage2.mapper.*;
|
|
|
|
+import com.huimv.eartag2.manage2.pojo.*;
|
|
|
|
+import com.huimv.eartag2.manage2.service.EartagDeviceRegisterService;
|
|
|
|
+import com.huimv.eartag2.manage2.service.IEartagService;
|
|
|
|
+import com.huimv.eartag2.manage2.service.SysBaseConfigService;
|
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
|
+import org.springframework.beans.factory.annotation.Value;
|
|
|
|
+import org.springframework.context.annotation.Configuration;
|
|
|
|
+import org.springframework.scheduling.annotation.EnableScheduling;
|
|
|
|
+import org.springframework.scheduling.annotation.Scheduled;
|
|
|
|
+
|
|
|
|
+import java.io.IOException;
|
|
|
|
+import java.math.BigDecimal;
|
|
|
|
+import java.sql.Timestamp;
|
|
|
|
+import java.text.ParseException;
|
|
|
|
+import java.util.Date;
|
|
|
|
+import java.util.List;
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+/**
|
|
|
|
+ * @Project : huimv.shiwan
|
|
|
|
+ * @Package : com.huimv.biosafety.uface.controller
|
|
|
|
+ * @Description : TODO
|
|
|
|
+ * @Version : 1.0
|
|
|
|
+ * @Author : ZhuoNing
|
|
|
|
+ * @Create : 2020-12-25
|
|
|
|
+ **/
|
|
|
|
+
|
|
|
|
+@Configuration //1.主要用于标记配置类,兼备Component的效果。
|
|
|
|
+@EnableScheduling // 2.开启定时任务
|
|
|
|
+public class EartagTask {
|
|
|
|
+ @Autowired
|
|
|
|
+ private IEartagService eartagService;
|
|
|
|
+ @Autowired
|
|
|
|
+ private SysBaseConfigService baseConfigService;
|
|
|
|
+ @Autowired
|
|
|
|
+ private EartagDeviceRegisterService deviceRegisterService;
|
|
|
|
+ @Autowired
|
|
|
|
+ private EartagResetMapper eartagResetMapper;
|
|
|
|
+ @Autowired
|
|
|
|
+ private EartagEartagRegister2Mapper eartagEartagRegister2Mapper;
|
|
|
|
+ @Autowired
|
|
|
|
+ private BaseFarmerMapper baseFarmerMapper;
|
|
|
|
+ @Autowired
|
|
|
|
+ private EartagDeviceRegisterMapper eartagDeviceRegisterMapper;
|
|
|
|
+ @Autowired
|
|
|
|
+ private FarmerAssetMapper farmerAssetMapper;
|
|
|
|
+ @Value("${farmer.pig.price}")
|
|
|
|
+ private String pigPrice;
|
|
|
|
+ @Autowired
|
|
|
|
+ private FarmerDayageWeightMapper farmerDayageWeightMapper;
|
|
|
|
+ @Autowired
|
|
|
|
+ private EartagData2Mapper eartagData2Mapper;
|
|
|
|
+
|
|
|
|
+ @Autowired
|
|
|
|
+ private EartagAbnormalAlarmMapper eartagAbnormalAlarmMapper;
|
|
|
|
+
|
|
|
|
+ @Autowired
|
|
|
|
+ private BasePigpenMapper pigpenMapper;
|
|
|
|
+
|
|
|
|
+/**
|
|
|
|
+ * @Method : countEartagOnlineTimes
|
|
|
|
+ * @Description : 判断耳标离线状态
|
|
|
|
+ * @Params : []
|
|
|
|
+ * @Return : void
|
|
|
|
+ * @Author : ZhuoNing
|
|
|
|
+ * @Date : 2022/8/20
|
|
|
|
+ * @Time : 19:35
|
|
|
|
+ */
|
|
|
|
+
|
|
|
|
+ // 10分钟
|
|
|
|
+ @Scheduled(cron = "0 0/3 * * * ? ")
|
|
|
|
+// @Scheduled(cron = "0 * * * * ? ")
|
|
|
|
+ private void countEartagOnlineTimes() throws IOException, ParseException {
|
|
|
|
+ //更新耳标在线状态
|
|
|
|
+ eartagService.updateEartagLiveStatusAndCount();
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+/*
|
|
|
|
+*//**
|
|
|
|
+ * @Method : updateDevice
|
|
|
|
+ * @Description : 判断设备离线状态
|
|
|
|
+ * @Params : []
|
|
|
|
+ * @Return : void
|
|
|
|
+ * @Author : ZhuoNing
|
|
|
|
+ * @Date : 2022/8/20
|
|
|
|
+ * @Time : 19:36
|
|
|
|
+ *//*
|
|
|
|
+
|
|
|
|
+ // 5分钟
|
|
|
|
+// @Scheduled(cron = "0 * * * * ? ")
|
|
|
|
+ @Scheduled(cron = "0 5 * * * ? ")
|
|
|
|
+ private void updateDevice() {
|
|
|
|
+ List<EartagDeviceRegister> list = deviceRegisterService.list();
|
|
|
|
+ for (EartagDeviceRegister eartagDeviceRegister : list) {
|
|
|
|
+ Integer farmerId = eartagDeviceRegister.getFarmerId();
|
|
|
|
+ SysBaseConfig config_value = baseConfigService.getOne(new QueryWrapper<SysBaseConfig>().eq("config_value", farmerId));
|
|
|
|
+ String configValueStr ="60";
|
|
|
|
+ if(ObjectUtil.isNotEmpty(config_value) ){
|
|
|
|
+ SysBaseConfig one = baseConfigService.getOne(new QueryWrapper<SysBaseConfig>().eq("row_id", config_value.getRowId()).eq("config_key", "deviceOfflineTime"));
|
|
|
|
+ configValueStr = one.getConfigValue();
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ int configValueInt = Integer.parseInt(configValueStr);
|
|
|
|
+ Date date = new Date();
|
|
|
|
+ DateTime dateTime = DateUtil.offsetMinute(date, -configValueInt);
|
|
|
|
+ //未离线
|
|
|
|
+ if (eartagDeviceRegister.getLastTime() !=null && dateTime.before(eartagDeviceRegister.getLastTime())){
|
|
|
|
+ if (eartagDeviceRegister.getActiveStatus() != 1){
|
|
|
|
+ eartagDeviceRegister.setActiveStatus(1);
|
|
|
|
+ eartagDeviceRegister.setDeviceStatus(1);
|
|
|
|
+ deviceRegisterService.updateById(eartagDeviceRegister);
|
|
|
|
+ }
|
|
|
|
+ }else { //离线
|
|
|
|
+ if ( eartagDeviceRegister.getActiveStatus() != 2){
|
|
|
|
+ eartagDeviceRegister.setActiveStatus(2);
|
|
|
|
+ eartagDeviceRegister.setDeviceStatus(0);
|
|
|
|
+ deviceRegisterService.updateById(eartagDeviceRegister);
|
|
|
|
+
|
|
|
|
+ String deviceCode = eartagDeviceRegister.getDeviceCode();
|
|
|
|
+ String farmId = eartagDeviceRegister.getFarmId();
|
|
|
|
+ Integer unitId = eartagDeviceRegister.getUnitId();
|
|
|
|
+ Integer pigpenId = eartagDeviceRegister.getPigpenId();
|
|
|
|
+ BasePigpen basePigpen = pigpenMapper.selectById(unitId);
|
|
|
|
+ BasePigpen basePigpen1 = pigpenMapper.selectById(pigpenId);
|
|
|
|
+ String pigpen = "";
|
|
|
|
+ if (ObjectUtil.isNotEmpty(basePigpen)){
|
|
|
|
+ pigpen += basePigpen.getPigpenName();
|
|
|
|
+ }
|
|
|
|
+ if (ObjectUtil.isNotEmpty(basePigpen1)){
|
|
|
|
+ pigpen += basePigpen1.getPigpenName();
|
|
|
|
+ }
|
|
|
|
+ //耳标离线:6
|
|
|
|
+ int alarmSort = 2;
|
|
|
|
+ //耳标:2
|
|
|
|
+ int alarmFrom = 1;
|
|
|
|
+ //状态:1
|
|
|
|
+ int alarmType = 1;
|
|
|
|
+
|
|
|
|
+ //报警
|
|
|
|
+ String alarmContent = "离线警报:"+pigpen+"设备号["+deviceCode+"]已离线";
|
|
|
|
+ EartagAbnormalAlarm newEartagAbnormalAlarmEntity = new EartagAbnormalAlarm();
|
|
|
|
+ newEartagAbnormalAlarmEntity.setFarmCode(farmId);
|
|
|
|
+ newEartagAbnormalAlarmEntity.setAddTime(date);
|
|
|
|
+ newEartagAbnormalAlarmEntity.setAddDate(date);
|
|
|
|
+ newEartagAbnormalAlarmEntity.setAlarmSort(alarmSort);
|
|
|
|
+ newEartagAbnormalAlarmEntity.setAlarmType(alarmType);
|
|
|
|
+ newEartagAbnormalAlarmEntity.setAlarmFrom(alarmFrom);
|
|
|
|
+ newEartagAbnormalAlarmEntity.setContent(alarmContent);
|
|
|
|
+ eartagAbnormalAlarmMapper.insert(newEartagAbnormalAlarmEntity);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+// @Scheduled(cron = "59 0/11 * * * ? ")
|
|
|
|
+// private void updateEartag() {
|
|
|
|
+// String farmId ="330784001";
|
|
|
|
+// List<EartagEartagRegister2> eartagEartagRegister2s = eartagEartagRegister2Mapper.selectList(new QueryWrapper<EartagEartagRegister2>().eq("farm_id", farmId).ne("earmark", "311111122220006"));
|
|
|
|
+// EartagEartagRegister2 earmark = eartagEartagRegister2Mapper.selectOne(new QueryWrapper<EartagEartagRegister2>().eq("earmark", "311111122220006"));
|
|
|
|
+// System.out.println("----start----");
|
|
|
|
+// int i = 3;
|
|
|
|
+// int x = 7;
|
|
|
|
+// Date lastTime = earmark.getLastTime();
|
|
|
|
+// for (EartagEartagRegister2 eartagEartagRegister2 : eartagEartagRegister2s) {
|
|
|
|
+// DateTime dateTime = DateUtil.offsetMinute(lastTime, -i);
|
|
|
|
+// DateTime dateTime1 = DateUtil.offsetSecond(dateTime, -x);
|
|
|
|
+// eartagEartagRegister2.setLastTime(dateTime1);
|
|
|
|
+// eartagEartagRegister2Mapper.updateById(eartagEartagRegister2);
|
|
|
|
+// i= i+3;
|
|
|
|
+// x = x +5;
|
|
|
|
+// EartagData2 eartagData2 = new EartagData2();
|
|
|
|
+// eartagData2.setEarTemp1(eartagEartagRegister2.getEarTemp1()+Float.parseFloat(NumberUtils.getNum(-1,1,1)));
|
|
|
|
+// eartagData2.setAct(eartagEartagRegister2.getAct());
|
|
|
|
+// eartagData2.setAct1(eartagEartagRegister2.getAct());
|
|
|
|
+// eartagData2.setAskDate(eartagEartagRegister2.getLastTime());
|
|
|
|
+// eartagData2.setAddTime(eartagEartagRegister2.getLastTime());
|
|
|
|
+// eartagData2.setBat(eartagEartagRegister2.getBat());
|
|
|
|
+// eartagData2.setEarmark(eartagEartagRegister2.getEarmark());
|
|
|
|
+// eartagData2.setDevice(eartagEartagRegister2.getLastDevice());
|
|
|
|
+// eartagData2.setEnvTemp1(eartagEartagRegister2.getEnvTemp1()+Float.parseFloat(NumberUtils.getNum(-1,1,1)));
|
|
|
|
+// eartagData2Mapper.insert(eartagData2);
|
|
// }
|
|
// }
|
|
-// }
|
|
|
|
-//
|
|
|
|
-//// @Scheduled(cron = "59 0/11 * * * ? ")
|
|
|
|
-//// private void updateEartag() {
|
|
|
|
-//// String farmId ="330784001";
|
|
|
|
-//// List<EartagEartagRegister2> eartagEartagRegister2s = eartagEartagRegister2Mapper.selectList(new QueryWrapper<EartagEartagRegister2>().eq("farm_id", farmId).ne("earmark", "311111122220006"));
|
|
|
|
-//// EartagEartagRegister2 earmark = eartagEartagRegister2Mapper.selectOne(new QueryWrapper<EartagEartagRegister2>().eq("earmark", "311111122220006"));
|
|
|
|
-//// System.out.println("----start----");
|
|
|
|
-//// int i = 3;
|
|
|
|
-//// int x = 7;
|
|
|
|
-//// Date lastTime = earmark.getLastTime();
|
|
|
|
-//// for (EartagEartagRegister2 eartagEartagRegister2 : eartagEartagRegister2s) {
|
|
|
|
-//// DateTime dateTime = DateUtil.offsetMinute(lastTime, -i);
|
|
|
|
-//// DateTime dateTime1 = DateUtil.offsetSecond(dateTime, -x);
|
|
|
|
-//// eartagEartagRegister2.setLastTime(dateTime1);
|
|
|
|
-//// eartagEartagRegister2Mapper.updateById(eartagEartagRegister2);
|
|
|
|
-//// i= i+3;
|
|
|
|
-//// x = x +5;
|
|
|
|
-//// EartagData2 eartagData2 = new EartagData2();
|
|
|
|
-//// eartagData2.setEarTemp1(eartagEartagRegister2.getEarTemp1()+Float.parseFloat(NumberUtils.getNum(-1,1,1)));
|
|
|
|
-//// eartagData2.setAct(eartagEartagRegister2.getAct());
|
|
|
|
-//// eartagData2.setAct1(eartagEartagRegister2.getAct());
|
|
|
|
-//// eartagData2.setAskDate(eartagEartagRegister2.getLastTime());
|
|
|
|
-//// eartagData2.setAddTime(eartagEartagRegister2.getLastTime());
|
|
|
|
-//// eartagData2.setBat(eartagEartagRegister2.getBat());
|
|
|
|
-//// eartagData2.setEarmark(eartagEartagRegister2.getEarmark());
|
|
|
|
-//// eartagData2.setDevice(eartagEartagRegister2.getLastDevice());
|
|
|
|
-//// eartagData2.setEnvTemp1(eartagEartagRegister2.getEnvTemp1()+Float.parseFloat(NumberUtils.getNum(-1,1,1)));
|
|
|
|
-//// eartagData2Mapper.insert(eartagData2);
|
|
|
|
-//// }
|
|
|
|
-////
|
|
|
|
-//// earmark.setLastTime(DateUtil.offsetSecond(new Date(),11));
|
|
|
|
-////
|
|
|
|
-//// eartagEartagRegister2Mapper.updateById(earmark);
|
|
|
|
-//// EartagData2 eartagData2 = new EartagData2();
|
|
|
|
-//// eartagData2.setEarTemp1(earmark.getEarTemp1()+Float.parseFloat(NumberUtils.getNum(-1,1,1)));
|
|
|
|
-//// eartagData2.setAct(earmark.getAct());
|
|
|
|
-//// eartagData2.setAct1(earmark.getAct());
|
|
|
|
-//// eartagData2.setAskDate(earmark.getLastTime());
|
|
|
|
-//// eartagData2.setAddTime(earmark.getLastTime());
|
|
|
|
-//// eartagData2.setBat(earmark.getBat());
|
|
|
|
-//// eartagData2.setEarmark(earmark.getEarmark());
|
|
|
|
-//// eartagData2.setDevice(earmark.getLastDevice());
|
|
|
|
-//// eartagData2.setEnvTemp1(earmark.getEnvTemp1()+Float.parseFloat(NumberUtils.getNum(-1,1,1)));
|
|
|
|
-//// eartagData2Mapper.insert(eartagData2);
|
|
|
|
//
|
|
//
|
|
-//// }
|
|
|
|
|
|
+// earmark.setLastTime(DateUtil.offsetSecond(new Date(),11));
|
|
//
|
|
//
|
|
-//// @Scheduled(cron = "0 0 0/6 * * ? ")
|
|
|
|
-// private void countAssetInEveryMonth() throws ParseException {
|
|
|
|
-// //--读取所有农户和采集器
|
|
|
|
-// List<BaseFarmer> baseFarmerList = baseFarmerMapper.getFarmer();
|
|
|
|
-// //--用采集器读取所有数据计算可售和不可售资源
|
|
|
|
-// for (BaseFarmer baseFarmer : baseFarmerList) {
|
|
|
|
-// //--计算每个农户的生物资产
|
|
|
|
-// _countAssetByFarmer(baseFarmer);
|
|
|
|
-// }
|
|
|
|
|
|
+// eartagEartagRegister2Mapper.updateById(earmark);
|
|
|
|
+// EartagData2 eartagData2 = new EartagData2();
|
|
|
|
+// eartagData2.setEarTemp1(earmark.getEarTemp1()+Float.parseFloat(NumberUtils.getNum(-1,1,1)));
|
|
|
|
+// eartagData2.setAct(earmark.getAct());
|
|
|
|
+// eartagData2.setAct1(earmark.getAct());
|
|
|
|
+// eartagData2.setAskDate(earmark.getLastTime());
|
|
|
|
+// eartagData2.setAddTime(earmark.getLastTime());
|
|
|
|
+// eartagData2.setBat(earmark.getBat());
|
|
|
|
+// eartagData2.setEarmark(earmark.getEarmark());
|
|
|
|
+// eartagData2.setDevice(earmark.getLastDevice());
|
|
|
|
+// eartagData2.setEnvTemp1(earmark.getEnvTemp1()+Float.parseFloat(NumberUtils.getNum(-1,1,1)));
|
|
|
|
+// eartagData2Mapper.insert(eartagData2);
|
|
|
|
+
|
|
// }
|
|
// }
|
|
-//
|
|
|
|
-// //--
|
|
|
|
-// private void _countAssetByFarmer(BaseFarmer baseFarmer) throws ParseException {
|
|
|
|
-// //------------------------------------------------------------------------
|
|
|
|
-// // 读取采集器.
|
|
|
|
-// // 根据采集器读取所有耳标.
|
|
|
|
-// // 对读取耳标进行计算可售和非可售,并归到当月.
|
|
|
|
-// //------------------------------------------------------------------------
|
|
|
|
-//
|
|
|
|
-// com.huimv.eartag2.common.utils.DateUtil dateUtil = new com.huimv.eartag2.common.utils.DateUtil();
|
|
|
|
-// Integer farmerId = baseFarmer.getId();
|
|
|
|
-// //--读取采集器
|
|
|
|
-// String deviceCode = eartagDeviceRegisterMapper.getDeviceIdByFarmerId(String.valueOf(farmerId));
|
|
|
|
-// java.sql.Date todayDate = new java.sql.Date(new java.util.Date().getTime());
|
|
|
|
-// //--读取注册耳标
|
|
|
|
-// List<EartagEartagRegister2> eartagEartagRegister2List = eartagEartagRegister2Mapper.getEartagByDeviceCode(deviceCode);
|
|
|
|
-// String year = dateUtil.getThisYear();
|
|
|
|
-// String month = dateUtil.getThisMonth();
|
|
|
|
-// if(eartagEartagRegister2List.size()>0){
|
|
|
|
-// //--
|
|
|
|
-// List<FarmerDayageWeight> farmerDayageWeightList = farmerDayageWeightMapper.getAllDayageWeight();
|
|
|
|
-// BigDecimal availTotalBd = new BigDecimal(0);
|
|
|
|
-// BigDecimal unavailTotalBd = new BigDecimal(0);
|
|
|
|
-// for (EartagEartagRegister2 eartagEartagRegister2 : eartagEartagRegister2List) {
|
|
|
|
-// long diff = todayDate.getTime() - eartagEartagRegister2.getCreateDate().getTime();
|
|
|
|
-// long days = diff / (1000 * 60 * 60 * 24);
|
|
|
|
-// if (days < 180) {
|
|
|
|
-// for (FarmerDayageWeight farmerDayageWeight : farmerDayageWeightList) {
|
|
|
|
-// if (farmerDayageWeight.getStartDayage() <= days && days <= farmerDayageWeight.getEndDayage()) {
|
|
|
|
-// availTotalBd = availTotalBd.add(farmerDayageWeight.getWeight().multiply(new BigDecimal(pigPrice)).setScale(2, BigDecimal.ROUND_HALF_UP));
|
|
|
|
-// break;
|
|
|
|
-// }
|
|
|
|
-// }
|
|
|
|
-// } else if (180 <= days && days < 210) {
|
|
|
|
-// for (FarmerDayageWeight farmerDayageWeight : farmerDayageWeightList) {
|
|
|
|
-// if (farmerDayageWeight.getStartDayage() <= days && days <= farmerDayageWeight.getEndDayage()) {
|
|
|
|
-// unavailTotalBd = unavailTotalBd.add(farmerDayageWeight.getWeight().multiply(new BigDecimal(pigPrice)).setScale(2, BigDecimal.ROUND_HALF_UP));
|
|
|
|
-// break;
|
|
|
|
-// }
|
|
|
|
-// }
|
|
|
|
-// }
|
|
|
|
-// }
|
|
|
|
-// //--保存生物资产
|
|
|
|
-// saveFarmerAsset(farmerId, year, month, availTotalBd, unavailTotalBd);
|
|
|
|
-// }else{
|
|
|
|
-// saveFarmerAsset(farmerId, year, month, new BigDecimal(0), new BigDecimal(0));
|
|
|
|
-// }
|
|
|
|
-// }
|
|
|
|
-//
|
|
|
|
-// //--保存生物资产
|
|
|
|
-// private void saveFarmerAsset(Integer farmerId, String year, String month, BigDecimal availTotalBd, BigDecimal unavailTotalBd) {
|
|
|
|
-// //--
|
|
|
|
-// FarmerAsset farmerAsset = farmerAssetMapper.getAssetByFarmerIdAndYearAndMonth(farmerId, year, month);
|
|
|
|
-// if (farmerAsset == null) {
|
|
|
|
-// FarmerAsset farmerAssetEntity = new FarmerAsset();
|
|
|
|
-// farmerAssetEntity.setFarmCode(String.valueOf(farmerId));
|
|
|
|
-// farmerAssetEntity.setYear(Integer.parseInt(year));
|
|
|
|
-// farmerAssetEntity.setMonth(Integer.parseInt(month));
|
|
|
|
-// farmerAssetEntity.setAvailAsset(availTotalBd);
|
|
|
|
-// farmerAssetEntity.setUnavailAsset(unavailTotalBd);
|
|
|
|
-// farmerAssetMapper.insert(farmerAssetEntity);
|
|
|
|
-// } else {
|
|
|
|
-// farmerAsset.setAvailAsset(availTotalBd);
|
|
|
|
-// farmerAsset.setUnavailAsset(unavailTotalBd);
|
|
|
|
-// farmerAssetMapper.updateById(farmerAsset);
|
|
|
|
-// }
|
|
|
|
-// }
|
|
|
|
-//}
|
|
|
|
-//
|
|
|
|
|
|
+
|
|
|
|
+// @Scheduled(cron = "0 0 0/6 * * ? ")
|
|
|
|
+ private void countAssetInEveryMonth() throws ParseException {
|
|
|
|
+ //--读取所有农户和采集器
|
|
|
|
+ List<BaseFarmer> baseFarmerList = baseFarmerMapper.getFarmer();
|
|
|
|
+ //--用采集器读取所有数据计算可售和不可售资源
|
|
|
|
+ for (BaseFarmer baseFarmer : baseFarmerList) {
|
|
|
|
+ //--计算每个农户的生物资产
|
|
|
|
+ _countAssetByFarmer(baseFarmer);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ //--
|
|
|
|
+ private void _countAssetByFarmer(BaseFarmer baseFarmer) throws ParseException {
|
|
|
|
+ //------------------------------------------------------------------------
|
|
|
|
+ // 读取采集器.
|
|
|
|
+ // 根据采集器读取所有耳标.
|
|
|
|
+ // 对读取耳标进行计算可售和非可售,并归到当月.
|
|
|
|
+ //------------------------------------------------------------------------
|
|
|
|
+
|
|
|
|
+ com.huimv.eartag2.common.utils.DateUtil dateUtil = new com.huimv.eartag2.common.utils.DateUtil();
|
|
|
|
+ Integer farmerId = baseFarmer.getId();
|
|
|
|
+ //--读取采集器
|
|
|
|
+ String deviceCode = eartagDeviceRegisterMapper.getDeviceIdByFarmerId(String.valueOf(farmerId));
|
|
|
|
+ java.sql.Date todayDate = new java.sql.Date(new java.util.Date().getTime());
|
|
|
|
+ //--读取注册耳标
|
|
|
|
+ List<EartagEartagRegister2> eartagEartagRegister2List = eartagEartagRegister2Mapper.getEartagByDeviceCode(deviceCode);
|
|
|
|
+ String year = dateUtil.getThisYear();
|
|
|
|
+ String month = dateUtil.getThisMonth();
|
|
|
|
+ if(eartagEartagRegister2List.size()>0){
|
|
|
|
+ //--
|
|
|
|
+ List<FarmerDayageWeight> farmerDayageWeightList = farmerDayageWeightMapper.getAllDayageWeight();
|
|
|
|
+ BigDecimal availTotalBd = new BigDecimal(0);
|
|
|
|
+ BigDecimal unavailTotalBd = new BigDecimal(0);
|
|
|
|
+ for (EartagEartagRegister2 eartagEartagRegister2 : eartagEartagRegister2List) {
|
|
|
|
+ long diff = todayDate.getTime() - eartagEartagRegister2.getCreateDate().getTime();
|
|
|
|
+ long days = diff / (1000 * 60 * 60 * 24);
|
|
|
|
+ if (days < 180) {
|
|
|
|
+ for (FarmerDayageWeight farmerDayageWeight : farmerDayageWeightList) {
|
|
|
|
+ if (farmerDayageWeight.getStartDayage() <= days && days <= farmerDayageWeight.getEndDayage()) {
|
|
|
|
+ availTotalBd = availTotalBd.add(farmerDayageWeight.getWeight().multiply(new BigDecimal(pigPrice)).setScale(2, BigDecimal.ROUND_HALF_UP));
|
|
|
|
+ break;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ } else if (180 <= days && days < 210) {
|
|
|
|
+ for (FarmerDayageWeight farmerDayageWeight : farmerDayageWeightList) {
|
|
|
|
+ if (farmerDayageWeight.getStartDayage() <= days && days <= farmerDayageWeight.getEndDayage()) {
|
|
|
|
+ unavailTotalBd = unavailTotalBd.add(farmerDayageWeight.getWeight().multiply(new BigDecimal(pigPrice)).setScale(2, BigDecimal.ROUND_HALF_UP));
|
|
|
|
+ break;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ //--保存生物资产
|
|
|
|
+ saveFarmerAsset(farmerId, year, month, availTotalBd, unavailTotalBd);
|
|
|
|
+ }else{
|
|
|
|
+ saveFarmerAsset(farmerId, year, month, new BigDecimal(0), new BigDecimal(0));
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ //--保存生物资产
|
|
|
|
+ private void saveFarmerAsset(Integer farmerId, String year, String month, BigDecimal availTotalBd, BigDecimal unavailTotalBd) {
|
|
|
|
+ //--
|
|
|
|
+ FarmerAsset farmerAsset = farmerAssetMapper.getAssetByFarmerIdAndYearAndMonth(farmerId, year, month);
|
|
|
|
+ if (farmerAsset == null) {
|
|
|
|
+ FarmerAsset farmerAssetEntity = new FarmerAsset();
|
|
|
|
+ farmerAssetEntity.setFarmCode(String.valueOf(farmerId));
|
|
|
|
+ farmerAssetEntity.setYear(Integer.parseInt(year));
|
|
|
|
+ farmerAssetEntity.setMonth(Integer.parseInt(month));
|
|
|
|
+ farmerAssetEntity.setAvailAsset(availTotalBd);
|
|
|
|
+ farmerAssetEntity.setUnavailAsset(unavailTotalBd);
|
|
|
|
+ farmerAssetMapper.insert(farmerAssetEntity);
|
|
|
|
+ } else {
|
|
|
|
+ farmerAsset.setAvailAsset(availTotalBd);
|
|
|
|
+ farmerAsset.setUnavailAsset(unavailTotalBd);
|
|
|
|
+ farmerAssetMapper.updateById(farmerAsset);
|
|
|
|
+ }
|
|
|
|
+ }*/
|
|
|
|
+}
|
|
|
|
+
|