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
ffc12cc6
Commit
ffc12cc6
authored
Feb 09, 2023
by
duanruiming
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[udpate] feign调用增加代理服务
parent
f99357b9
Changes
3
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
238 additions
and
73 deletions
+238
-73
SignalCommandController.java
...ava/net/wanji/web/controller/SignalCommandController.java
+11
-73
FeignProxyService.java
...rc/main/java/net/wanji/web/service/FeignProxyService.java
+86
-0
FeignProxyServiceImpl.java
...ava/net/wanji/web/service/impl/FeignProxyServiceImpl.java
+141
-0
No files found.
signal-control-service/src/main/java/net/wanji/web/controller/SignalCommandController.java
View file @
ffc12cc6
...
...
@@ -4,14 +4,12 @@ import io.swagger.annotations.Api;
import
io.swagger.annotations.ApiOperation
;
import
net.wanji.feign.pojo.result.JsonViewObject
;
import
net.wanji.feign.pojo.vo.*
;
import
net.wanji.feign.service.UtcFeignClients
;
import
net.wanji.web.mapper.ControlHistMapper
;
import
net.wanji.web.service.FeignProxyService
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.*
;
import
javax.servlet.http.HttpServletRequest
;
import
java.util.Objects
;
/**
* @author duanruiming
...
...
@@ -24,121 +22,61 @@ import java.util.Objects;
public
class
SignalCommandController
{
@Autowired
private
UtcFeignClients
utcFeignClients
;
@Autowired
private
ControlHistMapper
controlHistMapper
;
private
FeignProxyService
feignProxyService
;
@ApiOperation
(
value
=
"信号机方案下发-基础方案下发"
,
notes
=
"信号机方案下发-基础方案下发"
)
@PostMapping
(
"/schemeSend"
)
public
JsonViewObject
schemeSend
(
@RequestBody
@Validated
SchemeSendVO
schemeSendVO
)
{
JsonViewObject
jsonViewObject
=
utcFeignClients
.
schemeSend
(
schemeSendVO
);
if
(
Objects
.
isNull
(
jsonViewObject
)
||
jsonViewObject
.
getCode
()
!=
200
)
{
return
jsonViewObject
.
fail
(
"信号机方案下发-基础方案下发UTC服务调用异常"
);
}
return
jsonViewObject
.
success
();
return
feignProxyService
.
schemeSend
(
schemeSendVO
);
}
@ApiOperation
(
value
=
"计划下发-计划信息、时段信息"
,
notes
=
"计划下发-计划信息、时段信息"
)
@PostMapping
(
"/planSend"
)
public
JsonViewObject
planSend
(
@RequestBody
@Validated
PlanSendVO
planSendVO
)
{
JsonViewObject
jsonViewObject
=
utcFeignClients
.
planSend
(
planSendVO
);
if
(
Objects
.
isNull
(
jsonViewObject
)
||
jsonViewObject
.
getCode
()
!=
200
)
{
return
jsonViewObject
.
fail
(
"计划下发-计划信息、时段信息UTC服务调用异常"
);
}
return
jsonViewObject
;
return
feignProxyService
.
planSend
(
planSendVO
);
}
@ApiOperation
(
value
=
"时间表下发-时间表信息"
,
notes
=
"时间表下发-时间表信息"
)
@PostMapping
(
"/scheduleSend"
)
public
JsonViewObject
scheduleSend
(
@RequestBody
@Validated
ScheduleSendVO
scheduleSendVO
)
{
JsonViewObject
jsonViewObject
=
utcFeignClients
.
scheduleSend
(
scheduleSendVO
);
if
(
Objects
.
isNull
(
jsonViewObject
)
||
jsonViewObject
.
getCode
()
!=
200
)
{
return
jsonViewObject
.
fail
(
"时间表下发-时间表信息UTC服务调用异常"
);
}
return
jsonViewObject
;
return
feignProxyService
.
scheduleSend
(
scheduleSendVO
);
}
@ApiOperation
(
value
=
"相位配时下发-(下发相位参数)"
,
notes
=
"相位配时下发-(下发相位参数)"
)
@PostMapping
(
"/phaseTimingSend"
)
public
JsonViewObject
phaseTimingSend
(
@RequestBody
@Validated
PhaseTimingSendVO
phaseTimingSendVO
)
{
JsonViewObject
jsonViewObject
=
utcFeignClients
.
phaseTimingSend
(
phaseTimingSendVO
);
if
(
Objects
.
isNull
(
jsonViewObject
)
||
jsonViewObject
.
getCode
()
!=
200
)
{
return
jsonViewObject
.
fail
(
"相位配时下发-(下发相位参数)UTC服务调用异常"
);
}
return
jsonViewObject
;
return
feignProxyService
.
phaseTimingSend
(
phaseTimingSendVO
);
}
@ApiOperation
(
value
=
"灯态控制-路口全红/黄闪/关灯控制/恢复"
,
notes
=
"灯态控制-路口全红/黄闪/关灯控制/恢复"
)
@PostMapping
(
"/lampStateControl"
)
public
JsonViewObject
allRedControl
(
@RequestBody
@Validated
ControlCommandVO
commandVO
)
{
Integer
controlType
=
commandVO
.
getControlType
();
if
(
true
)
{
return
JsonViewObject
.
newInstance
().
success
();
}
JsonViewObject
jsonViewObject
=
JsonViewObject
.
newInstance
();
if
(
1
==
controlType
)
{
jsonViewObject
=
utcFeignClients
.
allRedControl
(
commandVO
);
}
if
(
2
==
controlType
)
{
jsonViewObject
=
utcFeignClients
.
yellowLightControl
(
commandVO
);
}
if
(
3
==
controlType
)
{
jsonViewObject
=
utcFeignClients
.
closeLightControl
(
commandVO
);
}
if
(
Objects
.
isNull
(
jsonViewObject
)
||
jsonViewObject
.
getCode
()
!=
200
)
{
return
jsonViewObject
.
fail
(
"灯态控制UTC服务调用异常"
);
}
controlHistMapper
.
insertOne
(
commandVO
.
getCrossCode
(),
controlType
+
1
,
"admin"
);
return
jsonViewObject
;
return
feignProxyService
.
allRedControl
(
commandVO
);
}
@ApiOperation
(
value
=
"步进控制-步进控制/恢复"
,
notes
=
"步进控制-步进控制/恢复"
)
@PostMapping
(
"/stepControl"
)
public
JsonViewObject
stepControl
(
@RequestBody
@Validated
StepControlVO
stepControlVO
)
{
if
(
true
)
{
return
JsonViewObject
.
newInstance
().
success
();
}
JsonViewObject
jsonViewObject
=
utcFeignClients
.
stepControl
(
stepControlVO
.
getCode
(),
stepControlVO
.
getCommand
(),
stepControlVO
.
getStepNum
());
if
(
Objects
.
isNull
(
jsonViewObject
)
||
jsonViewObject
.
getCode
()
!=
200
)
{
return
jsonViewObject
.
fail
(
"步进控制-步进控制/恢复UTC服务调用异常"
);
}
controlHistMapper
.
insertOne
(
stepControlVO
.
getCode
(),
7
,
"admin"
);
return
jsonViewObject
;
return
feignProxyService
.
stepControl
(
stepControlVO
);
}
@ApiOperation
(
value
=
"恢复时间表-恢复路口时间表执行"
,
notes
=
"恢复时间表-恢复路口时间表执行"
)
@PostMapping
(
"/recoverSchedule"
)
public
JsonViewObject
recoverSchedule
(
@RequestParam
String
code
)
throws
Exception
{
JsonViewObject
jsonViewObject
=
JsonViewObject
.
newInstance
();
jsonViewObject
=
utcFeignClients
.
recoverSchedule
(
code
);
if
(
Objects
.
isNull
(
jsonViewObject
)
||
jsonViewObject
.
getCode
()
!=
200
)
{
return
jsonViewObject
.
fail
(
"恢复时间表-恢复路口时间表执行UTC服务调用异常"
);
}
controlHistMapper
.
insertOne
(
code
,
1
,
"admin"
);
return
jsonViewObject
;
return
feignProxyService
.
recoverSchedule
(
code
);
}
@ApiOperation
(
value
=
"锁定控制-相位锁定/解锁"
,
notes
=
"锁定控制-相位锁定/解锁"
)
@PostMapping
(
value
=
"/lockControl"
)
public
JsonViewObject
lockControl
(
@RequestBody
@Validated
LockControlVO
lockControlVO
)
{
JsonViewObject
jsonViewObject
=
utcFeignClients
.
lockControl
(
lockControlVO
);
if
(
Objects
.
isNull
(
jsonViewObject
)
||
jsonViewObject
.
getCode
()
!=
200
)
{
return
jsonViewObject
.
fail
(
"锁定控制-相位锁定/解锁UTC服务调用异常"
);
}
controlHistMapper
.
insertOne
(
lockControlVO
.
getCrossCode
(),
4
,
"admin"
);
return
jsonViewObject
;
return
feignProxyService
.
lockControl
(
lockControlVO
);
}
@ApiOperation
(
value
=
"相位差下发"
,
notes
=
"相位差下发"
)
@PostMapping
(
"/phaseDiffSend"
)
public
JsonViewObject
phaseDiffSend
(
HttpServletRequest
httpServletRequest
)
{
JsonViewObject
jsonViewObject
=
utcFeignClients
.
phaseDiffSend
();
if
(
Objects
.
isNull
(
jsonViewObject
)
||
jsonViewObject
.
getCode
()
!=
200
)
{
return
jsonViewObject
.
fail
(
"相位差下发UTC服务调用异常"
);
}
return
jsonViewObject
;
return
feignProxyService
.
phaseDiffSend
(
httpServletRequest
);
}
}
signal-control-service/src/main/java/net/wanji/web/service/FeignProxyService.java
0 → 100644
View file @
ffc12cc6
package
net
.
wanji
.
web
.
service
;
import
net.wanji.feign.pojo.result.JsonViewObject
;
import
net.wanji.feign.pojo.vo.*
;
import
javax.servlet.http.HttpServletRequest
;
/**
* @author duanruiming
* @date 2023/02/09 10:39
*/
public
interface
FeignProxyService
{
/**
* 信号机方案下发-基础方案下发
*
* @param schemeSendVO
* @return
*/
JsonViewObject
schemeSend
(
SchemeSendVO
schemeSendVO
);
/**
* 计划下发-计划信息、时段信息下发
*
* @param planSendVO
* @return
*/
JsonViewObject
planSend
(
PlanSendVO
planSendVO
);
/**
* 时间表下发-时间表信息下发
*
* @param scheduleSendVO
* @return
*/
JsonViewObject
scheduleSend
(
ScheduleSendVO
scheduleSendVO
);
/**
* 相位配时下发-相位参数下发
*
* @param phaseTimingSendVO
* @return
*/
JsonViewObject
phaseTimingSend
(
PhaseTimingSendVO
phaseTimingSendVO
);
/**
* 灯态控制-路口全红/黄闪/关灯控制/恢复下发
*
* @param commandVO
* @return
*/
JsonViewObject
allRedControl
(
ControlCommandVO
commandVO
);
/**
* 步进控制-步进控制/恢复下发
*
* @param stepControlVO
* @return
*/
JsonViewObject
stepControl
(
StepControlVO
stepControlVO
);
/**
* 恢复时间表-恢复路口时间表下发
*
* @param code
* @return
* @throws Exception
*/
JsonViewObject
recoverSchedule
(
String
code
)
throws
Exception
;
/**
* 锁定控制-相位锁定/解锁下发
*
* @param lockControlVO
* @return
*/
JsonViewObject
lockControl
(
LockControlVO
lockControlVO
);
/**
* 相位差下发
*
* @param httpServletRequest
* @return
*/
JsonViewObject
phaseDiffSend
(
HttpServletRequest
httpServletRequest
);
}
signal-control-service/src/main/java/net/wanji/web/service/impl/FeignProxyServiceImpl.java
0 → 100644
View file @
ffc12cc6
package
net
.
wanji
.
web
.
service
.
impl
;
import
lombok.extern.slf4j.Slf4j
;
import
net.wanji.feign.pojo.result.JsonViewObject
;
import
net.wanji.feign.pojo.vo.*
;
import
net.wanji.feign.service.UtcFeignClients
;
import
net.wanji.web.mapper.ControlHistMapper
;
import
net.wanji.web.service.FeignProxyService
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
javax.servlet.http.HttpServletRequest
;
import
java.util.Objects
;
/**
* @author duanruiming
* @date 2023/02/09 10:44
*/
@Service
@Slf4j
@SuppressWarnings
(
"all"
)
public
class
FeignProxyServiceImpl
implements
FeignProxyService
{
@Autowired
private
UtcFeignClients
utcFeignClients
;
@Autowired
private
ControlHistMapper
controlHistMapper
;
@Override
public
JsonViewObject
schemeSend
(
SchemeSendVO
schemeSendVO
)
{
JsonViewObject
jsonViewObject
=
utcFeignClients
.
schemeSend
(
schemeSendVO
);
if
(
Objects
.
isNull
(
jsonViewObject
)
||
jsonViewObject
.
getCode
()
!=
200
)
{
return
jsonViewObject
.
fail
(
"信号机方案下发-基础方案下发UTC服务调用异常"
);
}
return
jsonViewObject
.
success
(
"信号机方案下发成功"
);
}
@Override
public
JsonViewObject
planSend
(
PlanSendVO
planSendVO
)
{
JsonViewObject
jsonViewObject
=
utcFeignClients
.
planSend
(
planSendVO
);
if
(
Objects
.
isNull
(
jsonViewObject
)
||
jsonViewObject
.
getCode
()
!=
200
)
{
return
jsonViewObject
.
fail
(
"计划下发-计划信息、时段信息UTC服务调用异常"
);
}
return
jsonViewObject
.
success
(
"计划下发-计划信息、时段信息下发成功"
);
}
@Override
public
JsonViewObject
scheduleSend
(
ScheduleSendVO
scheduleSendVO
)
{
JsonViewObject
jsonViewObject
=
utcFeignClients
.
scheduleSend
(
scheduleSendVO
);
if
(
Objects
.
isNull
(
jsonViewObject
)
||
jsonViewObject
.
getCode
()
!=
200
)
{
return
jsonViewObject
.
fail
(
"时间表下发-时间表信息UTC服务调用异常"
);
}
return
jsonViewObject
.
success
(
"时间表下发-时间表信息下发成功"
);
}
@Override
public
JsonViewObject
phaseTimingSend
(
PhaseTimingSendVO
phaseTimingSendVO
)
{
JsonViewObject
jsonViewObject
=
utcFeignClients
.
phaseTimingSend
(
phaseTimingSendVO
);
if
(
Objects
.
isNull
(
jsonViewObject
)
||
jsonViewObject
.
getCode
()
!=
200
)
{
return
jsonViewObject
.
fail
(
"相位配时下发-(下发相位参数)UTC服务调用异常"
);
}
return
jsonViewObject
.
success
(
"相位配时下发-相位参数下发成功"
);
}
@Override
public
JsonViewObject
allRedControl
(
ControlCommandVO
commandVO
)
{
Integer
controlType
=
commandVO
.
getControlType
();
if
(
true
)
{
return
JsonViewObject
.
newInstance
().
success
();
}
JsonViewObject
jsonViewObject
=
JsonViewObject
.
newInstance
();
if
(
1
==
controlType
)
{
jsonViewObject
=
utcFeignClients
.
allRedControl
(
commandVO
);
}
if
(
2
==
controlType
)
{
jsonViewObject
=
utcFeignClients
.
yellowLightControl
(
commandVO
);
}
if
(
3
==
controlType
)
{
jsonViewObject
=
utcFeignClients
.
closeLightControl
(
commandVO
);
}
if
(
Objects
.
isNull
(
jsonViewObject
)
||
jsonViewObject
.
getCode
()
!=
200
)
{
return
jsonViewObject
.
fail
(
"灯态控制UTC服务调用异常"
);
}
insertControlHist
(
commandVO
.
getCrossCode
(),
controlType
+
1
,
"admin"
);
return
jsonViewObject
.
success
(
"特殊灯态控制下发成功"
);
}
@Override
public
JsonViewObject
stepControl
(
StepControlVO
stepControlVO
)
{
if
(
true
)
{
return
JsonViewObject
.
newInstance
().
success
();
}
JsonViewObject
jsonViewObject
=
utcFeignClients
.
stepControl
(
stepControlVO
.
getCode
(),
stepControlVO
.
getCommand
(),
stepControlVO
.
getStepNum
());
if
(
Objects
.
isNull
(
jsonViewObject
)
||
jsonViewObject
.
getCode
()
!=
200
)
{
return
jsonViewObject
.
fail
(
"步进控制-步进控制/恢复UTC服务调用异常"
);
}
insertControlHist
(
stepControlVO
.
getCode
(),
7
,
"admin"
);
return
jsonViewObject
.
success
(
"步进控制下发成功"
);
}
@Override
public
JsonViewObject
recoverSchedule
(
String
code
)
throws
Exception
{
JsonViewObject
jsonViewObject
=
JsonViewObject
.
newInstance
();
jsonViewObject
=
utcFeignClients
.
recoverSchedule
(
code
);
if
(
Objects
.
isNull
(
jsonViewObject
)
||
jsonViewObject
.
getCode
()
!=
200
)
{
return
jsonViewObject
.
fail
(
"恢复时间表-恢复路口时间表执行UTC服务调用异常"
);
}
insertControlHist
(
code
,
1
,
"admin"
);
return
jsonViewObject
.
success
(
"恢复时间表-恢复路口时间表下发成功"
);
}
@Override
public
JsonViewObject
lockControl
(
LockControlVO
lockControlVO
)
{
JsonViewObject
jsonViewObject
=
utcFeignClients
.
lockControl
(
lockControlVO
);
if
(
Objects
.
isNull
(
jsonViewObject
)
||
jsonViewObject
.
getCode
()
!=
200
)
{
return
jsonViewObject
.
fail
(
"锁定控制-相位锁定/解锁UTC服务调用异常"
);
}
insertControlHist
(
lockControlVO
.
getCrossCode
(),
4
,
"admin"
);
return
jsonViewObject
.
success
(
"锁定控制-相位锁定/解锁下发成功"
);
}
@Override
public
JsonViewObject
phaseDiffSend
(
HttpServletRequest
httpServletRequest
)
{
JsonViewObject
jsonViewObject
=
utcFeignClients
.
phaseDiffSend
();
if
(
Objects
.
isNull
(
jsonViewObject
)
||
jsonViewObject
.
getCode
()
!=
200
)
{
return
jsonViewObject
.
fail
(
"相位差下发UTC服务调用异常"
);
}
return
jsonViewObject
.
success
(
"相位差下发成功"
);
}
/**
* 特殊控制插入本地控制历史表
*
* @param crossCode
* @param type
* @param userName
*/
private
void
insertControlHist
(
String
crossCode
,
Integer
type
,
String
userName
)
{
controlHistMapper
.
insertOne
(
crossCode
,
type
,
userName
);
}
}
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