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
eb95cab1
Commit
eb95cab1
authored
Nov 30, 2024
by
zhouleilei
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修改环图信息
parent
8570a381
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
90 additions
and
1 deletion
+90
-1
CrossSchemeRings.java
...a/net/wanji/utc/hisense/pojo/result/CrossSchemeRings.java
+9
-0
StaticInfoServiceImpl.java
...wanji/utc/hisense/service/impl/StaticInfoServiceImpl.java
+81
-1
No files found.
signal-utc-hisense-service/src/main/java/net/wanji/utc/hisense/pojo/result/CrossSchemeRings.java
View file @
eb95cab1
...
...
@@ -47,6 +47,7 @@ public class CrossSchemeRings {
* 相位列表
*/
private
List
<
Phase
>
phaseList
;
private
List
<
OverLapPhase
>
overLapPhaseList
;
@Data
public
static
class
Phase
{
...
...
@@ -85,4 +86,12 @@ public class CrossSchemeRings {
}
@Data
public
static
class
OverLapPhase
{
private
String
direction
;
private
String
includedPhases
;
private
String
modifierPhases
;
}
}
signal-utc-hisense-service/src/main/java/net/wanji/utc/hisense/service/impl/StaticInfoServiceImpl.java
View file @
eb95cab1
...
...
@@ -127,7 +127,7 @@ public class StaticInfoServiceImpl implements StaticInfoService {
crossSchemeRingsDTO
.
setCrossId
(
crossId
);
crossSchemeRingsDTO
.
setPattern
(
vNtcipPatternView
.
getNPatternNumber
()
+
""
);
//查询方案环图请求
CrossSchemeRings
crossSchemeRings
=
crossSchemeRings
(
crossSchemeRingsDTO
);
CrossSchemeRings
crossSchemeRings
=
crossSchemeRings
Hisen
(
crossSchemeRingsDTO
);
if
(
Optional
.
ofNullable
(
crossSchemeRings
).
isPresent
())
{
//环数
int
ringCount
=
Integer
.
parseInt
(
crossSchemeRings
.
getRingCount
());
...
...
@@ -782,6 +782,86 @@ public class StaticInfoServiceImpl implements StaticInfoService {
}
messageContent
.
addElement
(
HttpConstants
.
PATTERN
).
setText
(
coordinationStatus
.
getCoordPatternStatus
());
//给海信发送http请求
String
post
=
OkHttpClientUtil
.
xmlPost
(
hisenseUrl
,
document
.
asXML
());
if
(
StringUtils
.
isBlank
(
post
))
{
log
.
error
(
"请求 5.15.根据方案号获取配时方案环图 失败"
);
return
null
;
}
Document
postResult
=
DocumentHelper
.
parseText
(
post
);
String
result
=
postResult
.
selectSingleNode
(
HttpConstants
.
SYSTEMSCRIPTION_RESULT
).
getText
();
if
(
HttpConstants
.
RESULT_1
.
equals
(
result
))
{
//成功
String
patternRest
=
postResult
.
selectSingleNode
(
HttpConstants
.
SYSTEMSCRIPTION_MESSAGECONTENT
).
valueOf
(
"Pattern"
);
String
cycleLen
=
postResult
.
selectSingleNode
(
HttpConstants
.
SYSTEMSCRIPTION_MESSAGECONTENT
).
valueOf
(
"CycleLen"
);
String
ringCount
=
postResult
.
selectSingleNode
(
HttpConstants
.
SYSTEMSCRIPTION_MESSAGECONTENT
).
valueOf
(
"RingCount"
);
String
offset
=
postResult
.
selectSingleNode
(
HttpConstants
.
SYSTEMSCRIPTION_MESSAGECONTENT
).
valueOf
(
"Offset"
);
List
<
Element
>
cycleElementList
=
postResult
.
selectNodes
(
HttpConstants
.
SYSTEMSCRIPTION_MESSAGECONTENT
+
"/CycleList"
);
List
<
Element
>
phaseElementList
=
postResult
.
selectNodes
(
HttpConstants
.
SYSTEMSCRIPTION_MESSAGECONTENT
+
"/PhaseList"
);
List
<
Element
>
overLapPhaseElementList
=
postResult
.
selectNodes
(
HttpConstants
.
SYSTEMSCRIPTION_MESSAGECONTENT
+
"/OverLapPhaseList"
);
CrossSchemeRings
crossSchemeRings
=
new
CrossSchemeRings
();
crossSchemeRings
.
setSpot
(
crossSchemeRingsDTO
.
getCrossId
());
crossSchemeRings
.
setPattern
(
patternRest
);
crossSchemeRings
.
setRingCount
(
ringCount
);
crossSchemeRings
.
setCycleLen
(
cycleLen
);
crossSchemeRings
.
setOffset
(
offset
);
JSONObject
jsonObject
=
new
JSONObject
();
for
(
Element
cycle
:
cycleElementList
)
{
List
<
Node
>
elements
=
cycle
.
elements
();
for
(
Node
node
:
elements
)
{
node
.
getName
();
jsonObject
.
put
(
node
.
getName
(),
node
.
getText
());
}
}
List
<
CrossSchemeRings
.
Phase
>
phaseList
=
new
ArrayList
<>();
for
(
Element
el
:
phaseElementList
)
{
CrossSchemeRings
.
Phase
phase
=
new
CrossSchemeRings
.
Phase
();
phase
.
setRedTime
(
el
.
valueOf
(
"RedTime"
));
phase
.
setYellowTime
(
el
.
valueOf
(
"YellowTime"
));
phase
.
setGreenTime
(
el
.
valueOf
(
"GreenTime"
));
phase
.
setDirection
(
el
.
valueOf
(
"Direction"
));
phase
.
setMinGTime
(
el
.
valueOf
(
"MinGTime"
));
phase
.
setMaxGTime
(
el
.
valueOf
(
"MaxGTime"
));
phase
.
setChannelDim
(
el
.
valueOf
(
"ChannelDim"
));
phase
.
setConcurrent
(
el
.
valueOf
(
"Concurrent"
));
phaseList
.
add
(
phase
);
}
List
<
CrossSchemeRings
.
OverLapPhase
>
overLapPhaseList
=
new
ArrayList
<>();
for
(
Element
el
:
overLapPhaseElementList
)
{
CrossSchemeRings
.
OverLapPhase
overLapPhase
=
new
CrossSchemeRings
.
OverLapPhase
();
overLapPhase
.
setDirection
(
el
.
valueOf
(
"Direction"
));
overLapPhase
.
setIncludedPhases
(
el
.
valueOf
(
"IncludedPhases"
));
overLapPhase
.
setModifierPhases
(
el
.
valueOf
(
"ModifierPhases"
));
overLapPhaseList
.
add
(
overLapPhase
);
}
crossSchemeRings
.
setCycleList
(
jsonObject
);
crossSchemeRings
.
setPhaseList
(
phaseList
);
crossSchemeRings
.
setOverLapPhaseList
(
overLapPhaseList
);
return
crossSchemeRings
;
}
else
{
//失败
log
.
error
(
"请求 5.15. 方案环图请求 失败"
);
}
return
null
;
}
/**
* @Description 获取环图请求原有的逻辑
* @Param [crossSchemeRingsDTO]
* @return net.wanji.utc.hisense.pojo.result.CrossSchemeRings
**/
public
CrossSchemeRings
crossSchemeRingsHisen
(
CrossSchemeRingsDTO
crossSchemeRingsDTO
)
throws
Exception
{
CrossInfoPOExt
crossInfoPOExt
=
crossInfoMapper
.
selectById
(
crossSchemeRingsDTO
.
getCrossId
());
//组装document
Document
document
=
OperationBaseDom
.
generateBaseDoc
();
Element
element
=
(
Element
)
document
.
selectSingleNode
(
HttpConstants
.
SYSTEMSCRIPTION
);
element
.
addElement
(
HttpConstants
.
MESSAGETYPE
).
setText
(
HttpConstants
.
MESSAGETYPE_30
);
Element
messageContent
=
(
Element
)
document
.
selectSingleNode
(
HttpConstants
.
SYSTEMSCRIPTION_MESSAGECONTENT
);
messageContent
.
addElement
(
HttpConstants
.
SPOT
).
setText
(
crossInfoPOExt
.
getCode
());
messageContent
.
addElement
(
HttpConstants
.
PATTERN
).
setText
(
crossSchemeRingsDTO
.
getPattern
());
//给海信发送http请求
String
post
=
OkHttpClientUtil
.
xmlPost
(
hisenseUrl
,
document
.
asXML
());
if
(
StringUtils
.
isBlank
(
post
))
{
...
...
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