调整设备重复查询
This commit is contained in:
parent
892adffabe
commit
8e21e73290
|
|
@ -14,6 +14,8 @@ public interface ISurvTransdataLivestockwaterService extends IService<SurvTransd
|
|||
|
||||
SurvTransdataLivestockwater getOneByDeviceCode(String deviceCode);
|
||||
|
||||
SurvTransdataLivestockwater getOneByDeviceId(String deployId);
|
||||
|
||||
void saveBaowen(String str, SurvDeviceDeploy deploy);
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -15,6 +15,8 @@ public interface ISurvTransdataOrientwaterService extends IService<SurvTransdata
|
|||
|
||||
SurvTransdataOrientwater getOneByDeviceCode(String deviceCode);
|
||||
|
||||
SurvTransdataOrientwater getOneByDeviceId(String deployId);
|
||||
|
||||
void saveBaowen(String str, SurvDeviceDeploy deploy);
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -189,10 +189,10 @@ public class SurvHisdataLivestockwaterServiceImpl extends ServiceImpl<SurvHisdat
|
|||
|
||||
if(deploy!=null && dataExamineDetail!=null){
|
||||
if(dataExamineDetail.getRules()!=null && !dataExamineDetail.getRules().isEmpty()) {
|
||||
String deployCode = deploy.getDeployCode();
|
||||
String deployId = deploy.getId();
|
||||
try {
|
||||
|
||||
SurvTransdataLivestockwater newestData = survTransdataLivestockwaterServiceImpl.getOneByDeviceCode(deployCode);
|
||||
SurvTransdataLivestockwater newestData = survTransdataLivestockwaterServiceImpl.getOneByDeviceId(deployId);
|
||||
|
||||
String orgId = null;
|
||||
if (newestData != null) {
|
||||
|
|
@ -242,13 +242,13 @@ public class SurvHisdataLivestockwaterServiceImpl extends ServiceImpl<SurvHisdat
|
|||
if (newestData == null) {
|
||||
newestData = new SurvTransdataLivestockwater();
|
||||
|
||||
SurvHisdataLivestockwater hisData = getRecentData(deployCode,dataExamineDetail.getHistoryRange());
|
||||
SurvHisdataLivestockwater hisData = getRecentData(deployId,dataExamineDetail.getHistoryRange());
|
||||
if(hisData!=null){ //第一逻辑,如果有最近的历史数据,则使用历史数据作为基准值
|
||||
XxlJobHelper.log("=====设备:{}===查询到历史数据,使用历史数据作为基准值==========",deployCode);
|
||||
XxlJobHelper.log("=====设备:{}===查询到历史数据,使用历史数据作为基准值==========",deployId);
|
||||
BeanUtil.copyProperties(hisData,newestData);
|
||||
hisdataLivestockwater.setRuleType(IotConstants.RULE_HISTORY);
|
||||
}else{//第二逻辑,使用预设的标准值
|
||||
XxlJobHelper.log("=====设备:{}===使用预设标准值进行生成==========",deployCode);
|
||||
XxlJobHelper.log("=====设备:{}===使用预设标准值进行生成==========",deployId);
|
||||
for (String s : ruleMap.keySet()) {
|
||||
TUtil.setFieldValue(newestData, s, ruleMap.get(s).getStandard());
|
||||
}
|
||||
|
|
@ -280,7 +280,7 @@ public class SurvHisdataLivestockwaterServiceImpl extends ServiceImpl<SurvHisdat
|
|||
|
||||
hisdataLivestockwater.setDataDateTime(nowTime);
|
||||
hisdataLivestockwater.setDataGatherType(IotConstants.MARK_GENDATA);
|
||||
hisdataLivestockwater.setDeployCode(deployCode);
|
||||
hisdataLivestockwater.setDeployCode(deploy.getDeployCode());
|
||||
hisdataLivestockwater.setFirstValveStatus("0");
|
||||
hisdataLivestockwater.setSecondValveStatus("1");
|
||||
hisdataLivestockwater.setCrashStopStatus("0");
|
||||
|
|
@ -344,10 +344,10 @@ public class SurvHisdataLivestockwaterServiceImpl extends ServiceImpl<SurvHisdat
|
|||
return null;
|
||||
}
|
||||
|
||||
private SurvHisdataLivestockwater getRecentData(String deployCode,Integer dayRange) {
|
||||
private SurvHisdataLivestockwater getRecentData(String deployId,Integer dayRange) {
|
||||
LocalDateTime daysAgo = LocalDateTime.now().minusDays(dayRange);
|
||||
SurvHisdataLivestockwater oldWater = lambdaQuery()
|
||||
.eq(SurvHisdataLivestockwater::getDeployCode,deployCode)
|
||||
.eq(SurvHisdataLivestockwater::getDeviceId,deployId)
|
||||
.ge(SurvHisdataLivestockwater::getDataDateTime, DateTimeConverter.toDate(daysAgo))
|
||||
.orderByDesc(SurvHisdataLivestockwater::getDataDateTime)
|
||||
.last("limit 1")
|
||||
|
|
|
|||
|
|
@ -209,9 +209,9 @@ public class SurvHisdataOrientwaterServiceImpl extends ServiceImpl<SurvHisdataOr
|
|||
if(deploy!=null && config!=null) {
|
||||
if (config.getRules() != null && !config.getRules().isEmpty()) {
|
||||
try {
|
||||
String deployCode = deploy.getDeployCode();
|
||||
log.warn("=================new面源逻辑====================" + deployCode);
|
||||
SurvTransdataOrientwater newestData = orientwaterService.getOneByDeviceCode(deployCode);
|
||||
String deployId = deploy.getId();
|
||||
log.warn("=================new面源逻辑====================" + deployId);
|
||||
SurvTransdataOrientwater newestData = orientwaterService.getOneByDeviceId(deployId);
|
||||
|
||||
String orgId = null;
|
||||
if (newestData != null) {
|
||||
|
|
@ -261,14 +261,14 @@ public class SurvHisdataOrientwaterServiceImpl extends ServiceImpl<SurvHisdataOr
|
|||
if (newestData == null) {
|
||||
newestData = new SurvTransdataOrientwater();
|
||||
|
||||
SurvHisdataOrientwater hisData = getRecentData(deployCode,config.getHistoryRange());
|
||||
SurvHisdataOrientwater hisData = getRecentData(deployId,config.getHistoryRange());
|
||||
|
||||
if(hisData!=null){ //第一逻辑,如果有最近的历史数据,则使用历史数据作为基准值
|
||||
XxlJobHelper.log("=====设备:{}===查询到历史数据,使用历史数据作为基准值==========",deployCode);
|
||||
XxlJobHelper.log("=====设备:{}===查询到历史数据,使用历史数据作为基准值==========",deploy.getId());
|
||||
BeanUtil.copyProperties(hisData,newestData);
|
||||
hisdataOrientwater.setRuleType(IotConstants.RULE_HISTORY);
|
||||
}else{//第二逻辑,使用预设的标准值
|
||||
XxlJobHelper.log("=====设备:{}===使用预设标准值进行生成==========",deployCode);
|
||||
XxlJobHelper.log("=====设备:{}===使用预设标准值进行生成==========",deploy.getId());
|
||||
for (String s : ruleMap.keySet()) {
|
||||
TUtil.setFieldValue(newestData, s, ruleMap.get(s).getStandard());
|
||||
}
|
||||
|
|
@ -300,7 +300,7 @@ public class SurvHisdataOrientwaterServiceImpl extends ServiceImpl<SurvHisdataOr
|
|||
|
||||
hisdataOrientwater.setDataDateTime(nowTime);
|
||||
hisdataOrientwater.setDataGatherType(IotConstants.MARK_GENDATA);
|
||||
hisdataOrientwater.setDeployCode(deployCode);
|
||||
hisdataOrientwater.setDeployCode(deploy.getDeployCode());
|
||||
|
||||
hisdataOrientwater.setFirstValveStatus("0");
|
||||
hisdataOrientwater.setSecondValveStatus("1");
|
||||
|
|
@ -367,10 +367,10 @@ public class SurvHisdataOrientwaterServiceImpl extends ServiceImpl<SurvHisdataOr
|
|||
|
||||
|
||||
|
||||
private SurvHisdataOrientwater getRecentData(String deployCode,Integer dayRange) {
|
||||
private SurvHisdataOrientwater getRecentData(String deployId,Integer dayRange) {
|
||||
LocalDateTime daysAgo = LocalDateTime.now().minusDays(dayRange);
|
||||
SurvHisdataOrientwater oldWater = lambdaQuery()
|
||||
.eq(SurvHisdataOrientwater::getDeployCode,deployCode)
|
||||
.eq(SurvHisdataOrientwater::getDeviceId,deployId)
|
||||
.ge(SurvHisdataOrientwater::getDataDateTime, DateTimeConverter.toDate(daysAgo))
|
||||
.orderByDesc(SurvHisdataOrientwater::getDataDateTime)
|
||||
.last("limit 1")
|
||||
|
|
|
|||
|
|
@ -52,6 +52,13 @@ public class SurvTransdataLivestockwaterServiceImpl extends ServiceImpl<SurvTran
|
|||
return getOne(queryWrapper);
|
||||
}
|
||||
|
||||
@Override
|
||||
public SurvTransdataLivestockwater getOneByDeviceId(String deployId) {
|
||||
QueryWrapper<SurvTransdataLivestockwater> queryWrapper = new QueryWrapper<SurvTransdataLivestockwater>();
|
||||
queryWrapper.eq("DEVICE_ID",deployId).last("limit 1");
|
||||
return getOne(queryWrapper);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public void saveBaowen(String str,SurvDeviceDeploy deploy) {
|
||||
|
|
|
|||
|
|
@ -52,6 +52,13 @@ public class SurvTransdataOrientwaterServiceImpl extends ServiceImpl<SurvTransda
|
|||
return getOne(queryWrapper);
|
||||
}
|
||||
|
||||
@Override
|
||||
public SurvTransdataOrientwater getOneByDeviceId(String deployId) {
|
||||
QueryWrapper<SurvTransdataOrientwater> queryWrapper = new QueryWrapper<SurvTransdataOrientwater>();
|
||||
queryWrapper.eq("DEVICE_ID",deployId).last("limit 1");
|
||||
return getOne(queryWrapper);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public void saveBaowen(String str, SurvDeviceDeploy deploy) {
|
||||
|
|
|
|||
Loading…
Reference in New Issue