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
jinan
traffic-signal-platform
Commits
56c487f0
Commit
56c487f0
authored
Apr 15, 2025
by
wangyecheng
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
策略管理干线日计划保存
parent
a9be34a2
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
88 additions
and
23 deletions
+88
-23
StrategyPriorityMapper.java
...wanji/opt/dao/mapper/strategy/StrategyPriorityMapper.java
+4
-0
StrategyPriorityDailyInfo.java
.../wanji/opt/entity/strategy/StrategyPriorityDailyInfo.java
+5
-0
StrategyPriorityServiceImpl.java
.../servicev2/strategy/impl/StrategyPriorityServiceImpl.java
+61
-21
StrategyPriorityMapper.xml
...main/resources/mapper/strategy/StrategyPriorityMapper.xml
+18
-2
No files found.
signal-optimize-service/src/main/java/net/wanji/opt/dao/mapper/strategy/StrategyPriorityMapper.java
View file @
56c487f0
...
...
@@ -100,5 +100,9 @@ public interface StrategyPriorityMapper extends BaseMapper<StrategyPriorityDaily
List
<
String
>
getGreenstrategyNo
(
@Param
(
"greenId"
)
Integer
greenId
,
@Param
(
"type"
)
Integer
type
);
List
<
StrategyFactoryEntity
>
getGreenPriorityConfigData
(
@Param
(
"strategyNo"
)
List
<
String
>
strategyNo
,
@Param
(
"greenId"
)
Integer
greenId
,
@Param
(
"type"
)
Integer
type
);
List
<
StrategyPriorityDailyInfo
>
selectGreenPlanTable
(
Integer
greenId
);
void
deleteGreenPlanConfig
(
Integer
greenId
);
}
signal-optimize-service/src/main/java/net/wanji/opt/entity/strategy/StrategyPriorityDailyInfo.java
View file @
56c487f0
...
...
@@ -61,6 +61,11 @@ public class StrategyPriorityDailyInfo implements Serializable {
*/
@TableField
(
exist
=
false
)
private
Integer
greenId
;
/**
* 类型 1:路口 2干线
*/
@TableField
(
exist
=
false
)
private
Integer
type
;
...
...
signal-optimize-service/src/main/java/net/wanji/opt/servicev2/strategy/impl/StrategyPriorityServiceImpl.java
View file @
56c487f0
...
...
@@ -208,6 +208,9 @@ import java.util.stream.Collectors;
}
/*
* 策略管理日计划批量保存 干线跟路口
* */
@Override
@Transactional
public
void
savePlanConfig
(
List
<
StrategyPriorityGroup
>
dailyPlanDetails
)
throws
JsonProcessingException
{
...
...
@@ -216,33 +219,70 @@ import java.util.stream.Collectors;
List
<
StrategyPriorityDailyInfo
>
savePlanList
=
new
ArrayList
<>();
ObjectMapper
objectMapper
=
new
ObjectMapper
();
for
(
StrategyPriorityGroup
group
:
dailyPlanDetails
)
{
//路口ID
List
<
String
>
crossList
=
group
.
getCrossIds
();
//选中多个路口存多条数据
for
(
String
crossId
:
crossList
)
{
StrategyPriorityDailyInfo
strategyPriorityDailyInfo
=
new
StrategyPriorityDailyInfo
();
strategyPriorityDailyInfo
.
setCrossId
(
crossId
);
//日计划编号
Integer
dailyPlanId
=
group
.
getDailyPlanId
();
strategyPriorityDailyInfo
.
setDailyPlanId
(
dailyPlanId
);
//执行时间
String
weekExecute
=
group
.
getWeekExecute
();
strategyPriorityDailyInfo
.
setWeekExecute
(
weekExecute
);
//先判断表里有没有数据,有的话删除t_strategy_priority_daily_info
List
<
StrategyPriorityDailyInfo
>
planConfig
=
strategyPriorityMapper
.
selectPlanTable
(
crossId
);
if
(
planConfig
.
size
()
>
0
)
{
strategyPriorityMapper
.
deletePlanConfig
(
crossId
);
//Type : 1;路口2:干线
Integer
typePd
=
group
.
getType
();
if
(
typePd
==
1
)
{
//路口ID
List
<
String
>
crossList
=
group
.
getCrossIds
();
//选中多个路口存多条数据
for
(
String
crossId
:
crossList
)
{
StrategyPriorityDailyInfo
strategyPriorityDailyInfo
=
new
StrategyPriorityDailyInfo
();
strategyPriorityDailyInfo
.
setCrossId
(
crossId
);
//1;路口2干线
Integer
type
=
group
.
getType
();
strategyPriorityDailyInfo
.
setType
(
type
);
//日计划编号
Integer
dailyPlanId
=
group
.
getDailyPlanId
();
strategyPriorityDailyInfo
.
setDailyPlanId
(
dailyPlanId
);
//执行时间
String
weekExecute
=
group
.
getWeekExecute
();
strategyPriorityDailyInfo
.
setWeekExecute
(
weekExecute
);
//先判断表里有没有数据,有的话删除t_strategy_priority_daily_info
List
<
StrategyPriorityDailyInfo
>
planConfig
=
strategyPriorityMapper
.
selectPlanTable
(
crossId
);
if
(
planConfig
.
size
()
>
0
)
{
strategyPriorityMapper
.
deletePlanConfig
(
crossId
);
}
//取出日计划详情
List
<
StrategyPriorityPlanDetails
>
dailyPlanDetails1
=
group
.
getDailyPlanDetails
();
String
dailyPlanDetailsJson
=
JSON
.
toJSONString
(
dailyPlanDetails1
);
strategyPriorityDailyInfo
.
setDailyPlanDetails
(
dailyPlanDetailsJson
);
savePlanList
.
add
(
strategyPriorityDailyInfo
);
}
}
else
if
(
typePd
==
2
){
//干线ID
List
<
Integer
>
greenIdList
=
group
.
getGreenIds
();
//选中多个路口存多条数据
for
(
Integer
greenId
:
greenIdList
)
{
StrategyPriorityDailyInfo
strategyPriorityDailyInfo
=
new
StrategyPriorityDailyInfo
();
strategyPriorityDailyInfo
.
setGreenId
(
greenId
);
//1;路口2干线
Integer
type
=
group
.
getType
();
strategyPriorityDailyInfo
.
setType
(
type
);
//日计划编号
Integer
dailyPlanId
=
group
.
getDailyPlanId
();
strategyPriorityDailyInfo
.
setDailyPlanId
(
dailyPlanId
);
//执行时间
String
weekExecute
=
group
.
getWeekExecute
();
strategyPriorityDailyInfo
.
setWeekExecute
(
weekExecute
);
//先判断表里有没有数据,有的话删除t_strategy_priority_daily_info
List
<
StrategyPriorityDailyInfo
>
planConfig
=
strategyPriorityMapper
.
selectGreenPlanTable
(
greenId
);
if
(
planConfig
.
size
()
>
0
)
{
strategyPriorityMapper
.
deleteGreenPlanConfig
(
greenId
);
}
//取出日计划详情
List
<
StrategyPriorityPlanDetails
>
dailyPlanDetails1
=
group
.
getDailyPlanDetails
();
String
dailyPlanDetailsJson
=
JSON
.
toJSONString
(
dailyPlanDetails1
);
strategyPriorityDailyInfo
.
setDailyPlanDetails
(
dailyPlanDetailsJson
);
//取出日计划详情
List
<
StrategyPriorityPlanDetails
>
dailyPlanDetails1
=
group
.
getDailyPlanDetails
();
String
dailyPlanDetailsJson
=
JSON
.
toJSONString
(
dailyPlanDetails1
);
strategyPriorityDailyInfo
.
setDailyPlanDetails
(
dailyPlanDetailsJson
);
savePlanList
.
add
(
strategyPriorityDailyInfo
);
savePlanList
.
add
(
strategyPriorityDailyInfo
);
}
}
}
strategyPriorityMapper
.
savePlanConfig
(
savePlanList
);
}
catch
(
Exception
e
){
log
.
error
(
"{} savePlanConfig"
,
this
.
getClass
().
getSimpleName
(),
e
);
throw
e
;
...
...
signal-optimize-service/src/main/resources/mapper/strategy/StrategyPriorityMapper.xml
View file @
56c487f0
...
...
@@ -254,10 +254,10 @@
<insert
id=
"savePlanConfig"
parameterType=
"java.util.List"
>
INSERT INTO
t_strategy_priority_daily_info (daily_plan_id,week_execute,daily_plan_details,cross_id)
t_strategy_priority_daily_info (daily_plan_id,week_execute,daily_plan_details,cross_id
,type,green_id
)
VALUES
<foreach
collection=
"savePlanList"
item=
"item"
separator=
","
>
(#{item.dailyPlanId},#{item.weekExecute},#{item.dailyPlanDetails},#{item.crossId})
(#{item.dailyPlanId},#{item.weekExecute},#{item.dailyPlanDetails},#{item.crossId}
,#{item.type},#{item.greenId}
)
</foreach>
</insert>
<select
id=
"selectPlanTable"
parameterType=
"map"
resultType=
"net.wanji.opt.entity.strategy.StrategyPriorityDailyInfo"
>
...
...
@@ -271,11 +271,27 @@
and cross_id = #{crossId}
</if>
</select>
<select
id=
"selectGreenPlanTable"
parameterType=
"map"
resultType=
"net.wanji.opt.entity.strategy.StrategyPriorityDailyInfo"
>
select
id,daily_plan_id,cross_id
FROM
t_strategy_priority_daily_info
WHERE
1=1
<if
test=
"greenId!=null and greenId!=''"
>
and green_id = #{greenId}
</if>
</select>
<delete
id=
"deletePlanConfig"
>
DELETE
FROM t_strategy_priority_daily_info
WHERE cross_id =#{crossId}
</delete>
<delete
id=
"deleteGreenPlanConfig"
>
DELETE
FROM t_strategy_priority_daily_info
WHERE green_id =#{greenId}
</delete>
<select
id=
"getPlanConfigData"
parameterType=
"map"
resultType=
"net.wanji.opt.entity.strategy.StrategyPriorityDailyInfo"
>
SELECT
id,daily_plan_id,week_execute,daily_plan_details,cross_id
...
...
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