Commit 990eca4b authored by zhouleilei's avatar zhouleilei

新增接口-灯态接口查询,新增黃闪逻辑处理

parent a7a59362
......@@ -12,6 +12,7 @@ import net.wanji.web.dto.*;
import net.wanji.web.po.RingPhasePO;
import net.wanji.web.service.impl.PlanSendServiceImpl;
import net.wanji.web.vo.PhaseListByTimeVO;
import net.wanji.web.vo.PhaseListVO;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
......@@ -134,6 +135,21 @@ public class PlanSendController {
}
@AspectLog(description = "根据当前时间返回相位列表(单环)-新增黃闪模式", operationType = BaseEnum.OperationTypeEnum.UPDATE)
@ApiOperation(value = "根据当前时间返回相位列表(单环)-新增黃闪模式", notes = "根据当前时间返回相位列表(单环)-新增黃闪模式")
@PostMapping("/phaseListByTimeSingleRingControlMode")
@ApiResponses({
@ApiResponse(code = 200, message = "OK", response = SaveSchemeConfigDTO.PhaseListElement.class),
})
public JsonViewObject phaseListByTimeSingleRingControlMode(@RequestBody CrossIdAndTimeDTO crossIdAndTimeDTO) {
PhaseListVO phaseListVO
= planSendService.phaseListByTimeSingleRingControlMode(crossIdAndTimeDTO);
JsonViewObject jsonViewObject = JsonViewObject.newInstance();
return jsonViewObject.success(phaseListVO);
}
@AspectLog(description = "根据当前时间返回相位列表-方案优化对比", operationType = BaseEnum.OperationTypeEnum.UPDATE)
@ApiOperation(value = "根据当前时间返回相位列表-方案优化对比)", notes = "根据当前时间返回相位列表-方案优化对比")
@PostMapping("/phaseListByTimeSingleRingNew")
......
......@@ -5,6 +5,7 @@ import net.wanji.databus.bo.CrossIdBO;
import net.wanji.web.dto.*;
import net.wanji.web.po.RingPhasePO;
import net.wanji.web.vo.PhaseListByTimeVO;
import net.wanji.web.vo.PhaseListVO;
import java.util.List;
......@@ -35,6 +36,7 @@ public interface PlanSendService {
RingPhasePO phaseListByTimeSingleRingNew(CrossIdAndTimeDTO crossIdAndTimeDTO);
RingPhasePO phaseListByTimeRingNew(CrossIdAndTimeDTO crossIdAndTimeDTO);
List<SaveSchemeConfigDTO.PhaseListElement> phaseListByTimeSingleRing(CrossIdAndTimeDTO crossIdAndTimeDTO);
PhaseListVO phaseListByTimeSingleRingControlMode(CrossIdAndTimeDTO crossIdAndTimeDTO);
/**
* 下发数据到utc数据库
......
......@@ -27,6 +27,7 @@ import net.wanji.web.service.PlanSendService;
import net.wanji.web.service.scheme.impl.RunningPlanServiceImpl;
import net.wanji.web.service.scheme.impl.SchemeConfigServiceImpl;
import net.wanji.web.vo.PhaseListByTimeVO;
import net.wanji.web.vo.PhaseListVO;
import org.apache.commons.lang3.ObjectUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Qualifier;
......@@ -1013,6 +1014,35 @@ public class PlanSendServiceImpl implements PlanSendService {
return phaseListByTime;
}
@Override
public PhaseListVO phaseListByTimeSingleRingControlMode(CrossIdAndTimeDTO crossIdAndTimeDTO) {
PhaseListVO phaseListVO = new PhaseListVO();
phaseListVO.setCrossId(crossIdAndTimeDTO.getCrossId());
List<SaveSchemeConfigDTO.PhaseListElement> phaseListByTime = new ArrayList<>();
PhaseListByTimeVO phaseListByTimeVO = phaseListByTime(crossIdAndTimeDTO);
SaveSchemeConfigDTO.PhaseScheme phaseScheme = phaseListByTimeVO.getPhaseScheme();
if (phaseScheme != null) {
String schemeNo = phaseScheme.getSchemeNo();
if (Objects.equals(schemeNo, "85")){
phaseListVO.setControlMode(3);
return phaseListVO;
}else {
phaseListVO.setControlMode(1);
}
List<SaveSchemeConfigDTO.RingListElement> ringList = phaseScheme.getRingList();
SaveSchemeConfigDTO.RingListElement ringListElement = ringList.get(0);
List<SaveSchemeConfigDTO.GroupListElement> groupList = ringListElement.getGroupList();
for (SaveSchemeConfigDTO.GroupListElement groupListElement : groupList) {
List<SaveSchemeConfigDTO.PhaseListElement> phaseList = groupListElement.getPhaseList();
phaseListByTime.addAll(phaseList);
}
}
phaseListVO.setPhaseListByTime(phaseListByTime);
return phaseListVO;
}
private PhaseListByTimeVO getPhaseListByTimeVO(String planName, Date datetime, RunningPlanDTO runningPlanDTO,
CrossIdBO crossIdBO) {
PhaseListByTimeVO phaseListByTimeVO = new PhaseListByTimeVO();
......
package net.wanji.web.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.NoArgsConstructor;
import net.wanji.web.dto.SaveSchemeConfigDTO;
import java.util.List;
@NoArgsConstructor
@Data
@ApiModel(value = "PhaseListVO", description = "根据当前时间返回相位列表(单环)-新增黃闪模式")
public class PhaseListVO {
@ApiModelProperty(value = "路口编号")
private String crossId;
@ApiModelProperty(value = "控制模式:1定周期;2绿波协调;3黄闪;4全红;5关灯;6单点自适应;7全感应;8半感应;9行人过街")
private Integer controlMode;
@ApiModelProperty(value = "相位等信息")
private List<SaveSchemeConfigDTO.PhaseListElement> phaseListByTime;
}
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