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
9f79b7d9
Commit
9f79b7d9
authored
Jul 03, 2023
by
duanruiming
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[update] 优化灯组查询
parent
722773ac
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
32 additions
and
34 deletions
+32
-34
DTStaticInfoServiceImpl.java
...c/dt/service/controller/impl/DTStaticInfoServiceImpl.java
+23
-25
CommonUtils.java
...vice/src/main/java/net/wanji/utc/dt/util/CommonUtils.java
+2
-2
WanJiCommonStaticInfoServiceImpl.java
...ice/staticinfo/impl/WanJiCommonStaticInfoServiceImpl.java
+7
-7
No files found.
signal-utc-dt-service/src/main/java/net/wanji/utc/dt/service/controller/impl/DTStaticInfoServiceImpl.java
View file @
9f79b7d9
...
...
@@ -21,6 +21,7 @@ import net.wanji.utc.dt.netty.NettyClient;
import
net.wanji.utc.dt.pojo.dtconvert.*
;
import
net.wanji.utc.dt.pojo.netty.MessageResultPojo
;
import
net.wanji.utc.dt.service.controller.StaticInfoService
;
import
net.wanji.utc.dt.util.CommonUtils
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.stereotype.Service
;
import
org.springframework.util.CollectionUtils
;
...
...
@@ -67,7 +68,7 @@ public class DTStaticInfoServiceImpl implements StaticInfoService {
SchemePhaseLightsVO
schemePhaseLightsVO
=
new
SchemePhaseLightsVO
();
List
<
BaseCrossSchemePO
>
crossSchemeList
=
getCrossSchemeList
(
crossId
,
schemeInfoPojos
);
List
<
CrossPhasePO
>
crossPhaseList
=
getCrossPhaseList
(
crossId
,
phaseInfoPojos
,
phaseStageInfoPojos
,
schemeInfoPojos
);
List
<
CrossLightsPO
>
crossLightsList
=
getCrossLightsList
(
crossId
,
crossPhaseList
,
phaseInfoPojos
,
lightsInfoPojos
);
List
<
CrossLightsPO
>
crossLightsList
=
getCrossLightsList
(
crossId
,
phaseInfoPojos
,
lightsInfoPojos
);
List
<
CrossPhaseLightsPO
>
crossPhaseLightsPOList
=
getCrossPhaseLightsList
(
crossId
,
crossPhaseList
,
phaseInfoPojos
,
phaseStageInfoPojos
);
schemePhaseLightsVO
.
setCrossPhaseLightsPOList
(
crossPhaseLightsPOList
);
schemePhaseLightsVO
.
setCrossPhaseList
(
crossPhaseList
);
...
...
@@ -99,32 +100,29 @@ public class DTStaticInfoServiceImpl implements StaticInfoService {
return
crossPhaseLightsList
.
stream
().
distinct
().
collect
(
Collectors
.
toList
());
}
private
List
<
CrossLightsPO
>
getCrossLightsList
(
String
crossId
,
List
<
CrossPhasePO
>
crossPhaseList
,
List
<
PhaseInfoPojo
>
phaseInfoPojos
,
List
<
LightsInfoPojo
>
lightsInfoPojos
)
{
private
List
<
CrossLightsPO
>
getCrossLightsList
(
String
crossId
,
List
<
PhaseInfoPojo
>
phaseInfoPojos
,
List
<
LightsInfoPojo
>
lightsInfoPojos
)
{
List
<
CrossLightsPO
>
crossLightsList
=
new
ArrayList
<>();
for
(
CrossPhasePO
crossPhasePO
:
crossPhaseList
)
{
for
(
PhaseInfoPojo
phaseInfoPojo
:
phaseInfoPojos
)
{
if
(
StringUtils
.
equals
(
crossPhasePO
.
getPhaseNo
(),
String
.
valueOf
(
phaseInfoPojo
.
getPhaseId
())))
{
CrossLightsPO
crossLightsPO
=
new
CrossLightsPO
();
Integer
phaseLightsId
=
phaseInfoPojo
.
getLightsId
();
for
(
LightsInfoPojo
lightsInfoPojo
:
lightsInfoPojos
)
{
Integer
lightId
=
lightsInfoPojo
.
getLightId
();
if
(
Objects
.
equals
(
phaseLightsId
,
lightId
))
{
crossLightsPO
.
setLightsNo
(
String
.
valueOf
(
lightId
));
crossLightsPO
.
setName
(
StringUtils
.
join
(
"灯组"
,
lightId
));
Integer
turnDir
=
LightsInfoPojo
.
getTurnDir
(
lightId
,
lightsInfoPojo
.
getType
());
crossLightsPO
.
setTurn
(
turnDir
);
crossLightsPO
.
setType
(
2
);
if
(
turnDir
==
20
)
{
crossLightsPO
.
setType
(
3
);
}
crossLightsPO
.
setCrossId
(
crossId
);
Integer
dir
=
LightsInfoPojo
.
getLightsDir
(
lightId
);
crossLightsPO
.
setDir
(
dir
);
crossLightsPO
.
setInOutType
(
2
);
crossLightsList
.
add
(
crossLightsPO
);
break
;
}
for
(
PhaseInfoPojo
phaseInfoPojo
:
phaseInfoPojos
)
{
CrossLightsPO
crossLightsPO
=
new
CrossLightsPO
();
Integer
phaseLightsId
=
phaseInfoPojo
.
getLightsId
();
for
(
LightsInfoPojo
lightsInfoPojo
:
lightsInfoPojos
)
{
Integer
lightId
=
lightsInfoPojo
.
getLightId
();
if
(
Objects
.
equals
(
phaseLightsId
,
lightId
))
{
crossLightsPO
.
setLightsNo
(
String
.
valueOf
(
lightId
));
crossLightsPO
.
setName
(
StringUtils
.
join
(
"灯组"
,
lightId
));
// Integer turnDir = LightsInfoPojo.getTurnDir(lightId, lightsInfoPojo.getType());
Integer
turnDir
=
CommonUtils
.
getTurnByLightsId
(
lightId
-
1
);
Integer
dir
=
CommonUtils
.
getDirByLightsId
(
lightId
-
1
);
crossLightsPO
.
setTurn
(
turnDir
);
crossLightsPO
.
setType
(
2
);
if
(
turnDir
==
20
)
{
crossLightsPO
.
setType
(
3
);
}
crossLightsPO
.
setCrossId
(
crossId
);
crossLightsPO
.
setDir
(
dir
);
crossLightsPO
.
setInOutType
(
2
);
crossLightsList
.
add
(
crossLightsPO
);
break
;
}
}
}
...
...
signal-utc-dt-service/src/main/java/net/wanji/utc/dt/util/CommonUtils.java
View file @
9f79b7d9
...
...
@@ -124,10 +124,10 @@ public class CommonUtils {
turn
=
1
;
}
if
(
lightId
%
4
==
1
)
{
turn
=
6
;
turn
=
2
;
}
if
(
lightId
%
4
==
2
)
{
turn
=
6
;
turn
=
3
;
}
if
(
lightId
%
4
==
3
)
{
turn
=
20
;
...
...
signal-utc-service/src/main/java/net/wanji/utc/service/staticinfo/impl/WanJiCommonStaticInfoServiceImpl.java
View file @
9f79b7d9
...
...
@@ -69,10 +69,12 @@ public class WanJiCommonStaticInfoServiceImpl implements WanJiCommonStaticInfoSe
});
List
<
CrossLightsPO
>
crossLightsList
=
content
.
getCrossLightsList
();
crossLightsList
.
forEach
(
crossLightsPO
->
{
crossLightsMapper
.
deleteOne
(
crossId
,
crossLightsPO
.
getName
());
crossLightsMapper
.
insertOne
(
crossLightsPO
);
});
if
(!
CollectionUtils
.
isEmpty
(
crossLightsList
))
{
crossLightsMapper
.
deleteByCrossId
(
crossId
);
crossLightsList
.
forEach
(
crossLightsPO
->
{
crossLightsMapper
.
insertOne
(
crossLightsPO
);
});
}
List
<
CrossPhaseLightsPO
>
crossPhaseLightsPOList
=
content
.
getCrossPhaseLightsPOList
();
if
(!
CollectionUtils
.
isEmpty
(
crossPhaseLightsPOList
))
{
crossPhaseLightsMapper
.
deleteByCrossId
(
crossPhaseLightsPOList
.
get
(
0
).
getCrossId
());
...
...
@@ -125,9 +127,7 @@ public class WanJiCommonStaticInfoServiceImpl implements WanJiCommonStaticInfoSe
if
(
Objects
.
nonNull
(
content
))
{
if
(!
CollectionUtils
.
isEmpty
(
content
))
{
crossSchedulesMapper
.
deleteByCrossId
(
crossId
);
content
.
forEach
(
crossSchedulesPO
->
{
crossSchedulesMapper
.
insertBatch
(
content
);
});
crossSchedulesMapper
.
insertBatch
(
content
);
}
}
return
Result
.
success
(
content
);
...
...
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