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
98c47237
Commit
98c47237
authored
Mar 13, 2025
by
zhoushiguang
Committed by
duanruiming
Mar 13, 2025
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
研判
parent
45c84690
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
183 additions
and
0 deletions
+183
-0
EasyBaseMapper.java
...ce/src/main/java/net/wanji/opt/config/EasyBaseMapper.java
+18
-0
EasysqlInjector.java
...e/src/main/java/net/wanji/opt/config/EasysqlInjector.java
+28
-0
MybatisPlusConfig.java
...src/main/java/net/wanji/opt/config/MybatisPlusConfig.java
+8
-0
ProblemTrendMonitorTask.java
...main/java/net/wanji/opt/task/ProblemTrendMonitorTask.java
+38
-0
AnalysisProblemCrossDayMapper.xml
...es/mapper/judgeanalysis/AnalysisProblemCrossDayMapper.xml
+91
-0
No files found.
signal-optimize-service/src/main/java/net/wanji/opt/config/EasyBaseMapper.java
0 → 100644
View file @
98c47237
package
net
.
wanji
.
opt
.
config
;
/**
* @author fengyi
* @date 2025/3/10
* @description
*/
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
java.util.List
;
public
interface
EasyBaseMapper
<
T
>
extends
BaseMapper
<
T
>
{
/**
* 批量插入 仅适用于MysqL
* @param entityList 实体列表
* @return 影响行数
*/
Integer
insertBatchSomeColumn
(
List
<
T
>
entityList
);
}
signal-optimize-service/src/main/java/net/wanji/opt/config/EasysqlInjector.java
0 → 100644
View file @
98c47237
package
net
.
wanji
.
opt
.
config
;
/**
* @author fengyi
* @date 2025/3/10
* @description
*/
import
com.baomidou.mybatisplus.annotation.FieldFill
;
import
com.baomidou.mybatisplus.core.injector.AbstractMethod
;
import
com.baomidou.mybatisplus.core.injector.DefaultSqlInjector
;
import
com.baomidou.mybatisplus.core.metadata.TableInfo
;
import
com.baomidou.mybatisplus.extension.injector.methods.InsertBatchSomeColumn
;
import
java.util.List
;
public
class
EasysqlInjector
extends
DefaultSqlInjector
{
@Override
public
List
<
AbstractMethod
>
getMethodList
(
Class
<?>
mapperClass
,
TableInfo
tableInfo
)
{
List
<
AbstractMethod
>
methodList
=
super
.
getMethodList
(
mapperClass
,
tableInfo
);
methodList
.
add
(
new
InsertBatchSomeColumn
(
i
->
i
.
getFieldFill
()
!=
FieldFill
.
UPDATE
));
return
methodList
;
}
}
signal-optimize-service/src/main/java/net/wanji/opt/config/MybatisPlusConfig.java
View file @
98c47237
package
net
.
wanji
.
opt
.
config
;
package
net
.
wanji
.
opt
.
config
;
import
com.baomidou.mybatisplus.annotation.DbType
;
import
com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor
;
import
com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor
;
import
com.baomidou.mybatisplus.extension.plugins.inner.OptimisticLockerInnerInterceptor
;
import
com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor
;
import
com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.context.annotation.Configuration
;
...
@@ -16,6 +18,12 @@ public class MybatisPlusConfig {
...
@@ -16,6 +18,12 @@ public class MybatisPlusConfig {
public
MybatisPlusInterceptor
mybatisPlusInterceptor
()
{
public
MybatisPlusInterceptor
mybatisPlusInterceptor
()
{
MybatisPlusInterceptor
interceptor
=
new
MybatisPlusInterceptor
();
MybatisPlusInterceptor
interceptor
=
new
MybatisPlusInterceptor
();
interceptor
.
addInnerInterceptor
(
new
PaginationInnerInterceptor
());
interceptor
.
addInnerInterceptor
(
new
PaginationInnerInterceptor
());
//添加分页插件
//interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL));
//添加乐观锁插件
//interceptor.addInnerInterceptor(new OptimisticLockerInnerInterceptor());
return
interceptor
;
return
interceptor
;
}
}
}
}
signal-optimize-service/src/main/java/net/wanji/opt/task/ProblemTrendMonitorTask.java
0 → 100644
View file @
98c47237
package
net
.
wanji
.
opt
.
task
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
lombok.RequiredArgsConstructor
;
import
lombok.extern.slf4j.Slf4j
;
import
net.wanji.common.enums.CrossStatusEnum
;
import
net.wanji.common.framework.Constants
;
import
net.wanji.databus.dao.mapper.CrossDataRealtimeMapper
;
import
net.wanji.databus.po.CrossDataRealtimePO
;
import
net.wanji.opt.kafka.ConsumerHandler
;
import
net.wanji.opt.service.CrossOptimizeService
;
import
net.wanji.opt.service.impl.LaneInfoServiceImpl
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.beans.factory.annotation.Configurable
;
import
org.springframework.context.annotation.Profile
;
import
org.springframework.scheduling.annotation.EnableScheduling
;
import
org.springframework.scheduling.annotation.Scheduled
;
import
org.springframework.stereotype.Component
;
import
java.util.ArrayList
;
import
java.util.List
;
/**
* 路口、干线事件问题趋势统计
*/
@Component
@Configurable
@EnableScheduling
@Slf4j
@Profile
(
"!dev"
)
public
class
ProblemTrendMonitorTask
{
@Scheduled
(
cron
=
"0 1/5 * * * * "
)
public
void
task
(){
}
}
\ No newline at end of file
signal-optimize-service/src/main/resources/mapper/judgeanalysis/AnalysisProblemCrossDayMapper.xml
0 → 100644
View file @
98c47237
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"net.wanji.opt.dao.mapper.judgeanalysis.AnalysisProblemCrossDayMapper"
>
<!-- 通用设置 -->
<!-- 通用查询映射结果 -->
<resultMap
id=
"AnalysisProblemCrossDayMap"
type=
"net.wanji.opt.entity.judgeanalysis.AnalysisProblemCrossDay"
>
<id
column=
"id"
property=
"id"
/>
<result
column=
"area_id"
property=
"areaId"
/>
<result
column=
"event_category"
property=
"eventCategory"
/>
<result
column=
"event_type"
property=
"eventType"
/>
<result
column=
"event_number"
property=
"eventNumber"
/>
<result
column=
"event_total_time"
property=
"eventTotalTime"
/>
<result
column=
"window_start_time"
property=
"windowStartTime"
/>
<result
column=
"window_end_time"
property=
"windowEndTime"
/>
<result
column=
"cross_id"
property=
"crossId"
/>
<result
column=
"dt"
property=
"dt"
/>
<result
column=
"insert_time"
property=
"insertTime"
/>
</resultMap>
<!-- 查询表t_analysis_problem_cross_day所有信息 -->
<select
id=
"findAllAnalysisProblemCrossDay"
resultMap=
"AnalysisProblemCrossDayMap"
>
SELECT
<include
refid=
"Base_Column_List"
/>
FROM t_analysis_problem_cross_day
</select>
<!-- 根据主键id查询表t_analysis_problem_cross_day信息 -->
<select
id=
"findAnalysisProblemCrossDayByid"
resultMap=
"AnalysisProblemCrossDayMap"
>
SELECT
<include
refid=
"Base_Column_List"
/>
FROM t_analysis_problem_cross_day
WHERE id=#{id}
</select>
<!-- 根据条件查询表t_analysis_problem_cross_day信息 -->
<select
id=
"findAnalysisProblemCrossDayByCondition"
resultMap=
"AnalysisProblemCrossDayMap"
>
SELECT
<include
refid=
"Base_Column_List"
/>
FROM t_analysis_problem_cross_day
WHERE 1=1
<include
refid=
"AnalysisProblemCrossDayByCondition"
/>
</select>
<!-- 根据主键id删除表t_analysis_problem_cross_day信息 -->
<delete
id=
"deleteAnalysisProblemCrossDayByid"
>
DELETE FROM
t_analysis_problem_cross_day
WHERE id=#{id}
</delete>
<!-- 根据主键id更新表t_analysis_problem_cross_day信息 -->
<update
id=
"updateAnalysisProblemCrossDayByid"
parameterType=
"net.wanji.opt.entity.judgeanalysis.AnalysisProblemCrossDay"
>
UPDATE t_analysis_problem_cross_day
<set>
<include
refid=
"AnalysisProblemCrossDaySetColumns"
/>
</set>
WHERE
id=#{id}
</update>
<!-- 新增表t_analysis_problem_cross_day信息 -->
<insert
id=
"addAnalysisProblemCrossDay"
>
INSERT INTO t_analysis_problem_cross_day (
id
,area_id
,event_category
,event_type
,event_number
,event_total_time
,window_start_time
,window_end_time
,cross_id
,dt
,insert_time
) VALUES (
#{id}
,#{areaId}
,#{eventCategory}
,#{eventType}
,#{eventNumber}
,#{eventTotalTime}
,#{windowStartTime}
,#{windowEndTime}
,#{crossId}
,#{dt}
,#{insertTime}
)
</insert>
</mapper>
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