1.限制算法,污区图监测点修改
This commit is contained in:
@@ -5,15 +5,17 @@ import com.njcn.common.pojo.enums.common.LogEnum;
|
||||
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
|
||||
import com.njcn.common.pojo.response.HttpResult;
|
||||
import com.njcn.common.utils.HttpResultUtil;
|
||||
import com.njcn.common.utils.NjcnDateUtils;
|
||||
import com.njcn.device.biz.commApi.CommTerminalGeneralClient;
|
||||
import com.njcn.prepare.harmonic.pojo.param.LineParam;
|
||||
import com.njcn.prepare.harmonic.service.mysql.line.LimitTargetService;
|
||||
import com.njcn.prepare.harmonic.utils.PublicUtil;
|
||||
import com.njcn.web.controller.BaseController;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiImplicitParam;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.util.CollectionUtils;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
@@ -37,6 +39,7 @@ import java.util.List;
|
||||
public class LimitTargetController extends BaseController {
|
||||
|
||||
private final LimitTargetService limitTargetService;
|
||||
private final CommTerminalGeneralClient commTerminalGeneralClient;
|
||||
|
||||
@Deprecated
|
||||
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
|
||||
@@ -52,23 +55,27 @@ public class LimitTargetController extends BaseController {
|
||||
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
|
||||
@PostMapping("/limitTargetData")
|
||||
@ApiOperation("生成limit_target表(MySQL入库)")
|
||||
@ApiImplicitParam(name = "lineParam", value = "参数", required = true)
|
||||
public HttpResult<String> limitTargetData(@RequestBody @Validated LineParam lineParam){
|
||||
@ApiImplicitParam(name = "jobParam", value = "参数", required = true)
|
||||
public HttpResult<String> limitTargetData(@RequestBody LineParam jobParam){
|
||||
log.info(LocalDateTime.now()+"limitTargetData开始执行");
|
||||
String methodDescribe = getMethodDescribe("limitTargetData");
|
||||
String time;
|
||||
if (lineParam.getType() == 3){
|
||||
int year = Integer.parseInt(lineParam.getDataDate().split("-")[0]);
|
||||
int month = Integer.parseInt(lineParam.getDataDate().split("-")[1]);
|
||||
List<String> dayList = PublicUtil.getDayByMonth(year,month);
|
||||
for (String item : dayList) {
|
||||
String startTime,endTime;
|
||||
List<String> indexLists;
|
||||
if(CollectionUtils.isEmpty (jobParam.getLineIds ())){
|
||||
indexLists = commTerminalGeneralClient.getRunMonitorIds ().getData ( );
|
||||
}else{
|
||||
indexLists = jobParam.getLineIds ();
|
||||
}
|
||||
if (jobParam.getRepairFlag()){
|
||||
List<String> timeRange = NjcnDateUtils.findEveryDay(jobParam.getBeginTime(),jobParam.getEndTime());
|
||||
for (String item : timeRange) {
|
||||
log.info(item+"-->开始执行");
|
||||
time = item + " 00:00:00";
|
||||
limitTargetService.limitTargetData(lineParam,time);
|
||||
startTime = item+" "+"00:00:00";
|
||||
endTime = item+" "+"23:59:59";
|
||||
limitTargetService.limitTargetData(indexLists,startTime,endTime);
|
||||
}
|
||||
} else {
|
||||
time = lineParam.getDataDate() + " 00:00:00";
|
||||
limitTargetService.limitTargetData(lineParam,time);
|
||||
limitTargetService.limitTargetData(indexLists,jobParam.getBeginTime(), jobParam.getEndTime());
|
||||
}
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
|
||||
}
|
||||
|
||||
@@ -5,11 +5,10 @@ import com.njcn.common.pojo.enums.common.LogEnum;
|
||||
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
|
||||
import com.njcn.common.pojo.response.HttpResult;
|
||||
import com.njcn.common.utils.HttpResultUtil;
|
||||
import com.njcn.common.utils.NjcnDateUtils;
|
||||
import com.njcn.device.biz.commApi.CommTerminalGeneralClient;
|
||||
import com.njcn.device.pq.api.LineFeignClient;
|
||||
import com.njcn.prepare.harmonic.pojo.param.LineParam;
|
||||
import com.njcn.prepare.harmonic.service.mysql.Impl.line.LimitRateService;
|
||||
import com.njcn.prepare.harmonic.utils.PublicUtil;
|
||||
import com.njcn.web.controller.BaseController;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiImplicitParam;
|
||||
@@ -23,7 +22,6 @@ import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
@@ -44,8 +42,6 @@ public class LimitrateController extends BaseController {
|
||||
|
||||
private final LimitRateService limitRateService;
|
||||
|
||||
private final LineFeignClient lineFeignClient;
|
||||
|
||||
private final CommTerminalGeneralClient commTerminalGeneralClient;
|
||||
|
||||
/* @Deprecated
|
||||
@@ -74,34 +70,29 @@ public class LimitrateController extends BaseController {
|
||||
}*/
|
||||
|
||||
@ApiOperation("生成limitRate表(MySQL入库)")
|
||||
@ApiImplicitParam(value = "limitRateHanlderParam",name = "limitRateHanlderParam",required = true)
|
||||
@ApiImplicitParam(value = "jobParam",name = "jobParam",required = true)
|
||||
@PostMapping("LimitRate")
|
||||
@OperateInfo(info = LogEnum.BUSINESS_MEDIUM)
|
||||
public HttpResult<Boolean> limitRate(@RequestBody LineParam limitRateHanlderParam ){
|
||||
public HttpResult<Boolean> limitRate(@RequestBody LineParam jobParam){
|
||||
log.info(LocalDateTime.now()+"limitRate开始执行");
|
||||
String startTime,endTime;
|
||||
String methodDescribe = getMethodDescribe("limitRate");
|
||||
List<String> indexLists = new ArrayList<> ();
|
||||
if(CollectionUtils.isEmpty (limitRateHanlderParam.getLineIds ())){
|
||||
List<String> indexLists;
|
||||
if(CollectionUtils.isEmpty (jobParam.getLineIds ())){
|
||||
indexLists = commTerminalGeneralClient.getRunMonitorIds ().getData ( );
|
||||
}else{
|
||||
indexLists = limitRateHanlderParam.getLineIds ();
|
||||
indexLists = jobParam.getLineIds ();
|
||||
}
|
||||
|
||||
if (limitRateHanlderParam.getType() == 3){
|
||||
int year = Integer.parseInt(limitRateHanlderParam.getDataDate().split("-")[0]);
|
||||
int month = Integer.parseInt(limitRateHanlderParam.getDataDate().split("-")[1]);
|
||||
List<String> dayList = PublicUtil.getDayByMonth(year,month);
|
||||
for (String item : dayList) {
|
||||
if (jobParam.getRepairFlag()){
|
||||
List<String> timeRange = NjcnDateUtils.findEveryDay(jobParam.getBeginTime(),jobParam.getEndTime());
|
||||
for (String item : timeRange) {
|
||||
log.info(item+"-->开始执行");
|
||||
startTime = item+" "+"00:00:00";
|
||||
endTime = item+" "+"23:59:59";
|
||||
limitRateService.limitRate(indexLists,startTime,endTime);
|
||||
}
|
||||
} else {
|
||||
startTime = limitRateHanlderParam.getDataDate ()+" "+"00:00:00";
|
||||
endTime = limitRateHanlderParam.getDataDate ()+" "+"23:59:59";
|
||||
limitRateService.limitRate(indexLists,startTime,endTime);
|
||||
limitRateService.limitRate(indexLists,jobParam.getBeginTime(),jobParam.getEndTime());
|
||||
}
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, true, methodDescribe);
|
||||
}
|
||||
|
||||
@@ -1,10 +1,12 @@
|
||||
package com.njcn.prepare.harmonic.controller.line;
|
||||
|
||||
import com.njcn.common.pojo.annotation.OperateInfo;
|
||||
import com.njcn.common.pojo.constant.BizParamConstant;
|
||||
import com.njcn.common.pojo.enums.common.LogEnum;
|
||||
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
|
||||
import com.njcn.common.pojo.response.HttpResult;
|
||||
import com.njcn.common.utils.HttpResultUtil;
|
||||
import com.njcn.common.utils.NjcnDateUtils;
|
||||
import com.njcn.prepare.harmonic.pojo.param.LineParam;
|
||||
import com.njcn.prepare.harmonic.service.mysql.line.PollutionService;
|
||||
import com.njcn.web.controller.BaseController;
|
||||
@@ -19,6 +21,8 @@ import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
||||
/**
|
||||
* 监测点污染指标
|
||||
@@ -40,10 +44,21 @@ public class PollutionController extends BaseController {
|
||||
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
|
||||
@PostMapping("/processPollutionData")
|
||||
@ApiOperation("处理监测点污染指标")
|
||||
@ApiImplicitParam(name = "lineParam", value = "参数", required = true)
|
||||
public HttpResult<String> processPollutionData(@RequestBody @Validated LineParam lineParam){
|
||||
@ApiImplicitParam(name = "jobParam", value = "参数", required = true)
|
||||
public HttpResult<String> processPollutionData(@RequestBody @Validated LineParam jobParam){
|
||||
String methodDescribe = getMethodDescribe("processPollutionData");
|
||||
pollutionService.processPollutionData(lineParam);
|
||||
if (jobParam.getRepairFlag()&&Integer.valueOf(BizParamConstant.STAT_BIZ_DAY).equals(jobParam.getType())){
|
||||
List<String> timeRange = NjcnDateUtils.findEveryDay(jobParam.getBeginTime(),jobParam.getEndTime());
|
||||
for (String item : timeRange) {
|
||||
log.info(item+"-->开始执行");
|
||||
jobParam.setBeginTime(item+" "+"00:00:00");
|
||||
jobParam.setEndTime(item+" "+"23:59:59");
|
||||
System.out.println(jobParam);
|
||||
pollutionService.processPollutionData(jobParam);
|
||||
}
|
||||
} else {
|
||||
pollutionService.processPollutionData(jobParam);
|
||||
}
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
|
||||
}
|
||||
|
||||
|
||||
@@ -26,9 +26,12 @@ public class RStatLimitRateDServiceImpl extends MppServiceImpl<RStatLimitRateDMa
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<RStatLimitRateDPO> findList(List<String> list, String time) {
|
||||
public List<RStatLimitRateDPO> findList(List<String> list,String startTime,String endTime) {
|
||||
LambdaQueryWrapper<RStatLimitRateDPO> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
||||
lambdaQueryWrapper.in(CollUtil.isNotEmpty(list),RStatLimitRateDPO::getLineId,list).eq(RStatLimitRateDPO::getTime,time).eq(RStatLimitRateDPO::getPhasicType,"T");
|
||||
lambdaQueryWrapper.in(CollUtil.isNotEmpty(list),RStatLimitRateDPO::getLineId,list)
|
||||
.ge(RStatLimitRateDPO::getTime,startTime)
|
||||
.le(RStatLimitRateDPO::getTime,endTime)
|
||||
.eq(RStatLimitRateDPO::getPhasicType,"T");
|
||||
return this.list(lambdaQueryWrapper);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@ package com.njcn.prepare.harmonic.service.mysql.Impl.line;
|
||||
|
||||
import com.github.jeffreyning.mybatisplus.service.MppServiceImpl;
|
||||
import com.njcn.common.utils.NjcnBeanUtil;
|
||||
import com.njcn.device.biz.commApi.CommTerminalGeneralClient;
|
||||
import com.njcn.device.pq.api.LineFeignClient;
|
||||
import com.njcn.device.biz.pojo.po.Overlimit;
|
||||
import com.njcn.harmonic.pojo.po.LimitRate;
|
||||
@@ -50,7 +51,7 @@ public class LimitRateService extends MppServiceImpl<LimitRatePOMapper, LimitRa
|
||||
|
||||
private final InfluxDbUtils influxDbUtils;
|
||||
|
||||
private final LineFeignClient lineFeignClient;
|
||||
private final CommTerminalGeneralClient commTerminalGeneralClient;
|
||||
|
||||
private final IRStatLimitRateDService statLimitRateDService;
|
||||
|
||||
@@ -124,7 +125,7 @@ public class LimitRateService extends MppServiceImpl<LimitRatePOMapper, LimitRa
|
||||
}
|
||||
for (int i = 0; i <lineList.size () ; i++) {
|
||||
String lineIndex =lineList.get (i);
|
||||
Overlimit overlimit = lineFeignClient.getOverLimitData(lineIndex).getData ();
|
||||
Overlimit overlimit = commTerminalGeneralClient.getOverLimitData(lineIndex).getData ();
|
||||
if(!Optional.ofNullable (overlimit).isPresent ()){
|
||||
continue;
|
||||
}
|
||||
|
||||
@@ -64,15 +64,16 @@ public class LimitTargetServiceImpl extends MppServiceImpl<RStatLimitTargetDMapp
|
||||
|
||||
@Override
|
||||
@Async("asyncExecutor")
|
||||
public void limitTargetData(LineParam lineParam,String time) {
|
||||
public void limitTargetData(List<String> indexLists,String startTime,String endTime) {
|
||||
log.info(LocalDateTime.now()+"r_stat_limit_target_d开始执行=======》");
|
||||
List<RStatLimitTargetDPO> list = new ArrayList<>();
|
||||
Date dateOut = DateUtil.parse(time);
|
||||
Date dateOut = DateUtil.parse(startTime);
|
||||
List<RStatLimitRateDPO> limitRateData = new ArrayList<>();
|
||||
if (CollUtil.isEmpty(lineParam.getLineIds())){
|
||||
limitRateData = getLimitRateDataFromMysql(null,time);
|
||||
|
||||
if (CollUtil.isEmpty(indexLists)){
|
||||
limitRateData = getLimitRateDataFromMysql(null,startTime,endTime);
|
||||
} else {
|
||||
limitRateData = getLimitRateDataFromMysql(lineParam.getLineIds(),time);
|
||||
limitRateData = getLimitRateDataFromMysql(indexLists,startTime,endTime);
|
||||
}
|
||||
if (!CollectionUtils.isEmpty(limitRateData)){
|
||||
for (RStatLimitRateDPO limitRate : limitRateData){
|
||||
@@ -101,8 +102,8 @@ public class LimitTargetServiceImpl extends MppServiceImpl<RStatLimitTargetDMapp
|
||||
return resultMapper.toPOJO(sqlResult, LimitRate.class);
|
||||
}
|
||||
|
||||
private List<RStatLimitRateDPO> getLimitRateDataFromMysql(List<String> lineList, String date){
|
||||
return statLimitRateDService.findList(lineList,date);
|
||||
private List<RStatLimitRateDPO> getLimitRateDataFromMysql(List<String> lineList,String startTime,String endTime){
|
||||
return statLimitRateDService.findList(lineList,startTime,endTime);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -55,9 +55,6 @@ import java.util.stream.Stream;
|
||||
@AllArgsConstructor
|
||||
public class PollutionServiceImpl implements PollutionService {
|
||||
|
||||
|
||||
private final LineFeignClient lineFeignClient;
|
||||
|
||||
private final DicDataFeignClient dicDataFeignClient;
|
||||
|
||||
private final RStatPollutionOrgDMapper rStatPollutionOrgDMapper;
|
||||
@@ -106,7 +103,7 @@ public class PollutionServiceImpl implements PollutionService {
|
||||
overLimitList = getAllLinesLimitData();
|
||||
}else {
|
||||
for (String lineId : lineParam.getLineIds()){
|
||||
Overlimit overlimit = lineFeignClient.getOverLimitData(lineId).getData();
|
||||
Overlimit overlimit = commTerminalGeneralClient.getOverLimitData(lineId).getData();
|
||||
overLimitList.add(overlimit);
|
||||
}
|
||||
}
|
||||
@@ -155,8 +152,7 @@ public class PollutionServiceImpl implements PollutionService {
|
||||
* MySql入表
|
||||
*/
|
||||
private void insertPolluctionMySql(List<RMpPollutionDPO> pollutionDayList, List<DictData> dictData, LocalDateTime local, LocalDateTime localEnd,Integer type){
|
||||
HttpResult<Map<String, List<String>>> substationOut = lineFeignClient.getLineBySubstationRelation(1);
|
||||
//HttpResult<Map<String, List<String>>> unitOut = deptLineFeignClient.getLineByDeptRelation(1);
|
||||
HttpResult<Map<String, List<String>>> substationOut = commTerminalGeneralClient.getLineBySubstationRelation(1);
|
||||
|
||||
Dept dept = deptFeignClient.getRootDept().getData();
|
||||
DeptGetLineParam deptGetLineParam = new DeptGetLineParam();
|
||||
@@ -848,7 +844,7 @@ public class PollutionServiceImpl implements PollutionService {
|
||||
* 获取限值表中的所有监测点信息
|
||||
*/
|
||||
private List<Overlimit> getAllLinesLimitData() {
|
||||
return lineFeignClient.getAllLineOverLimit("harmonic-boot","").getData();
|
||||
return commTerminalGeneralClient.getAllLineOverLimit().getData();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -9,5 +9,5 @@ public interface IRStatLimitRateDService extends IMppService<RStatLimitRateDPO>
|
||||
|
||||
void insert(List<RStatLimitRateDPO> list);
|
||||
|
||||
List<RStatLimitRateDPO> findList(List<String> list, String time);
|
||||
List<RStatLimitRateDPO> findList(List<String> list,String startTime,String endTime);
|
||||
}
|
||||
|
||||
@@ -2,6 +2,8 @@ package com.njcn.prepare.harmonic.service.mysql.line;
|
||||
|
||||
import com.njcn.prepare.harmonic.pojo.param.LineParam;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author xiaoyao
|
||||
* @version 1.0.0
|
||||
@@ -11,5 +13,5 @@ public interface LimitTargetService {
|
||||
|
||||
void getLimitTargetData(LineParam lineParam);
|
||||
|
||||
void limitTargetData(LineParam lineParam,String time);
|
||||
void limitTargetData(List<String> indexLists,String startTime,String endTime);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user