Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
T
traffic-signal-platform
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
signal
traffic-signal-platform
Commits
c7ca62a5
Commit
c7ca62a5
authored
Feb 02, 2023
by
hanbing
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
方案管理-方案下发-中心控制
parent
657b691f
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
121 additions
and
10 deletions
+121
-10
PlanSendController.java
...ain/java/net/wanji/web/controller/PlanSendController.java
+25
-3
CrossIdAndPhaseIdDTO.java
...src/main/java/net/wanji/web/dto/CrossIdAndPhaseIdDTO.java
+1
-1
SchemeSendService.java
...rc/main/java/net/wanji/web/service/SchemeSendService.java
+8
-2
SchemeSendServiceImpl.java
...ava/net/wanji/web/service/impl/SchemeSendServiceImpl.java
+87
-4
No files found.
signal-control-service/src/main/java/net/wanji/web/controller/PlanSendController.java
View file @
c7ca62a5
...
@@ -4,7 +4,7 @@ import io.swagger.annotations.Api;
...
@@ -4,7 +4,7 @@ import io.swagger.annotations.Api;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiOperation
;
import
net.wanji.feign.pojo.result.JsonViewObject
;
import
net.wanji.feign.pojo.result.JsonViewObject
;
import
net.wanji.web.dto.CrossIdDTO
;
import
net.wanji.web.dto.CrossIdDTO
;
import
net.wanji.web.dto.
LockPhase
DTO
;
import
net.wanji.web.dto.
CrossIdAndPhaseId
DTO
;
import
net.wanji.web.dto.ScheduleIdDTO
;
import
net.wanji.web.dto.ScheduleIdDTO
;
import
net.wanji.web.dto.SchemeIdDTO
;
import
net.wanji.web.dto.SchemeIdDTO
;
import
net.wanji.web.service.impl.SchemeSendServiceImpl
;
import
net.wanji.web.service.impl.SchemeSendServiceImpl
;
...
@@ -51,8 +51,30 @@ public class PlanSendController {
...
@@ -51,8 +51,30 @@ public class PlanSendController {
@ApiOperation
(
value
=
"模式切换-中心控制-相位锁定"
,
notes
=
"模式切换-中心控制-相位锁定"
)
@ApiOperation
(
value
=
"模式切换-中心控制-相位锁定"
,
notes
=
"模式切换-中心控制-相位锁定"
)
@PostMapping
(
"/lockPhase"
)
@PostMapping
(
"/lockPhase"
)
public
JsonViewObject
lockPhase
(
@RequestBody
LockPhaseDTO
lockPhase
DTO
)
{
public
JsonViewObject
lockPhase
(
@RequestBody
CrossIdAndPhaseIdDTO
crossIdAndPhaseId
DTO
)
{
JsonViewObject
jsonViewObject
=
schemeSendService
.
lockPhase
(
lockPhase
DTO
);
JsonViewObject
jsonViewObject
=
schemeSendService
.
lockPhase
(
crossIdAndPhaseId
DTO
);
return
jsonViewObject
;
return
jsonViewObject
;
}
}
@ApiOperation
(
value
=
"模式切换-中心控制-全红控制"
,
notes
=
"模式切换-中心控制-全红控制"
)
@PostMapping
(
"/allRedControl"
)
public
JsonViewObject
allRedControl
(
@RequestBody
CrossIdDTO
crossIdDTO
)
{
JsonViewObject
jsonViewObject
=
schemeSendService
.
allRedControl
(
crossIdDTO
);
return
jsonViewObject
;
}
@ApiOperation
(
value
=
"模式切换-中心控制-黄闪控制"
,
notes
=
"模式切换-中心控制-黄闪控制"
)
@PostMapping
(
"/yellowLightControl"
)
public
JsonViewObject
yellowLightControl
(
@RequestBody
CrossIdDTO
crossIdDTO
)
{
JsonViewObject
jsonViewObject
=
schemeSendService
.
yellowLightControl
(
crossIdDTO
);
return
jsonViewObject
;
}
@ApiOperation
(
value
=
"模式切换-中心控制-恢复"
,
notes
=
"模式切换-中心控制-恢复"
)
@PostMapping
(
"/restore"
)
public
JsonViewObject
restore
(
@RequestBody
CrossIdAndPhaseIdDTO
crossIdAndPhaseIdDTO
)
{
JsonViewObject
jsonViewObject
=
schemeSendService
.
restore
(
crossIdAndPhaseIdDTO
);
return
jsonViewObject
;
}
}
}
signal-control-service/src/main/java/net/wanji/web/dto/
LockPhase
DTO.java
→
signal-control-service/src/main/java/net/wanji/web/dto/
CrossIdAndPhaseId
DTO.java
View file @
c7ca62a5
...
@@ -10,7 +10,7 @@ import lombok.Data;
...
@@ -10,7 +10,7 @@ import lombok.Data;
* @date 2022/12/20 10:17
* @date 2022/12/20 10:17
*/
*/
@Data
@Data
public
class
LockPhase
DTO
{
public
class
CrossIdAndPhaseId
DTO
{
@ApiModelProperty
(
value
=
"路口ID,如:c7e7b1f352dd4acab4a60088eb391cca"
,
required
=
true
)
@ApiModelProperty
(
value
=
"路口ID,如:c7e7b1f352dd4acab4a60088eb391cca"
,
required
=
true
)
private
String
crossId
;
private
String
crossId
;
@ApiModelProperty
(
value
=
"相位ID"
,
required
=
true
)
@ApiModelProperty
(
value
=
"相位ID"
,
required
=
true
)
...
...
signal-control-service/src/main/java/net/wanji/web/service/SchemeSendService.java
View file @
c7ca62a5
...
@@ -2,7 +2,7 @@ package net.wanji.web.service;
...
@@ -2,7 +2,7 @@ package net.wanji.web.service;
import
net.wanji.feign.pojo.result.JsonViewObject
;
import
net.wanji.feign.pojo.result.JsonViewObject
;
import
net.wanji.web.dto.CrossIdDTO
;
import
net.wanji.web.dto.CrossIdDTO
;
import
net.wanji.web.dto.
LockPhase
DTO
;
import
net.wanji.web.dto.
CrossIdAndPhaseId
DTO
;
import
net.wanji.web.dto.ScheduleIdDTO
;
import
net.wanji.web.dto.ScheduleIdDTO
;
import
net.wanji.web.dto.SchemeIdDTO
;
import
net.wanji.web.dto.SchemeIdDTO
;
...
@@ -17,5 +17,11 @@ public interface SchemeSendService {
...
@@ -17,5 +17,11 @@ public interface SchemeSendService {
JsonViewObject
nextStep
(
CrossIdDTO
crossIdDTO
);
JsonViewObject
nextStep
(
CrossIdDTO
crossIdDTO
);
JsonViewObject
lockPhase
(
LockPhaseDTO
lockPhaseDTO
);
JsonViewObject
lockPhase
(
CrossIdAndPhaseIdDTO
crossIdAndPhaseIdDTO
);
JsonViewObject
allRedControl
(
CrossIdDTO
crossIdDTO
);
JsonViewObject
yellowLightControl
(
CrossIdDTO
crossIdDTO
);
JsonViewObject
restore
(
CrossIdAndPhaseIdDTO
crossIdAndPhaseIdDTO
);
}
}
signal-control-service/src/main/java/net/wanji/web/service/impl/SchemeSendServiceImpl.java
View file @
c7ca62a5
package
net
.
wanji
.
web
.
service
.
impl
;
package
net
.
wanji
.
web
.
service
.
impl
;
import
net.wanji.feign.pojo.result.JsonViewObject
;
import
net.wanji.feign.pojo.result.JsonViewObject
;
import
net.wanji.feign.pojo.vo.ControlCommandVO
;
import
net.wanji.feign.pojo.vo.LockControlVO
;
import
net.wanji.feign.pojo.vo.LockControlVO
;
import
net.wanji.feign.pojo.vo.ScheduleSendVO
;
import
net.wanji.feign.pojo.vo.ScheduleSendVO
;
import
net.wanji.feign.pojo.vo.SchemeSendVO
;
import
net.wanji.feign.pojo.vo.SchemeSendVO
;
import
net.wanji.feign.service.UtcFeignClients
;
import
net.wanji.feign.service.UtcFeignClients
;
import
net.wanji.web.dto.CrossIdAndPhaseIdDTO
;
import
net.wanji.web.dto.CrossIdDTO
;
import
net.wanji.web.dto.CrossIdDTO
;
import
net.wanji.web.dto.LockPhaseDTO
;
import
net.wanji.web.dto.ScheduleIdDTO
;
import
net.wanji.web.dto.ScheduleIdDTO
;
import
net.wanji.web.dto.SchemeIdDTO
;
import
net.wanji.web.dto.SchemeIdDTO
;
import
net.wanji.web.mapper.scheme.CrossPhaseMapper
;
import
net.wanji.web.mapper.scheme.CrossPhaseMapper
;
...
@@ -18,6 +19,7 @@ import net.wanji.web.po.scheme.CrossPlanPO;
...
@@ -18,6 +19,7 @@ import net.wanji.web.po.scheme.CrossPlanPO;
import
net.wanji.web.po.scheme.CrossSchedulesPlanPO
;
import
net.wanji.web.po.scheme.CrossSchedulesPlanPO
;
import
net.wanji.web.po.scheme.CrossSchemePO
;
import
net.wanji.web.po.scheme.CrossSchemePO
;
import
net.wanji.web.service.SchemeSendService
;
import
net.wanji.web.service.SchemeSendService
;
import
org.jetbrains.annotations.NotNull
;
import
org.springframework.beans.factory.annotation.Qualifier
;
import
org.springframework.beans.factory.annotation.Qualifier
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
...
@@ -96,13 +98,13 @@ public class SchemeSendServiceImpl implements SchemeSendService {
...
@@ -96,13 +98,13 @@ public class SchemeSendServiceImpl implements SchemeSendService {
}
}
@Override
@Override
public
JsonViewObject
lockPhase
(
LockPhaseDTO
lockPhase
DTO
)
{
public
JsonViewObject
lockPhase
(
CrossIdAndPhaseIdDTO
crossIdAndPhaseId
DTO
)
{
LockControlVO
lockControlVO
=
new
LockControlVO
();
LockControlVO
lockControlVO
=
new
LockControlVO
();
lockControlVO
.
setCrossCode
(
lockPhase
DTO
.
getCrossId
());
lockControlVO
.
setCrossCode
(
crossIdAndPhaseId
DTO
.
getCrossId
());
lockControlVO
.
setCommand
(
1
);
// 控制标识:1是;0否
lockControlVO
.
setCommand
(
1
);
// 控制标识:1是;0否
lockControlVO
.
setDuration
(
0
);
// 长期
lockControlVO
.
setDuration
(
0
);
// 长期
Integer
phaseId
=
lockPhase
DTO
.
getPhaseId
();
Integer
phaseId
=
crossIdAndPhaseId
DTO
.
getPhaseId
();
CrossPhasePO
crossPhasePO
=
crossPhaseMapper
.
selectById
(
phaseId
);
CrossPhasePO
crossPhasePO
=
crossPhaseMapper
.
selectById
(
phaseId
);
String
phaseNo
=
crossPhasePO
.
getPhaseNo
();
String
phaseNo
=
crossPhasePO
.
getPhaseNo
();
...
@@ -117,6 +119,87 @@ public class SchemeSendServiceImpl implements SchemeSendService {
...
@@ -117,6 +119,87 @@ public class SchemeSendServiceImpl implements SchemeSendService {
return
jsonViewObject
.
success
();
return
jsonViewObject
.
success
();
}
}
@Override
public
JsonViewObject
allRedControl
(
CrossIdDTO
crossIdDTO
)
{
ControlCommandVO
commandVO
=
getControlCommandVO
(
crossIdDTO
);
commandVO
.
setControlType
(
1
);
//1全红 2黄闪 3关灯
JsonViewObject
jsonViewObject
=
utcFeignClients
.
allRedControl
(
commandVO
);
if
(
Objects
.
isNull
(
jsonViewObject
)
||
jsonViewObject
.
getCode
()
!=
200
)
{
return
jsonViewObject
.
fail
(
"信号机方案下发-全红控制UTC服务调用异常"
);
}
return
jsonViewObject
.
success
();
}
@Override
public
JsonViewObject
yellowLightControl
(
CrossIdDTO
crossIdDTO
)
{
ControlCommandVO
commandVO
=
getControlCommandVO
(
crossIdDTO
);
commandVO
.
setControlType
(
2
);
//1全红 2黄闪 3关灯
JsonViewObject
jsonViewObject
=
utcFeignClients
.
yellowLightControl
(
commandVO
);
if
(
Objects
.
isNull
(
jsonViewObject
)
||
jsonViewObject
.
getCode
()
!=
200
)
{
return
jsonViewObject
.
fail
(
"信号机方案下发-黄闪控制UTC服务调用异常"
);
}
return
jsonViewObject
.
success
();
}
@Override
public
JsonViewObject
restore
(
CrossIdAndPhaseIdDTO
crossIdAndPhaseIdDTO
)
{
String
crossId
=
crossIdAndPhaseIdDTO
.
getCrossId
();
Integer
phaseId
=
crossIdAndPhaseIdDTO
.
getPhaseId
();
JsonViewObject
jsonViewObject
=
JsonViewObject
.
newInstance
();
// 取消步进
// command 1开始步进,stepNum 0顺序步进
jsonViewObject
=
utcFeignClients
.
stepControl
(
crossId
,
0
,
0
);
if
(
Objects
.
isNull
(
jsonViewObject
)
||
jsonViewObject
.
getCode
()
!=
200
)
{
return
jsonViewObject
.
fail
(
"信号机方案下发-步进控制UTC服务调用异常"
);
}
// 取消相位锁定
LockControlVO
lockControlVO
=
new
LockControlVO
();
lockControlVO
.
setCrossCode
(
crossIdAndPhaseIdDTO
.
getCrossId
());
lockControlVO
.
setCommand
(
0
);
// 控制标识:1是;0否
lockControlVO
.
setDuration
(
0
);
// 长期
CrossPhasePO
crossPhasePO
=
crossPhaseMapper
.
selectById
(
phaseId
);
String
phaseNo
=
crossPhasePO
.
getPhaseNo
();
List
<
Integer
>
phaseList
=
new
ArrayList
<>();
phaseList
.
add
(
Integer
.
parseInt
(
phaseNo
));
lockControlVO
.
setPhaseList
(
phaseList
);
jsonViewObject
=
utcFeignClients
.
lockControl
(
lockControlVO
);
if
(
Objects
.
isNull
(
jsonViewObject
)
||
jsonViewObject
.
getCode
()
!=
200
)
{
return
jsonViewObject
.
fail
(
"信号机方案下发-锁定控制UTC服务调用异常"
);
}
// 取消全红控制
CrossIdDTO
crossIdDTO
=
new
CrossIdDTO
();
crossIdDTO
.
setCrossId
(
crossId
);
ControlCommandVO
commandVO
=
getControlCommandVO
(
crossIdDTO
);
commandVO
.
setCommand
(
0
);
//控制标识:1是;0否
commandVO
.
setControlType
(
1
);
//1全红 2黄闪 3关灯
jsonViewObject
=
utcFeignClients
.
allRedControl
(
commandVO
);
if
(
Objects
.
isNull
(
jsonViewObject
)
||
jsonViewObject
.
getCode
()
!=
200
)
{
return
jsonViewObject
.
fail
(
"信号机方案下发-全红控制UTC服务调用异常"
);
}
// 取消黄闪控制
commandVO
.
setControlType
(
2
);
//1全红 2黄闪 3关灯
jsonViewObject
=
utcFeignClients
.
yellowLightControl
(
commandVO
);
if
(
Objects
.
isNull
(
jsonViewObject
)
||
jsonViewObject
.
getCode
()
!=
200
)
{
return
jsonViewObject
.
fail
(
"信号机方案下发-黄闪控制UTC服务调用异常"
);
}
return
jsonViewObject
.
success
();
}
@NotNull
private
static
ControlCommandVO
getControlCommandVO
(
CrossIdDTO
crossIdDTO
)
{
ControlCommandVO
commandVO
=
new
ControlCommandVO
();
commandVO
.
setCrossCode
(
crossIdDTO
.
getCrossId
());
commandVO
.
setCommand
(
1
);
//控制标识:1是;0否
commandVO
.
setDuration
(
0
);
//长期
return
commandVO
;
}
private
List
<
SchemeSendVO
.
Pattern
>
buildPatternList
(
String
crossId
,
Integer
schemeId
)
{
private
List
<
SchemeSendVO
.
Pattern
>
buildPatternList
(
String
crossId
,
Integer
schemeId
)
{
List
<
SchemeSendVO
.
Pattern
>
patternList
=
new
ArrayList
<>();
List
<
SchemeSendVO
.
Pattern
>
patternList
=
new
ArrayList
<>();
CrossSchemePO
crossSchemePO
=
crossSchemeMapper
.
selectById
(
schemeId
);
CrossSchemePO
crossSchemePO
=
crossSchemeMapper
.
selectById
(
schemeId
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment