Commit d6d29ea4 authored by duanruiming's avatar duanruiming

[add] 干线优化监测优化

parent a9da3c53
...@@ -8,6 +8,7 @@ import net.wanji.common.framework.rest.JsonViewObject; ...@@ -8,6 +8,7 @@ import net.wanji.common.framework.rest.JsonViewObject;
import net.wanji.opt.dto.strategy.AddOrUpdateSceneDTO; import net.wanji.opt.dto.strategy.AddOrUpdateSceneDTO;
import net.wanji.opt.service.signalopt.GreenBeltInfoService; import net.wanji.opt.service.signalopt.GreenBeltInfoService;
import net.wanji.opt.vo.GreenBeltFlowStopTimeVO; import net.wanji.opt.vo.GreenBeltFlowStopTimeVO;
import net.wanji.opt.vo.GreenBeltKeyCrossFlowTimeVO;
import net.wanji.opt.vo.GreenBeltSpeedWidthVO; import net.wanji.opt.vo.GreenBeltSpeedWidthVO;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
...@@ -61,4 +62,20 @@ public class GreenBeltController { ...@@ -61,4 +62,20 @@ public class GreenBeltController {
} }
return JsonViewObject.newInstance().success(greenBeltFlowStopTimeVOS); return JsonViewObject.newInstance().success(greenBeltFlowStopTimeVOS);
} }
@ApiOperation(value = "绿波关键路口流量绿信比", notes = "优化监测-绿波关键路口流量绿信比", response = JsonViewObject.class,
produces = MediaType.APPLICATION_JSON, consumes = MediaType.APPLICATION_JSON)
@GetMapping(value = "/greenBeltKeyCrossFlowTime")
@ApiResponses({
@ApiResponse(code = 200, message = "OK", response = AddOrUpdateSceneDTO.class),
})
public JsonViewObject greenBeltKeyCrossFlowTime(Integer greenId) {
List<GreenBeltKeyCrossFlowTimeVO> greenBeltKeyCrossFlowTimeVOS = Collections.EMPTY_LIST;
try {
greenBeltKeyCrossFlowTimeVOS = greenBeltInfoService.greenBeltKeyCrossFlowTime(greenId);
} catch (Exception e) {
JsonViewObject.newInstance().fail("绿波带宽曲线异常");
}
return JsonViewObject.newInstance().success(greenBeltKeyCrossFlowTimeVOS);
}
} }
...@@ -45,6 +45,8 @@ public class StrategyGreenOptHistEntity { ...@@ -45,6 +45,8 @@ public class StrategyGreenOptHistEntity {
private Double greenWidthTime; private Double greenWidthTime;
@TableField("cross_green_detail") @TableField("cross_green_detail")
private String crossGreenDetail; private String crossGreenDetail;
@TableField("key_cross")
private String keyCross;
@TableField("create_time") @TableField("create_time")
private Date createTime; private Date createTime;
@TableField("modify_time") @TableField("modify_time")
......
...@@ -536,6 +536,7 @@ public class TrendServiceImpl implements TrendService { ...@@ -536,6 +536,7 @@ public class TrendServiceImpl implements TrendService {
greenWaveRunMonitorVO.setHour(hourSub); greenWaveRunMonitorVO.setHour(hourSub);
greenWaveRunMonitorVO.setAvgSpeed(greenwaveHistPOExt.getAvgSpeed()); greenWaveRunMonitorVO.setAvgSpeed(greenwaveHistPOExt.getAvgSpeed());
greenWaveRunMonitorVO.setCongestionIndex(greenwaveHistPOExt.getCongestionIndex()); greenWaveRunMonitorVO.setCongestionIndex(greenwaveHistPOExt.getCongestionIndex());
greenWaveRunMonitorVO.setTravelTime((int) (greenwaveHistPOExt.getTrvalTime() / 60));
res.add(greenWaveRunMonitorVO); res.add(greenWaveRunMonitorVO);
} }
return res; return res;
......
package net.wanji.opt.service.signalopt; package net.wanji.opt.service.signalopt;
import net.wanji.opt.vo.GreenBeltFlowStopTimeVO; import net.wanji.opt.vo.GreenBeltFlowStopTimeVO;
import net.wanji.opt.vo.GreenBeltKeyCrossFlowTimeVO;
import net.wanji.opt.vo.GreenBeltSpeedWidthVO; import net.wanji.opt.vo.GreenBeltSpeedWidthVO;
import java.util.List; import java.util.List;
...@@ -12,4 +13,5 @@ import java.util.List; ...@@ -12,4 +13,5 @@ import java.util.List;
public interface GreenBeltInfoService { public interface GreenBeltInfoService {
List<GreenBeltFlowStopTimeVO> greenBeltCrossDetailHist(Integer greenId) throws Exception; List<GreenBeltFlowStopTimeVO> greenBeltCrossDetailHist(Integer greenId) throws Exception;
List<GreenBeltSpeedWidthVO> greenBeltSpeedWidth(Integer greenId) throws Exception; List<GreenBeltSpeedWidthVO> greenBeltSpeedWidth(Integer greenId) throws Exception;
List<GreenBeltKeyCrossFlowTimeVO> greenBeltKeyCrossFlowTime(Integer greenId) throws Exception;
} }
package net.wanji.opt.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
* @author duanruiming
* @date 2024/12/06 13:37
*/
@Data
@ApiModel(value = "优化监测-绿波关键路口流量绿信比实体")
public class GreenBeltKeyCrossFlowTimeVO {
@ApiModelProperty("路口编号")
private String crossId;
@ApiModelProperty("时间")
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "HH:mm:ss", timezone = "GMT+8")
private Date startTime;
@ApiModelProperty("干线方向")
private String dirName;
@ApiModelProperty("流量")
private Integer flow;
@ApiModelProperty("绿信比")
private Double greenTimeRatio;
}
...@@ -18,7 +18,9 @@ public class GreenBeltSpeedWidthVO { ...@@ -18,7 +18,9 @@ public class GreenBeltSpeedWidthVO {
@ApiModelProperty("时间") @ApiModelProperty("时间")
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "HH:mm:ss", timezone = "GMT+8") @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "HH:mm:ss", timezone = "GMT+8")
private Date startTime; private Date startTime;
@ApiModelProperty("流量") @ApiModelProperty("干线方向")
private String dirName;
@ApiModelProperty("速度")
private Double speed; private Double speed;
@ApiModelProperty("带宽") @ApiModelProperty("带宽")
private Double width; private Double width;
......
...@@ -15,4 +15,6 @@ public class GreenwaveRunMonitorVO { ...@@ -15,4 +15,6 @@ public class GreenwaveRunMonitorVO {
private Integer avgSpeed; private Integer avgSpeed;
@ApiModelProperty(value = "拥堵指数") @ApiModelProperty(value = "拥堵指数")
private Double congestionIndex; private Double congestionIndex;
@ApiModelProperty(value = "行程时间")
private Integer travelTime;
} }
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