Commit cc934e34 authored by duanruiming's avatar duanruiming

[add] 策略管理添加计划名称

parent 578967b6
......@@ -23,6 +23,7 @@ public class StrategyControlDetailList {
@Data
public static class ExecutePlan {
private String crossId;
private String name;
private Integer type;
private Integer planId;
private String company;
......@@ -43,6 +44,7 @@ public class StrategyControlDetailList {
@Data
public static class DailyPlan {
private String crossId;
private String name;
private Integer dailyPlanId;
private List<DailyPlanDetail> dailyPlanDetails;
......
......@@ -28,4 +28,6 @@ public class StrategyDailyPlanInfoEntity {
@ApiModelProperty("dailyPlanDetails")
@TableField("daily_plan_details")
private String dailyPlanDetails;
private String name;
}
......@@ -42,4 +42,6 @@ public class StrategyPlanInfoEntity {
@ApiModelProperty("planDetails")
@TableField("plan_details")
private String planDetails;
private String name;
}
......@@ -392,26 +392,67 @@ public class StrategyControlServiceImpl implements StrategyControlService {
}
}
//@Override
//public JsonViewObject strategyOptTimes() throws Exception {
// String timeUrl = "http://37.12.182.29:15020/decisionPage/MonitorStrategyOptimizationInfo/getData";
// String timeResult = OkHttpClientUtil.get(timeUrl);
// ObjectMapper mapper = JacksonUtils.getInstance();
// StrategyOptTimesVO strategyOptTimesVO = new StrategyOptTimesVO();
// if (StringUtils.isNotBlank(timeResult)) {
// StrategyOptTimesDTO dto = mapper.readValue(timeResult, StrategyOptTimesDTO.class);
// List<StrategyOptTimesDTO.Detail> content = dto.getContent();
// if (!CollectionUtils.isEmpty(content)) {
// Double totalTime = 0.0;
// int count = 0;
// for (StrategyOptTimesDTO.Detail item : content) {
// totalTime += item.getOptimizeTime();
// count += item.getExecuteNum();
// }
// strategyOptTimesVO.setTimes(totalTime.intValue());
// strategyOptTimesVO.setCount(count);
// }
// }
// return JsonViewObject.newInstance().success(strategyOptTimesVO);
//}
@Override
public JsonViewObject strategyOptTimes() throws Exception {
String timeUrl = "http://37.12.182.29:15020/decisionPage/MonitorStrategyOptimizationInfo/getData";
String timeResult = OkHttpClientUtil.get(timeUrl);
ObjectMapper mapper = JacksonUtils.getInstance();
LambdaQueryWrapper<StrategyCrossResultEntity> queryWrapper = new LambdaQueryWrapper<>();
StrategyOptTimesVO strategyOptTimesVO = new StrategyOptTimesVO();
if (StringUtils.isNotBlank(timeResult)) {
StrategyOptTimesDTO dto = mapper.readValue(timeResult, StrategyOptTimesDTO.class);
List<StrategyOptTimesDTO.Detail> content = dto.getContent();
if (!CollectionUtils.isEmpty(content)) {
Double totalTime = 0.0;
int count = 0;
for (StrategyOptTimesDTO.Detail item : content) {
totalTime += item.getOptimizeTime();
count += item.getExecuteNum();
LocalDateTime midNight = DateUtil.getMidNight();
queryWrapper.ge(StrategyCrossResultEntity::getIssueTime, midNight);
queryWrapper.eq(StrategyCrossResultEntity::getResponseCode, 200);
List<StrategyCrossResultEntity> resultEntityList = strategyCrossResultMapper.selectList(queryWrapper);
if (!CollectionUtils.isEmpty(resultEntityList)) {
// 1:绿灯空放 2:失衡 3:溢出
int optCount = 0;
int optTime = 0;
Map<Integer, List<StrategyCrossResultEntity>> typeMap = resultEntityList.stream().collect(Collectors.groupingBy(StrategyCrossResultEntity::getCurrentAlgo));
for (Map.Entry<Integer, List<StrategyCrossResultEntity>> entry : typeMap.entrySet()) {
Integer type = entry.getKey();
List<StrategyCrossResultEntity> value = entry.getValue();
optCount = value.size();
for (StrategyCrossResultEntity entity : value) {
if (Objects.equals(1, type)) {
optTime += Math.abs(entity.getExtendTime());
}
if (Objects.equals(2, type)) {
optTime += entity.getDuration();
}
if (Objects.equals(3, type)) {
Integer rtnType = entity.getRtnType();
if (Objects.equals(1, rtnType)) {
optTime += 1;
}
if (Objects.equals(2, rtnType)) {
optTime += Math.abs(entity.getExtendTime());
}
}
}
strategyOptTimesVO.setTimes(totalTime.intValue());
strategyOptTimesVO.setCount(count);
}
strategyOptTimesVO.setCount(optCount);
strategyOptTimesVO.setTimes(optTime);
}
return JsonViewObject.newInstance().success(strategyOptTimesVO);
}
......@@ -704,6 +745,7 @@ public class StrategyControlServiceImpl implements StrategyControlService {
planInfoEntity.setStartTime(plan.getStartTime());
planInfoEntity.setEndTime(plan.getEndTime());
planInfoEntity.setCompany(plan.getCompany());
planInfoEntity.setName(plan.getName());
planInfoEntity.setPlanDetails(mapper.writeValueAsString(plan.getPlanDetails()));
LambdaQueryWrapper<StrategyPlanInfoEntity> planDel = new LambdaQueryWrapper<>();
planDel.eq(StrategyPlanInfoEntity::getCrossId, plan.getCrossId());
......@@ -721,6 +763,7 @@ public class StrategyControlServiceImpl implements StrategyControlService {
StrategyDailyPlanInfoEntity dailyPlanInfoEntity = new StrategyDailyPlanInfoEntity();
dailyPlanInfoEntity.setCrossId(crossId);
dailyPlanInfoEntity.setDailyPlanId(dailyPlanId);
dailyPlanInfoEntity.setName(dailyPlan.getName());
LambdaQueryWrapper<StrategyDailyPlanInfoEntity> delete = new LambdaQueryWrapper<>();
delete.eq(StrategyDailyPlanInfoEntity::getCrossId, crossId);
delete.eq(StrategyDailyPlanInfoEntity::getDailyPlanId, dailyPlanId);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment