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
bbf60c16
Commit
bbf60c16
authored
Feb 10, 2023
by
hanbing
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
方案下发-信号机方案同步
parent
eb6a34d0
Changes
6
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
27 additions
and
49 deletions
+27
-49
CrossPhaseLightsMapper.java
...a/net/wanji/web/mapper/scheme/CrossPhaseLightsMapper.java
+2
-2
CrossPhaseMapper.java
...in/java/net/wanji/web/mapper/scheme/CrossPhaseMapper.java
+2
-0
PlanSendServiceImpl.java
.../java/net/wanji/web/service/impl/PlanSendServiceImpl.java
+13
-45
SchemeConfigServiceImpl.java
...anji/web/service/scheme/impl/SchemeConfigServiceImpl.java
+1
-1
CrossPhaseLightsMapper.xml
...c/main/resources/mapper/scheme/CrossPhaseLightsMapper.xml
+1
-1
CrossPhaseMapper.xml
...ice/src/main/resources/mapper/scheme/CrossPhaseMapper.xml
+8
-0
No files found.
signal-control-service/src/main/java/net/wanji/web/mapper/scheme/CrossPhaseLightsMapper.java
View file @
bbf60c16
...
...
@@ -4,8 +4,8 @@ import net.wanji.web.po.scheme.CrossPhaseLightsPO;
import
org.apache.ibatis.annotations.Param
;
import
org.springframework.stereotype.Repository
;
import
java.util.Collection
;
import
java.util.List
;
import
java.util.Set
;
/**
* 相位灯组关系;(t_base_cross_phase_lights)表数据库访问层
...
...
@@ -16,7 +16,7 @@ import java.util.Set;
public
interface
CrossPhaseLightsMapper
{
void
deleteByCrossId
(
@Param
(
"crossId"
)
String
crossId
);
void
insertBatch
BySet
(
@Param
(
"entities"
)
Set
<
CrossPhaseLightsPO
>
entities
);
void
insertBatch
(
@Param
(
"entities"
)
Collection
<
CrossPhaseLightsPO
>
entities
);
List
<
CrossPhaseLightsPO
>
selectByPhaseId
(
@Param
(
"phaseId"
)
Integer
phaseId
);
...
...
signal-control-service/src/main/java/net/wanji/web/mapper/scheme/CrossPhaseMapper.java
View file @
bbf60c16
...
...
@@ -44,4 +44,6 @@ public interface CrossPhaseMapper {
Integer
selectIdByCrossIdAndPhaseNo
(
String
crossId
,
String
phaseNo
);
void
update
(
CrossPhasePO
crossPhasePO
);
void
insertBatch
(
List
<
CrossPhasePO
>
crossPhaseList
);
}
signal-control-service/src/main/java/net/wanji/web/service/impl/PlanSendServiceImpl.java
View file @
bbf60c16
...
...
@@ -226,7 +226,8 @@ public class PlanSendServiceImpl implements PlanSendService {
@Transactional
public
JsonViewObject
syncScheme
(
CrossIdDTO
crossIdDTO
)
{
CrossIdVO
crossIdVO
=
new
CrossIdVO
();
crossIdVO
.
setCrossId
(
crossIdDTO
.
getCrossId
());
String
crossId
=
crossIdDTO
.
getCrossId
();
crossIdVO
.
setCrossId
(
crossId
);
JsonViewObject
jsonViewObject
=
utcFeignClients
.
schemePhaseLights
(
crossIdVO
);
if
(
Objects
.
isNull
(
jsonViewObject
)
||
jsonViewObject
.
getCode
()
!=
200
)
{
return
jsonViewObject
.
fail
(
"信号机静态信息获取-方案信息-UTC服务调用异常"
);
...
...
@@ -240,53 +241,20 @@ public class PlanSendServiceImpl implements PlanSendService {
return
jsonViewObject
.
fail
(
"信号机方案对象转换结果为空,未更新数据库"
);
}
List
<
CrossSchemePO
>
crossSchemeList
=
schemePhaseLightsVO
.
getCrossSchemeList
();
for
(
CrossSchemePO
crossSchemePO
:
crossSchemeList
)
{
String
crossId
=
crossSchemePO
.
getCrossId
();
String
schemeNo
=
crossSchemePO
.
getSchemeNo
();
Integer
schemeId
=
crossSchemeMapper
.
selectIdByCrossIdAndSchemeNo
(
crossId
,
schemeNo
);
if
(!
ObjectUtil
.
isEmpty
(
schemeId
))
{
// 如果有相同的路口ID和方案号,则更新
crossSchemeMapper
.
update
(
crossSchemePO
);
}
else
{
// 否则插入
crossSchemeMapper
.
insertOne
(
crossSchemePO
);
}
}
crossSchemeMapper
.
deleteByCrossId
(
crossId
);
crossSchemeMapper
.
insertBatch
(
crossSchemeList
);
List
<
CrossPhasePO
>
crossPhaseList
=
schemePhaseLightsVO
.
getCrossPhaseList
();
for
(
CrossPhasePO
crossPhasePO
:
crossPhaseList
)
{
String
crossId
=
crossPhasePO
.
getCrossId
();
String
phaseNo
=
crossPhasePO
.
getPhaseNo
();
Integer
phaseId
=
crossPhaseMapper
.
selectIdByCrossIdAndPhaseNo
(
crossId
,
phaseNo
);
if
(
ObjectUtil
.
isNotEmpty
(
phaseId
))
{
crossPhaseMapper
.
update
(
crossPhasePO
);
}
else
{
crossPhaseMapper
.
insertOne
(
crossPhasePO
);
}
}
crossPhaseMapper
.
deleteByCrossId
(
crossId
);
crossPhaseMapper
.
insertBatch
(
crossPhaseList
);
List
<
CrossLightsPO
>
crossLightsList
=
schemePhaseLightsVO
.
getCrossLightsList
();
for
(
CrossLightsPO
crossLightsPO
:
crossLightsList
)
{
String
crossId
=
crossLightsPO
.
getCrossId
();
String
lightsNo
=
crossLightsPO
.
getLightsNo
();
CrossLightsPO
crossLightsPO1
=
crossLightsMapper
.
selectByCrossIdAndLedNum
(
crossId
,
lightsNo
);
if
(
ObjectUtil
.
isNotEmpty
(
crossLightsPO1
))
{
crossLightsMapper
.
update
(
crossLightsPO
);
}
else
{
crossLightsMapper
.
insertOne
(
crossLightsPO
);
}
}
crossLightsMapper
.
deleteByCrossId
(
crossId
);
crossLightsMapper
.
insertBatch
(
crossLightsList
);
List
<
CrossPhaseLightsPO
>
crossPhaseLightsPOList
=
schemePhaseLightsVO
.
getCrossPhaseLightsPOList
();
if
(
crossPhaseLightsPOList
!=
null
)
{
for
(
CrossPhaseLightsPO
crossPhaseLightsPO
:
crossPhaseLightsPOList
)
{
Integer
lightsId
=
crossPhaseLightsPO
.
getLightsId
();
Integer
phaseId
=
crossPhaseLightsPO
.
getPhaseId
();
String
crossId
=
crossPhaseLightsPO
.
getCrossId
();
Integer
id
=
crossPhaseLightsMapper
.
selectIdByThreeIds
(
lightsId
,
phaseId
,
crossId
);
// 如果数据库中有记录则跳过,无记录则插入
if
(
ObjectUtil
.
isEmpty
(
id
))
{
crossPhaseLightsMapper
.
insertOne
(
crossPhaseLightsPO
);
}
}
}
crossPhaseLightsMapper
.
deleteByCrossId
(
crossId
);
crossPhaseLightsMapper
.
insertBatch
(
crossPhaseLightsPOList
);
}
return
jsonViewObject
.
success
();
}
...
...
signal-control-service/src/main/java/net/wanji/web/service/scheme/impl/SchemeConfigServiceImpl.java
View file @
bbf60c16
...
...
@@ -664,7 +664,7 @@ public class SchemeConfigServiceImpl implements SchemeConfigService {
crossPhaseLightsPOSet
.
add
(
crossPhaseLightsPO
);
}
}
crossPhaseLightsMapper
.
insertBatch
BySet
(
crossPhaseLightsPOSet
);
crossPhaseLightsMapper
.
insertBatch
(
crossPhaseLightsPOSet
);
}
private
void
updateCrossScheme
(
SaveSchemeConfigDTO
saveSchemeConfigDTO
)
{
...
...
signal-control-service/src/main/resources/mapper/scheme/CrossPhaseLightsMapper.xml
View file @
bbf60c16
...
...
@@ -12,7 +12,7 @@
<result
property=
"gmtModified"
column=
"gmt_modified"
/>
</resultMap>
<insert
id=
"insertBatch
BySet
"
keyProperty=
"id"
useGeneratedKeys=
"true"
>
<insert
id=
"insertBatch"
keyProperty=
"id"
useGeneratedKeys=
"true"
>
insert into t_base_cross_phase_lights(lights_id,phase_id,cross_id)
values
<foreach
collection=
"entities"
item=
"entity"
separator=
","
>
...
...
signal-control-service/src/main/resources/mapper/scheme/CrossPhaseMapper.xml
View file @
bbf60c16
...
...
@@ -31,6 +31,14 @@
values (#{phaseNo},#{name},#{sort},#{crossId},#{planId},#{ringNo},#{groupNo},#{phaseType},#{controlMode},#{phaseTime},#{greenTime},#{greenFlashTime},#{yellowFlashTime},#{redFlashTime},#{pedFlashTime},#{yellowTime},#{redTime},#{minGreenTime},#{maxGreenTime})
</insert>
<insert
id=
"insertBatch"
keyProperty=
"id"
useGeneratedKeys=
"true"
>
insert into t_base_cross_phase(phase_no,name,sort,cross_id,plan_id,ring_no,group_no,phase_type,control_mode,phase_time,green_time,green_flash_time,yellow_flash_time,red_flash_time,ped_flash_time,yellow_time,red_time,min_green_time,max_green_time)
values
<foreach
collection=
"crossPhaseList"
item=
"entity"
separator=
","
>
(#{entity.phaseNo},#{entity.name},#{entity.sort},#{entity.crossId},#{entity.planId},#{entity.ringNo},#{entity.groupNo},#{entity.phaseType},#{entity.controlMode},#{entity.phaseTime},#{entity.greenTime},#{entity.greenFlashTime},#{entity.yellowFlashTime},#{entity.redFlashTime},#{entity.pedFlashTime},#{entity.yellowTime},#{entity.redTime},#{entity.minGreenTime},#{entity.maxGreenTime})
</foreach>
</insert>
<update
id=
"update"
>
update t_base_cross_phase
<set>
...
...
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