Commit 4e129fb5 authored by hanbing's avatar hanbing

方案下发时间表和强制方案回显

parent 4cb0716d
...@@ -54,6 +54,8 @@ public class RunningPlanDTO { ...@@ -54,6 +54,8 @@ public class RunningPlanDTO {
private String scheduleNo; private String scheduleNo;
@ApiModelProperty(value = "运行计划名", required = true) @ApiModelProperty(value = "运行计划名", required = true)
private String name; private String name;
@ApiModelProperty(value = "状态 0执行 1未执行", required = true)
private Integer status;
@ApiModelProperty(value = "执行的日计划列表", required = true) @ApiModelProperty(value = "执行的日计划列表", required = true)
private List<ExecListElement> execList; private List<ExecListElement> execList;
} }
......
...@@ -32,6 +32,8 @@ public class SaveSchemeConfigDTO { ...@@ -32,6 +32,8 @@ public class SaveSchemeConfigDTO {
private Integer cycle = 0; private Integer cycle = 0;
@ApiModelProperty(value = "相位差", required = false) @ApiModelProperty(value = "相位差", required = false)
private Integer offset = 0; private Integer offset = 0;
@ApiModelProperty(value = "状态:1执行;0未执行", required = false)
private Integer status;
private List<RingListElement> ringList; // 环列表 private List<RingListElement> ringList; // 环列表
private List<PhaseListElement> specialControlModeList; // 特殊控制相位列表 private List<PhaseListElement> specialControlModeList; // 特殊控制相位列表
......
...@@ -23,4 +23,8 @@ public interface CrossSchedulesMapper { ...@@ -23,4 +23,8 @@ public interface CrossSchedulesMapper {
CrossSchedulesPO selectByCrossIdAndScheduleNo(@Param("crossId") String crossId, CrossSchedulesPO selectByCrossIdAndScheduleNo(@Param("crossId") String crossId,
@Param("scheduleNo") String scheduleNo); @Param("scheduleNo") String scheduleNo);
void resetStatus(String crossId);
void updateStatus(Integer scheduleId);
} }
...@@ -42,4 +42,8 @@ public interface CrossSchemeMapper { ...@@ -42,4 +42,8 @@ public interface CrossSchemeMapper {
Set<Integer> selectIdsByCrossId(String crossId); Set<Integer> selectIdsByCrossId(String crossId);
void deleteByIds(Set<Integer> existedIds); void deleteByIds(Set<Integer> existedIds);
void resetStatus(String crossId);
void updateStatus(Integer schemeId);
} }
...@@ -38,6 +38,8 @@ public class CrossSchemePO { ...@@ -38,6 +38,8 @@ public class CrossSchemePO {
/** 删除标识:1删除;0未删除 */ /** 删除标识:1删除;0未删除 */
@ApiModelProperty(name = "删除标识:1删除;0未删除",notes = "") @ApiModelProperty(name = "删除标识:1删除;0未删除",notes = "")
private Integer isDeleted ; private Integer isDeleted ;
@ApiModelProperty(name = "状态:1执行;0未执行",notes = "")
private Integer status ;
/** 创建时间 */ /** 创建时间 */
@ApiModelProperty(name = "创建时间",notes = "") @ApiModelProperty(name = "创建时间",notes = "")
private Date gmtCreate ; private Date gmtCreate ;
......
...@@ -23,6 +23,7 @@ import net.wanji.web.mapper.scheme.CrossLightsMapper; ...@@ -23,6 +23,7 @@ import net.wanji.web.mapper.scheme.CrossLightsMapper;
import net.wanji.web.mapper.scheme.CrossPhaseLightsMapper; import net.wanji.web.mapper.scheme.CrossPhaseLightsMapper;
import net.wanji.web.mapper.scheme.CrossPhaseMapper; import net.wanji.web.mapper.scheme.CrossPhaseMapper;
import net.wanji.web.mapper.scheme.CrossPlanMapper; import net.wanji.web.mapper.scheme.CrossPlanMapper;
import net.wanji.web.mapper.scheme.CrossSchedulesMapper;
import net.wanji.web.mapper.scheme.CrossSchedulesPlanMapper; import net.wanji.web.mapper.scheme.CrossSchedulesPlanMapper;
import net.wanji.web.mapper.scheme.CrossSchemeMapper; import net.wanji.web.mapper.scheme.CrossSchemeMapper;
import net.wanji.web.po.scheme.CrossLightsPO; import net.wanji.web.po.scheme.CrossLightsPO;
...@@ -65,13 +66,14 @@ public class PlanSendServiceImpl implements PlanSendService { ...@@ -65,13 +66,14 @@ public class PlanSendServiceImpl implements PlanSendService {
private final CrossPhaseLightsMapper crossPhaseLightsMapper; private final CrossPhaseLightsMapper crossPhaseLightsMapper;
private final RunningPlanServiceImpl runningPlanServiceImpl; private final RunningPlanServiceImpl runningPlanServiceImpl;
private final SchemeConfigServiceImpl schemeConfigServiceImpl; private final SchemeConfigServiceImpl schemeConfigServiceImpl;
private final CrossSchedulesMapper crossSchedulesMapper;
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
SimpleDateFormat hourMinuteSdf = new SimpleDateFormat("HH:mm"); SimpleDateFormat hourMinuteSdf = new SimpleDateFormat("HH:mm");
private Gson gson = new GsonBuilder().setDateFormat("yyyy-MM-dd").create(); private Gson gson = new GsonBuilder().setDateFormat("yyyy-MM-dd").create();
public PlanSendServiceImpl(@Qualifier("net.wanji.feign.service.UtcFeignClients") UtcFeignClients utcFeignClients, CrossSchedulesPlanMapper crossSchedulesPlanMapper, CrossPlanMapper crossPlanMapper, CrossSchemeMapper crossSchemeMapper, CrossPhaseMapper crossPhaseMapper, CrossLightsMapper crossLightsMapper, CrossPhaseLightsMapper crossPhaseLightsMapper, RunningPlanServiceImpl runningPlanServiceImpl, SchemeConfigServiceImpl schemeConfigServiceImpl) { public PlanSendServiceImpl(@Qualifier("net.wanji.feign.service.UtcFeignClients") UtcFeignClients utcFeignClients, CrossSchedulesPlanMapper crossSchedulesPlanMapper, CrossPlanMapper crossPlanMapper, CrossSchemeMapper crossSchemeMapper, CrossPhaseMapper crossPhaseMapper, CrossLightsMapper crossLightsMapper, CrossPhaseLightsMapper crossPhaseLightsMapper, RunningPlanServiceImpl runningPlanServiceImpl, SchemeConfigServiceImpl schemeConfigServiceImpl, CrossSchedulesMapper crossSchedulesMapper) {
this.utcFeignClients = utcFeignClients; this.utcFeignClients = utcFeignClients;
this.crossSchedulesPlanMapper = crossSchedulesPlanMapper; this.crossSchedulesPlanMapper = crossSchedulesPlanMapper;
this.crossPlanMapper = crossPlanMapper; this.crossPlanMapper = crossPlanMapper;
...@@ -81,9 +83,11 @@ public class PlanSendServiceImpl implements PlanSendService { ...@@ -81,9 +83,11 @@ public class PlanSendServiceImpl implements PlanSendService {
this.crossPhaseLightsMapper = crossPhaseLightsMapper; this.crossPhaseLightsMapper = crossPhaseLightsMapper;
this.runningPlanServiceImpl = runningPlanServiceImpl; this.runningPlanServiceImpl = runningPlanServiceImpl;
this.schemeConfigServiceImpl = schemeConfigServiceImpl; this.schemeConfigServiceImpl = schemeConfigServiceImpl;
this.crossSchedulesMapper = crossSchedulesMapper;
} }
@Override @Override
@Transactional
public JsonViewObject scheduleSend(ScheduleIdDTO scheduleIdDTO) { public JsonViewObject scheduleSend(ScheduleIdDTO scheduleIdDTO) {
String crossId = scheduleIdDTO.getCrossId(); String crossId = scheduleIdDTO.getCrossId();
ScheduleSendVO scheduleSendVO = new ScheduleSendVO(); ScheduleSendVO scheduleSendVO = new ScheduleSendVO();
...@@ -96,6 +100,10 @@ public class PlanSendServiceImpl implements PlanSendService { ...@@ -96,6 +100,10 @@ public class PlanSendServiceImpl implements PlanSendService {
if (Objects.isNull(jsonViewObject) || jsonViewObject.getCode() != 200) { if (Objects.isNull(jsonViewObject) || jsonViewObject.getCode() != 200) {
return jsonViewObject.fail("信号机方案下发-时间表下发UTC服务调用异常"); return jsonViewObject.fail("信号机方案下发-时间表下发UTC服务调用异常");
} }
// 更新时间表状态为已执行
Integer scheduleId = scheduleIdDTO.getScheduleId();
crossSchedulesMapper.resetStatus(crossId);
crossSchedulesMapper.updateStatus(scheduleId);
return jsonViewObject.success(); return jsonViewObject.success();
} }
...@@ -113,6 +121,9 @@ public class PlanSendServiceImpl implements PlanSendService { ...@@ -113,6 +121,9 @@ public class PlanSendServiceImpl implements PlanSendService {
if (Objects.isNull(jsonViewObject) || jsonViewObject.getCode() != 200) { if (Objects.isNull(jsonViewObject) || jsonViewObject.getCode() != 200) {
return jsonViewObject.fail("信号机方案下发-基础方案下发UTC服务调用异常"); return jsonViewObject.fail("信号机方案下发-基础方案下发UTC服务调用异常");
} }
// 更新方案表状态为已执行
crossSchemeMapper.resetStatus(crossId);
crossSchemeMapper.updateStatus(schemeId);
return jsonViewObject.success(); return jsonViewObject.success();
} }
......
...@@ -91,6 +91,7 @@ public class RunningPlanServiceImpl implements RunningPlanService { ...@@ -91,6 +91,7 @@ public class RunningPlanServiceImpl implements RunningPlanService {
schedulesPlan.setScheduleNo(scheduleNo); schedulesPlan.setScheduleNo(scheduleNo);
schedulesPlan.setName(name); schedulesPlan.setName(name);
schedulesPlan.setId(crossSchedulesPOId); schedulesPlan.setId(crossSchedulesPOId);
schedulesPlan.setStatus(crossSchedulesPO.getStatus());
// 构造execList // 构造execList
List<RunningPlanDTO.ExecListElement> execList = buildExecList(crossId, scheduleNo); List<RunningPlanDTO.ExecListElement> execList = buildExecList(crossId, scheduleNo);
schedulesPlan.setExecList(execList); schedulesPlan.setExecList(execList);
......
...@@ -149,6 +149,7 @@ public class SchemeConfigServiceImpl implements SchemeConfigService { ...@@ -149,6 +149,7 @@ public class SchemeConfigServiceImpl implements SchemeConfigService {
} }
phaseScheme.setCycle(crossSchemePO.getCycle()); phaseScheme.setCycle(crossSchemePO.getCycle());
phaseScheme.setOffset(crossSchemePO.getOffset()); phaseScheme.setOffset(crossSchemePO.getOffset());
phaseScheme.setStatus(crossSchemePO.getStatus());
// 构造环列表 // 构造环列表
String schemeNo = phaseScheme.getSchemeNo(); String schemeNo = phaseScheme.getSchemeNo();
Integer schemeId = crossSchemeMapper.selectIdByCrossIdAndSchemeNo(crossId, schemeNo); Integer schemeId = crossSchemeMapper.selectIdByCrossIdAndSchemeNo(crossId, schemeNo);
......
...@@ -18,6 +18,18 @@ ...@@ -18,6 +18,18 @@
values (#{scheduleNo},#{name},#{status},#{crossId}) values (#{scheduleNo},#{name},#{status},#{crossId})
</insert> </insert>
<update id="resetStatus">
UPDATE t_base_cross_schedules
SET status = 0
WHERE cross_id = #{crossId}
</update>
<update id="updateStatus">
UPDATE t_base_cross_schedules
SET status = 1
WHERE id = #{scheduleId}
</update>
<delete id="deleteByCrossId"> <delete id="deleteByCrossId">
DELETE FROM t_base_cross_schedules DELETE FROM t_base_cross_schedules
WHERE cross_id = #{crossId} WHERE cross_id = #{crossId}
......
...@@ -13,21 +13,22 @@ ...@@ -13,21 +13,22 @@
<result property="offset" column="offset"/> <result property="offset" column="offset"/>
<result property="source" column="source"/> <result property="source" column="source"/>
<result property="isDeleted" column="is_deleted"/> <result property="isDeleted" column="is_deleted"/>
<result property="status" column="status"/>
<result property="gmtCreate" column="gmt_create"/> <result property="gmtCreate" column="gmt_create"/>
<result property="gmtModified" column="gmt_modified"/> <result property="gmtModified" column="gmt_modified"/>
</resultMap> </resultMap>
<insert id="insertBatch" keyProperty="id" useGeneratedKeys="true"> <insert id="insertBatch" keyProperty="id" useGeneratedKeys="true">
insert into t_base_cross_scheme(scheme_no,name,cross_id,cycle,coord_phase,offset,source,is_deleted) insert into t_base_cross_scheme(scheme_no,name,cross_id,cycle,coord_phase,offset,source,is_deleted,status)
values values
<foreach collection="entities" item="entity" separator=","> <foreach collection="entities" item="entity" separator=",">
(#{entity.schemeNo},#{entity.name},#{entity.crossId},#{entity.cycle},#{entity.coordPhase},#{entity.offset},#{entity.source},#{entity.isDeleted}) (#{entity.schemeNo},#{entity.name},#{entity.crossId},#{entity.cycle},#{entity.coordPhase},#{entity.offset},#{entity.source},#{entity.isDeleted},#{entity.status})
</foreach> </foreach>
</insert> </insert>
<insert id="insertOne"> <insert id="insertOne">
insert into t_base_cross_scheme(scheme_no,name,cross_id,cycle,coord_phase,offset,source,is_deleted) insert into t_base_cross_scheme(scheme_no,name,cross_id,cycle,coord_phase,offset,source,is_deleted,status)
values (#{schemeNo},#{name},#{crossId},#{cycle},#{coordPhase},#{offset},#{source},#{isDeleted}) values (#{schemeNo},#{name},#{crossId},#{cycle},#{coordPhase},#{offset},#{source},#{isDeleted},#{status})
</insert> </insert>
<update id="updateCoordPhase"> <update id="updateCoordPhase">
...@@ -57,10 +58,25 @@ ...@@ -57,10 +58,25 @@
<if test="isDeleted != null and isDeleted != ''"> <if test="isDeleted != null and isDeleted != ''">
is_deleted = #{isDeleted}, is_deleted = #{isDeleted},
</if> </if>
<if test="status != null and isDeleted != ''">
status = #{status},
</if>
</set> </set>
where id = #{id} where id = #{id}
</update> </update>
<update id="resetStatus">
UPDATE t_base_cross_scheme
SET status = 0
WHERE cross_id = #{crossId}
</update>
<update id="updateStatus">
UPDATE t_base_cross_schedules
SET status = 1
WHERE id = #{schemeId}
</update>
<delete id="deleteByCrossId"> <delete id="deleteByCrossId">
delete from t_base_cross_scheme delete from t_base_cross_scheme
where cross_id = #{crossId} where cross_id = #{crossId}
...@@ -73,7 +89,7 @@ ...@@ -73,7 +89,7 @@
<select id="selectByCrossId" resultMap="BaseResultMap"> <select id="selectByCrossId" resultMap="BaseResultMap">
select select
id,scheme_no,name,cross_id,cycle,coord_phase,offset,source,is_deleted,gmt_create,gmt_modified id,scheme_no,name,cross_id,cycle,coord_phase,offset,source,is_deleted,status,gmt_create,gmt_modified
from t_base_cross_scheme from t_base_cross_scheme
where cross_id = #{crossId} where cross_id = #{crossId}
</select> </select>
...@@ -85,14 +101,14 @@ ...@@ -85,14 +101,14 @@
<select id="selectByCrossIdAndSchemeName" resultMap="BaseResultMap"> <select id="selectByCrossIdAndSchemeName" resultMap="BaseResultMap">
select select
id,scheme_no,name,cross_id,cycle,coord_phase,offset,source,is_deleted,gmt_create,gmt_modified id,scheme_no,name,cross_id,cycle,coord_phase,offset,source,is_deleted,status,gmt_create,gmt_modified
from t_base_cross_scheme from t_base_cross_scheme
where cross_id = #{crossId} and name = #{schemeName} where cross_id = #{crossId} and name = #{schemeName}
</select> </select>
<select id="selectById" resultType="net.wanji.web.po.scheme.CrossSchemePO"> <select id="selectById" resultType="net.wanji.web.po.scheme.CrossSchemePO">
select select
id,scheme_no,name,cross_id,cycle,coord_phase,offset,source,is_deleted,gmt_create,gmt_modified id,scheme_no,name,cross_id,cycle,coord_phase,offset,source,is_deleted,status,gmt_create,gmt_modified
from t_base_cross_scheme from t_base_cross_scheme
where id = #{id} where id = #{id}
</select> </select>
......
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