Commit effbeff3 authored by duanruiming's avatar duanruiming

[add] 国产化数据库改造

parent 0f9e83a1
...@@ -101,6 +101,19 @@ ...@@ -101,6 +101,19 @@
<!-- 依赖声明 --> <!-- 依赖声明 -->
<dependencyManagement> <dependencyManagement>
<dependencies> <dependencies>
<!-- 瀚高数据库-->
<dependency>
<groupId>com.highgo</groupId>
<artifactId>HgdbJdbc</artifactId>
<version>6.2.2</version>
</dependency>
<!-- 中创中间件inforsuite-->
<dependency>
<groupId>com.cvicse.embedded</groupId>
<artifactId>spring-boot-starter-inforsuite</artifactId>
<version>10.0.2.5</version>
</dependency>
<dependency> <dependency>
<groupId>com.squareup.okhttp3</groupId> <groupId>com.squareup.okhttp3</groupId>
<artifactId>okhttp</artifactId> <artifactId>okhttp</artifactId>
...@@ -111,6 +124,12 @@ ...@@ -111,6 +124,12 @@
<groupId>com.github.xiaoymin</groupId> <groupId>com.github.xiaoymin</groupId>
<artifactId>knife4j-spring-boot-starter</artifactId> <artifactId>knife4j-spring-boot-starter</artifactId>
<version>2.0.4</version> <version>2.0.4</version>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
</exclusions>
</dependency> </dependency>
<!-- ElasticSearch依赖 --> <!-- ElasticSearch依赖 -->
<dependency> <dependency>
......
utc.service.url=http://37.12.182.29:32000/utc
utc.dt.service.url=http://37.12.182.29:39002/utc-dt
utc.hisense.service.url=http://37.12.182.29:39003/utc-hisense
control.url=http://37.12.182.29:32001/web
ehualu.url=http://37.12.182.29:30015
\ No newline at end of file
...@@ -59,6 +59,12 @@ ...@@ -59,6 +59,12 @@
<dependency> <dependency>
<groupId>org.springframework.boot</groupId> <groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-websocket</artifactId> <artifactId>spring-boot-starter-websocket</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
</exclusions>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.springframework.boot</groupId> <groupId>org.springframework.boot</groupId>
...@@ -71,6 +77,12 @@ ...@@ -71,6 +77,12 @@
<dependency> <dependency>
<groupId>org.springframework.boot</groupId> <groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId> <artifactId>spring-boot-starter-web</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
</exclusions>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.baomidou</groupId> <groupId>com.baomidou</groupId>
...@@ -90,6 +102,12 @@ ...@@ -90,6 +102,12 @@
<dependency> <dependency>
<groupId>com.alibaba</groupId> <groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId> <artifactId>druid-spring-boot-starter</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
</exclusions>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.projectlombok</groupId> <groupId>org.projectlombok</groupId>
...@@ -169,6 +187,10 @@ ...@@ -169,6 +187,10 @@
<artifactId>spring-boot-starter-test</artifactId> <artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope> <scope>test</scope>
<exclusions> <exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
<exclusion> <exclusion>
<groupId>com.vaadin.external.google</groupId> <groupId>com.vaadin.external.google</groupId>
<artifactId>android-json</artifactId> <artifactId>android-json</artifactId>
...@@ -181,6 +203,10 @@ ...@@ -181,6 +203,10 @@
<version>4.13.2</version> <version>4.13.2</version>
<scope>test</scope> <scope>test</scope>
</dependency> </dependency>
<dependency>
<groupId>com.cvicse.embedded</groupId>
<artifactId>spring-boot-starter-inforsuite</artifactId>
</dependency>
</dependencies> </dependencies>
<build> <build>
...@@ -216,14 +242,14 @@ ...@@ -216,14 +242,14 @@
<verbose>true</verbose> <verbose>true</verbose>
<overwrite>true</overwrite> <overwrite>true</overwrite>
</configuration> </configuration>
<dependencies> <!-- <dependencies>-->
<!-- 数据库驱动 --> <!-- &lt;!&ndash; 数据库驱动 &ndash;&gt;-->
<dependency> <!-- <dependency>-->
<groupId>mysql</groupId> <!-- <groupId>mysql</groupId>-->
<artifactId>mysql-connector-java</artifactId> <!-- <artifactId>mysql-connector-java</artifactId>-->
<version>${mysql.connector.version}</version> <!-- <version>${mysql.connector.version}</version>-->
</dependency> <!-- </dependency>-->
</dependencies> <!-- </dependencies>-->
</plugin> </plugin>
<!-- swagger 导出配置 --> <!-- swagger 导出配置 -->
......
package net.wanji.opt.common.exception; package net.wanji.opt.common.exception;
import com.cvicse.bixi.connector.ClientAbortException;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import net.wanji.common.framework.exceptionhandler.GlobalExceptionHandler; import net.wanji.common.framework.exceptionhandler.GlobalExceptionHandler;
import net.wanji.common.framework.rest.JsonViewObject; import net.wanji.common.framework.rest.JsonViewObject;
import org.apache.catalina.connector.ClientAbortException;
import org.springframework.http.HttpStatus; import org.springframework.http.HttpStatus;
import org.springframework.web.bind.annotation.ExceptionHandler; import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.ResponseStatus; import org.springframework.web.bind.annotation.ResponseStatus;
......
...@@ -2,10 +2,7 @@ package net.wanji.opt.servicev2.syslog.impl; ...@@ -2,10 +2,7 @@ package net.wanji.opt.servicev2.syslog.impl;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import net.wanji.opt.dao.mapper.judgeanalysis.AnalysisProblemCrossDayMapper;
import net.wanji.opt.dao.mapper.syslog.SysLogMapper; import net.wanji.opt.dao.mapper.syslog.SysLogMapper;
import net.wanji.opt.entity.comprehensivequery.CrossLaneDataHistPoExtendName;
import net.wanji.opt.entity.judgeanalysis.AnalysisProblemCrossDay;
import net.wanji.opt.entity.syslog.SysOptimizeLog; import net.wanji.opt.entity.syslog.SysOptimizeLog;
import net.wanji.opt.servicev2.syslog.SysLogServer; import net.wanji.opt.servicev2.syslog.SysLogServer;
import org.apache.commons.collections.CollectionUtils; import org.apache.commons.collections.CollectionUtils;
...@@ -30,10 +27,10 @@ public class SysLogServerImpl extends ServiceImpl<SysLogMapper, SysOptimizeLog> ...@@ -30,10 +27,10 @@ public class SysLogServerImpl extends ServiceImpl<SysLogMapper, SysOptimizeLog>
private SysLogMapper sysLogMapper; private SysLogMapper sysLogMapper;
@Override @Override
public JSONObject findSysOptimizeLog(String crossId,String startTime,String endTime,Integer pageNum,Integer pageSize) { public JSONObject findSysOptimizeLog(String crossId, String startTime, String endTime, Integer pageNum, Integer pageSize) {
List<SysOptimizeLog> list = sysLogMapper.findSysOptimizeLog(crossId,startTime,endTime); List<SysOptimizeLog> list = sysLogMapper.findSysOptimizeLog(crossId, startTime, endTime);
List<SysOptimizeLog> results = new ArrayList<>(); List<SysOptimizeLog> results = new ArrayList<>();
for(SysOptimizeLog temp : list){ for (SysOptimizeLog temp : list) {
switch (temp.getCommandType()) { switch (temp.getCommandType()) {
case "1": case "1":
JSONObject temp1 = JSONObject.parseObject(temp.getDataInfo()); JSONObject temp1 = JSONObject.parseObject(temp.getDataInfo());
...@@ -61,7 +58,7 @@ public class SysLogServerImpl extends ServiceImpl<SysLogMapper, SysOptimizeLog> ...@@ -61,7 +58,7 @@ public class SysLogServerImpl extends ServiceImpl<SysLogMapper, SysOptimizeLog>
JSONObject temp3 = JSONObject.parseObject(temp.getDataInfo()); JSONObject temp3 = JSONObject.parseObject(temp.getDataInfo());
Integer commandType = temp3.getInteger("commandType"); Integer commandType = temp3.getInteger("commandType");
switch (commandType) { switch (commandType) {
//1-步进控制/恢复(公用);2-恢复时间表(公用);3-相位锁定/解锁(公用);4-临时方案下发(公用);5-定时任务恢复失败;10-查询环图失败记录', //1-步进控制/恢复(公用);2-恢复时间表(公用);3-相位锁定/解锁(公用);4-临时方案下发(公用);5-定时任务恢复失败;10-查询环图失败记录',
case 1: case 1:
temp.setCommandType("定时任务 - 解除步进控制"); temp.setCommandType("定时任务 - 解除步进控制");
break; break;
...@@ -85,14 +82,14 @@ public class SysLogServerImpl extends ServiceImpl<SysLogMapper, SysOptimizeLog> ...@@ -85,14 +82,14 @@ public class SysLogServerImpl extends ServiceImpl<SysLogMapper, SysOptimizeLog>
results.add(temp); results.add(temp);
} }
List<SysOptimizeLog> collect = new ArrayList<>(); List<SysOptimizeLog> collect = new ArrayList<>();
if(CollectionUtils.isNotEmpty(results)){ if (CollectionUtils.isNotEmpty(results)) {
collect = results.stream().skip((pageNum - 1) * pageSize).limit(pageSize).collect(Collectors.toList()); collect = results.stream().skip((pageNum - 1) * pageSize).limit(pageSize).collect(Collectors.toList());
} }
JSONObject result = new JSONObject(); JSONObject result = new JSONObject();
result.put("fullDataList",results); result.put("fullDataList", results);
result.put("pageList",collect); result.put("pageList", collect);
result.put("totalPage",Math.ceil((double) results.size() / pageSize)); result.put("totalPage", Math.ceil((double) results.size() / pageSize));
result.put("totalSize",results.size()); result.put("totalSize", results.size());
return result; return result;
} }
} }
...@@ -131,7 +131,7 @@ ...@@ -131,7 +131,7 @@
<include refid="fuzzySearch"/> <include refid="fuzzySearch"/>
</where> </where>
<!--ORDER BY `dt_create_date` DESC--> <!--ORDER BY `dt_create_date` DESC-->
limit #{pageSize} OFFSET #{startRowNum} - 1 limit #{startRowNum}, #{pageSize}
</select> </select>
<!--更新--> <!--更新-->
......
...@@ -25,12 +25,12 @@ ...@@ -25,12 +25,12 @@
<!-- 统一接口:绿波路口车道级指标趋势,支持按5分钟粒度、15分钟粒度、30分钟粒度、1小时粒度汇聚 --> <!-- 统一接口:绿波路口车道级指标趋势,支持按5分钟粒度、15分钟粒度、30分钟粒度、1小时粒度汇聚 -->
<select id="findCrossObjectIndex" <select id="findCrossObjectIndex"
resultType="net.wanji.opt.po.base.CrossLaneDataHistPoExtend"> resultType="net.wanji.opt.po.base.CrossLaneDataHistPoExtend">
SELECT MIN(COALESCE(t.unit_time,#{startDate})) start_time, SELECT MIN(ifnull(t.unit_time,#{startDate})) start_time,
(case (case
when #{groupType}=0 then TO_CHAR(DATE_ADD(t.unit_time,INTERVAL 5 MINUTE),'YYYY-MM-DD HH24:MI:00') when #{groupType}=0 then DATE_FORMAT(DATE_ADD(t.unit_time,INTERVAL 5 MINUTE),'%Y-%m-%d %H:%i:00')
when #{groupType}=1 then TO_CHAR(DATE_ADD(t.unit_time,INTERVAL 15 MINUTE),'YYYY-MM-DD HH24:MI:00') when #{groupType}=1 then DATE_FORMAT(DATE_ADD(t.unit_time,INTERVAL 15 MINUTE),'%Y-%m-%d %H:%i:00')
when #{groupType}=2 then TO_CHAR(DATE_ADD(t.unit_time,INTERVAL 30 MINUTE),'YYYY-MM-DD HH24:MI:00') when #{groupType}=2 then DATE_FORMAT(DATE_ADD(t.unit_time,INTERVAL 30 MINUTE),'%Y-%m-%d %H:%i:00')
when #{groupType}=3 then TO_CHAR(DATE_ADD(t.unit_time,INTERVAL 60 MINUTE),'YYYY-MM-DD HH24:00:00') when #{groupType}=3 then DATE_FORMAT(DATE_ADD(t.unit_time,INTERVAL 60 MINUTE),'%Y-%m-%d %H:00:00')
end end
) end_time, ) end_time,
cross_id , cross_id ,
...@@ -48,17 +48,17 @@ ...@@ -48,17 +48,17 @@
round(AVG(sturation),4) sturation, round(AVG(sturation),4) sturation,
round(AVG(green_light_efficiency),4) green_light_efficiency, round(AVG(green_light_efficiency),4) green_light_efficiency,
round(AVG(vehicle_length_ratio_mean),4) vehicle_length_ratio_mean, round(AVG(vehicle_length_ratio_mean),4) vehicle_length_ratio_mean,
STRING_AGG(service_level||'',',') service_level group_concat(service_level) service_level
FROM FROM
( (
SELECT start_time, SELECT start_time,
(case (case
when #{groupType}=0 then TO_CHAR(concat( TO_CHAR( start_time,'YYYY-MM-DD' ), ' ', TO_CHAR( start_time,'HH24' ), ':', floor( EXTRACT(MINUTE FROM start_time ) / 5 ) * 5 ),'YYYY-MM-DD HH24:MI:00' ) when #{groupType}=0 then DATE_FORMAT(concat( date( start_time ), ' ', HOUR ( start_time ), ':', floor( MINUTE ( start_time ) / 5 ) * 5 ),'%Y-%m-%d %H:%i:00' )
when #{groupType}=1 then TO_CHAR(concat( TO_CHAR( start_time,'YYYY-MM-DD' ), ' ', TO_CHAR( start_time,'HH24' ), ':', floor( EXTRACT(MINUTE FROM start_time ) / 15 ) * 15 ),'YYYY-MM-DD HH24:MI:00' ) when #{groupType}=1 then DATE_FORMAT(concat( date( start_time ), ' ', HOUR ( start_time ), ':', floor( MINUTE ( start_time ) / 15 ) * 15 ),'%Y-%m-%d %H:%i:00' )
when #{groupType}=2 then TO_CHAR(concat( TO_CHAR( start_time,'YYYY-MM-DD' ), ' ', TO_CHAR( start_time,'HH24' ), ':', floor( EXTRACT(MINUTE FROM start_time ) / 30 ) * 30 ),'YYYY-MM-DD HH24:MI:00' ) when #{groupType}=2 then DATE_FORMAT(concat( date( start_time ), ' ', HOUR ( start_time ), ':', floor( MINUTE ( start_time ) / 30 ) * 30 ),'%Y-%m-%d %H:%i:00' )
when #{groupType}=3 then TO_CHAR(start_time,'YYYY-MM-DD HH24:00:00' ) when #{groupType}=3 then DATE_FORMAT(start_time,'%Y-%m-%d %H:00:00' )
when #{groupType}=4 then TO_CHAR(start_time,'YYYY-MM-DD 00:00:00' ) when #{groupType}=4 then DATE_FORMAT(start_time,'%Y-%m-%d 00:00:00' )
else TO_CHAR(start_time,'YYYY-01-01 00:00:00') <!-- 按查询时间范围不分粒度进行聚合处理 --> else DATE_FORMAT(start_time,'%Y-01-01 00:00:00') <!-- 按查询时间范围不分粒度进行聚合处理 -->
end end
) unit_time, ) unit_time,
t.cross_id, t.cross_id,
...@@ -68,7 +68,7 @@ ...@@ -68,7 +68,7 @@
null as lane_no, null as lane_no,
null as dir_type, null as dir_type,
null as turn_type, null as turn_type,
COALESCE(service_level,'A') service_level, ifnull(service_level,'A') service_level,
traffic_index, traffic_index,
green_light_efficiency, green_light_efficiency,
null as vehicle_length_ratio_mean, null as vehicle_length_ratio_mean,
...@@ -123,8 +123,8 @@ ...@@ -123,8 +123,8 @@
and t.cross_id = #{crossId} and t.cross_id = #{crossId}
</if> </if>
<if test="startDate !=null and endDate !=null"> <if test="startDate !=null and endDate !=null">
and dt >= TO_CHAR(#{startDate},'YYYYMMDD') and dt &lt;= TO_CHAR(#{endDate},'YYYYMMDD') and dt >= date_format(#{startDate},'%Y%m%d') and dt &lt;= date_format(#{endDate},'%Y%m%d')
AND start_time >= TO_TIMESTAMP(#{startDate},'YYYY-MM-DD HH24:MI:SS') and start_time &lt; TO_TIMESTAMP(#{endDate},'YYYY-MM-DD HH24:MI:SS') AND start_time >= #{startDate} and start_time &lt; #{endDate}
</if> </if>
<choose> <choose>
<!-- 方向级 --> <!-- 方向级 -->
......
...@@ -16,7 +16,7 @@ ...@@ -16,7 +16,7 @@
FROM FROM
( (
SELECT t1.cross_id,t1.event_serial_number,t1.type, SELECT t1.cross_id,t1.event_serial_number,t1.type,
extract(epoch from (t1.end_time - t1.start_time)) duration, TIMESTAMPDIFF(SECOND,t1.start_time,t1.end_time) duration,
t2.event_id t2.event_id
from t_event_info t1 from t_event_info t1
left JOIN left JOIN
...@@ -26,7 +26,7 @@ ...@@ -26,7 +26,7 @@
AND t2.cross_id=#{crossId} AND t2.cross_id=#{crossId}
</if> </if>
<if test="startTime!=null and endTime!=null"> <if test="startTime!=null and endTime!=null">
AND t2.issue_time>= TO_TIMESTAMP(#{startTime},'YYYY-MM-DD HH24:MI:SS') and t2.issue_time &lt;=TO_TIMESTAMP(#{endTime},'YYYY-MM-DD HH24:MI:SS') AND t2.issue_time>=#{startTime} and t2.issue_time &lt;=#{endTime}
</if> </if>
<if test="currentAlgo!=null and currentAlgo!=''"> <if test="currentAlgo!=null and currentAlgo!=''">
AND t2.current_algo=#{currentAlgo} AND t2.current_algo=#{currentAlgo}
...@@ -36,7 +36,7 @@ ...@@ -36,7 +36,7 @@
AND t1.cross_id=#{crossId} AND t1.cross_id=#{crossId}
</if> </if>
<if test="startTime!=null and endTime!=null"> <if test="startTime!=null and endTime!=null">
AND t1.start_time>=TO_TIMESTAMP(#{startTime},'YYYY-MM-DD HH24:MI:SS') and t1.start_time &lt;=TO_TIMESTAMP(#{endTime},'YYYY-MM-DD HH24:MI:SS') AND t1.start_time>=#{startTime} and t1.start_time &lt;=#{endTime}
</if> </if>
<if test="evenType!=null and evenType!='' "> <if test="evenType!=null and evenType!='' ">
AND t1.type=#{evenType} AND t1.type=#{evenType}
...@@ -51,8 +51,7 @@ ...@@ -51,8 +51,7 @@
FROM FROM
( (
SELECT t1.cross_id,t1.event_serial_number, SELECT t1.cross_id,t1.event_serial_number,
t1.type, t1.type,TIMESTAMPDIFF(SECOND,t1.start_time,t1.end_time) duration,
extract(epoch from (t1.end_time - t1.start_time)) duration,
t2.event_id t2.event_id
from t_event_info t1 from t_event_info t1
left JOIN left JOIN
...@@ -62,7 +61,7 @@ ...@@ -62,7 +61,7 @@
AND t2.cross_id=#{crossId} AND t2.cross_id=#{crossId}
</if> </if>
<if test="contrastStartTime!=null and constrastEndTime!=null"> <if test="contrastStartTime!=null and constrastEndTime!=null">
AND t2.issue_time>= TO_TIMESTAMP(#{contrastStartTime},'YYYY-MM-DD HH24:MI:SS') and t2.issue_time &lt;=TO_TIMESTAMP(#{constrastEndTime},'YYYY-MM-DD HH24:MI:SS') AND t2.issue_time>=#{contrastStartTime} and t2.issue_time &lt;=#{constrastEndTime}
</if> </if>
<if test="currentAlgo!=null"> <if test="currentAlgo!=null">
AND t2.current_algo=#{currentAlgo} AND t2.current_algo=#{currentAlgo}
...@@ -73,7 +72,7 @@ ...@@ -73,7 +72,7 @@
AND t1.cross_id=#{crossId} AND t1.cross_id=#{crossId}
</if> </if>
<if test="contrastStartTime!=null and constrastEndTime!=null"> <if test="contrastStartTime!=null and constrastEndTime!=null">
AND t1.start_time>=TO_TIMESTAMP(#{contrastStartTime},'YYYY-MM-DD HH24:MI:SS') and t1.start_time &lt;=TO_TIMESTAMP(#{constrastEndTime},'YYYY-MM-DD HH24:MI:SS') AND t1.start_time>=#{contrastStartTime} and t1.start_time &lt;=#{constrastEndTime}
</if> </if>
<if test="evenType!=null"> <if test="evenType!=null">
AND t1.type=#{evenType} AND t1.type=#{evenType}
......
...@@ -157,7 +157,7 @@ ...@@ -157,7 +157,7 @@
<include refid="fuzzySearch"/> <include refid="fuzzySearch"/>
</where> </where>
<!--ORDER BY `dt_create_date` DESC--> <!--ORDER BY `dt_create_date` DESC-->
limit #{pageSize} OFFSET #{startRowNum} - 1 limit #{startRowNum}, #{pageSize}
</select> </select>
<!--更新--> <!--更新-->
...@@ -435,17 +435,17 @@ ...@@ -435,17 +435,17 @@
</sql> </sql>
<select id="getListByStartAndEnd" parameterType="java.util.Map" resultType="java.util.Map"> <select id="getListByStartAndEnd" parameterType="java.util.Map" resultType="java.util.Map">
SELECT TO_CHAR(start_time,'YYYY-MM-DD HH24:MI:SS') startTime, SELECT DATE_FORMAT(start_time,'%Y-%m-%d %H:%i:%s') startTime,
TO_CHAR(end_time,'YYYY-MM-DD HH24:MI:SS') endTime, DATE_FORMAT(end_time,'%Y-%m-%d %H:%i:%s') endTime,
ABS(extract(epoch from (end_time - start_time))) AS duration, ABS(TIMESTAMPDIFF( SECOND, start_time, end_time )) AS duration,
info.type, info.type,
c.label as typeName, c.label as typeName,
dir dir
FROM t_event_info info FROM t_event_info info
JOIN t_config_event_category c ON info.type = c.event_type JOIN t_config_event_category c ON info.type = c.event_type
WHERE cross_id = #{crossId} WHERE cross_id = #{crossId}
and start_time >= TO_TIMESTAMP(#{startTime},'YYYY-MM-DD HH24:MI:SS') and start_time >= #{startTime}
AND end_time &lt; TO_TIMESTAMP(#{endTime},'YYYY-MM-DD HH24:MI:SS') AND end_time &lt; #{endTime}
AND end_time is not null AND end_time is not null
ORDER BY ORDER BY
start_time DESC start_time DESC
...@@ -457,7 +457,7 @@ ...@@ -457,7 +457,7 @@
INSERT INTO t_analysis_cross_slow_run_event ( cross_id, dir, start_time, end_time, dt, insert_time ) INSERT INTO t_analysis_cross_slow_run_event ( cross_id, dir, start_time, end_time, dt, insert_time )
SELECT SELECT
cross_id, cross_id,
concat( '[', STRING_AGG(dir_type||'',','), ']' ) dir, concat( '[', GROUP_CONCAT( dir_type ), ']' ) dir,
start_time, start_time,
DATE_ADD( start_time, INTERVAL 5 MINUTE ) AS end_time, DATE_ADD( start_time, INTERVAL 5 MINUTE ) AS end_time,
dt, dt,
...@@ -465,18 +465,20 @@ ...@@ -465,18 +465,20 @@
FROM FROM
t_cross_dir_data_hist t_cross_dir_data_hist
WHERE WHERE
start_time >= TO_TIMESTAMP(#{startTime},'YYYY-MM-DD HH24:MI:SS') and start_time &lt; TO_TIMESTAMP(#{endTime},'YYYY-MM-DD HH24:MI:SS') start_time >= #{startTime} and start_time &lt; #{endTime}
AND `status` = 2 AND `status` = 2
GROUP BY GROUP BY
cross_id, cross_id,
start_time start_time
HAVING HAVING
count(*)>=2 count(*)>=2
ON CONFLICT (cross_id,dir,start_time) ON DUPLICATE KEY UPDATE
DO UPDATE SET cross_id=values(cross_id),
end_time=EXCLUDED.end_time, dir=values(dir),
dt=EXCLUDED.dt, start_time=values(start_time),
insert_time=EXCLUDED.insert_time end_time=values(end_time),
dt=values(dt),
insert_time=values(insert_time)
</insert> </insert>
</mapper> </mapper>
...@@ -7,8 +7,8 @@ ...@@ -7,8 +7,8 @@
FROM t_event_optimize_info FROM t_event_optimize_info
WHERE 1=1 WHERE 1=1
<if test="startTime != null and endTime != null"> <if test="startTime != null and endTime != null">
AND happen_start_time >= TO_TIMESTAMP(#{startTime},'YYYY-MM-DD HH24:MI:SS') AND happen_start_time >= #{startTime}
AND happen_start_time &lt;= TO_TIMESTAMP(#{endTime},'YYYY-MM-DD HH24:MI:SS') AND happen_start_time &lt;= #{endTime}
</if> </if>
<if test="crossId != null"> <if test="crossId != null">
AND cross_id = #{crossId} AND cross_id = #{crossId}
...@@ -39,8 +39,8 @@ ...@@ -39,8 +39,8 @@
<select id="selectPageWithCrossIdAndGreenId" parameterType="map" resultType="net.wanji.opt.entity.eventoptimize.TEventOptimizeInfo"> <select id="selectPageWithCrossIdAndGreenId" parameterType="map" resultType="net.wanji.opt.entity.eventoptimize.TEventOptimizeInfo">
SELECT * SELECT *
FROM t_event_optimize_info FROM t_event_optimize_info
WHERE (#{startTime} IS NULL OR happen_start_time >= TO_TIMESTAMP(#{startTime},'YYYY-MM-DD HH24:MI:SS')) WHERE (#{startTime} IS NULL OR happen_start_time >= #{startTime})
AND (#{endTime} IS NULL OR happen_end_time &lt;= TO_TIMESTAMP(#{endTime},'YYYY-MM-DD HH24:MI:SS')) AND (#{endTime} IS NULL OR happen_end_time &lt;= #{endTime})
AND (#{crossId} IS NULL OR cross_id = #{crossId}) AND (#{crossId} IS NULL OR cross_id = #{crossId})
AND (#{greenId} IS NULL OR green_id = #{greenId}) AND (#{greenId} IS NULL OR green_id = #{greenId})
AND opt_status != 0 AND opt_status != 0
...@@ -49,7 +49,7 @@ ...@@ -49,7 +49,7 @@
<select id="getCrossOptimizeDistribute" parameterType="map" resultType="java.util.Map"> <select id="getCrossOptimizeDistribute" parameterType="map" resultType="java.util.Map">
SELECT SELECT
(CASE (CASE
WHEN #{groupType} = 4 THEN T0_CHAR(unit_time, 'YYYY-MM-DD') -- 按天粒度格式化为 yyyy-MM-dd WHEN #{groupType} = 4 THEN DATE_FORMAT(unit_time, '%Y-%m-%d') -- 按天粒度格式化为 yyyy-MM-dd
ELSE unit_time -- 其他粒度格式化为 HH:mm ELSE unit_time -- 其他粒度格式化为 HH:mm
END) AS time_label, END) AS time_label,
event_type, event_type,
...@@ -58,11 +58,11 @@ ...@@ -58,11 +58,11 @@
FROM ( FROM (
SELECT SELECT
(CASE (CASE
WHEN #{groupType} = 0 THEN TO_CHAR(CONCAT(TO_CHAR(happen_start_time,'YYYY-MM-DD'), ' ', TO_CHAR(happen_start_time,'HH24'), ':', FLOOR(EXTRACT(MINUTE FROM happen_start_time) / 5) * 5), 'YYYY-MM-DD HH24:MI:00') WHEN #{groupType} = 0 THEN DATE_FORMAT(CONCAT(DATE(happen_start_time), ' ', HOUR(happen_start_time), ':', FLOOR(MINUTE(happen_start_time) / 5) * 5), '%Y-%m-%d %H:%i:00')
WHEN #{groupType} = 1 THEN TO_CHAR(CONCAT(TO_CHAR(happen_start_time,'YYYY-MM-DD'), ' ', TO_CHAR(happen_start_time,'HH24'), ':', FLOOR(EXTRACT(MINUTE FROM happen_start_time) / 15) * 15), 'YYYY-MM-DD HH24:MI:00') WHEN #{groupType} = 1 THEN DATE_FORMAT(CONCAT(DATE(happen_start_time), ' ', HOUR(happen_start_time), ':', FLOOR(MINUTE(happen_start_time) / 15) * 15), '%Y-%m-%d %H:%i:00')
WHEN #{groupType} = 2 THEN TO_CHAR(CONCAT(TO_CHAR(happen_start_time,'YYYY-MM-DD'), ' ', TO_CHAR(happen_start_time,'HH24'), ':', FLOOR(EXTRACT(MINUTE FROM happen_start_time) / 30) * 30), 'YYYY-MM-DD HH24:MI:00') WHEN #{groupType} = 2 THEN DATE_FORMAT(CONCAT(DATE(happen_start_time), ' ', HOUR(happen_start_time), ':', FLOOR(MINUTE(happen_start_time) / 30) * 30), '%Y-%m-%d %H:%i:00')
WHEN #{groupType} = 3 THEN TO_CHAR(happen_start_time, 'YYYY-MM-DD HH24:00:00') WHEN #{groupType} = 3 THEN DATE_FORMAT(happen_start_time, '%Y-%m-%d %H:00:00')
WHEN #{groupType} = 4 THEN TO_CHAR(happen_start_time, 'YYYY-MM-DD 00:00:00') WHEN #{groupType} = 4 THEN DATE_FORMAT(happen_start_time, '%Y-%m-%d 00:00:00')
END) AS unit_time, END) AS unit_time,
event_type, event_type,
COUNT(*) AS total_count, COUNT(*) AS total_count,
...@@ -76,8 +76,8 @@ ...@@ -76,8 +76,8 @@
AND green_id = #{greenId} AND green_id = #{greenId}
</if> </if>
<if test="startTime != null and endTime != null"> <if test="startTime != null and endTime != null">
AND happen_start_time >= TO_TIMESTAMP(#{startTime},'YYYY-MM-DD HH24:MI:SS')) AND happen_start_time >= #{startTime}
AND happen_start_time &lt; TO_TIMESTAMP(#{endTime},'YYYY-MM-DD HH24:MI:SS')) AND happen_start_time &lt; #{endTime}
</if> </if>
GROUP BY unit_time, event_type GROUP BY unit_time, event_type
) t ) t
...@@ -94,8 +94,8 @@ ...@@ -94,8 +94,8 @@
JOIN t_config_event_category t2 ON t1.event_type=t2.event_type JOIN t_config_event_category t2 ON t1.event_type=t2.event_type
WHERE 1=1 WHERE 1=1
<if test="startTime != null and endTime != null"> <if test="startTime != null and endTime != null">
AND happen_start_time >= TO_TIMESTAMP(#{startTime},'YYYY-MM-DD HH24:MI:SS')) AND happen_start_time >= #{startTime}
AND happen_start_time &lt;= TO_TIMESTAMP(#{endTime},'YYYY-MM-DD HH24:MI:SS')) AND happen_start_time &lt;= #{endTime}
</if> </if>
<if test="greenId != null and greenId != ''"> <if test="greenId != null and greenId != ''">
AND green_id = #{greenId} AND green_id = #{greenId}
......
...@@ -18,6 +18,18 @@ ...@@ -18,6 +18,18 @@
</properties> </properties>
<dependencies> <dependencies>
<!-- 瀚高数据库-->
<dependency>
<groupId>com.highgo</groupId>
<artifactId>HgdbJdbc</artifactId>
</dependency>
<!-- 中创中间件inforsuite-->
<dependency>
<groupId>com.cvicse.embedded</groupId>
<artifactId>spring-boot-starter-inforsuite</artifactId>
</dependency>
<dependency> <dependency>
<groupId>com.squareup.okhttp3</groupId> <groupId>com.squareup.okhttp3</groupId>
<artifactId>okhttp</artifactId> <artifactId>okhttp</artifactId>
...@@ -59,6 +71,12 @@ ...@@ -59,6 +71,12 @@
<dependency> <dependency>
<groupId>org.springframework.boot</groupId> <groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-websocket</artifactId> <artifactId>spring-boot-starter-websocket</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
</exclusions>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.springframework.boot</groupId> <groupId>org.springframework.boot</groupId>
...@@ -71,6 +89,12 @@ ...@@ -71,6 +89,12 @@
<dependency> <dependency>
<groupId>org.springframework.boot</groupId> <groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId> <artifactId>spring-boot-starter-web</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
</exclusions>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.baomidou</groupId> <groupId>com.baomidou</groupId>
...@@ -216,14 +240,14 @@ ...@@ -216,14 +240,14 @@
<verbose>true</verbose> <verbose>true</verbose>
<overwrite>true</overwrite> <overwrite>true</overwrite>
</configuration> </configuration>
<dependencies> <!-- <dependencies>-->
<!-- 数据库驱动 --> <!-- &lt;!&ndash; 数据库驱动 &ndash;&gt;-->
<dependency> <!-- <dependency>-->
<groupId>mysql</groupId> <!-- <groupId>mysql</groupId>-->
<artifactId>mysql-connector-java</artifactId> <!-- <artifactId>mysql-connector-java</artifactId>-->
<version>${mysql.connector.version}</version> <!-- <version>${mysql.connector.version}</version>-->
</dependency> <!-- </dependency>-->
</dependencies> <!-- </dependencies>-->
</plugin> </plugin>
<!-- swagger 导出配置 --> <!-- swagger 导出配置 -->
......
...@@ -3,10 +3,7 @@ package net.wanji.opt.common.exception; ...@@ -3,10 +3,7 @@ package net.wanji.opt.common.exception;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import net.wanji.common.framework.exceptionhandler.GlobalExceptionHandler; import net.wanji.common.framework.exceptionhandler.GlobalExceptionHandler;
import net.wanji.common.framework.rest.JsonViewObject; import net.wanji.common.framework.rest.JsonViewObject;
import org.apache.catalina.connector.ClientAbortException;
import org.springframework.http.HttpStatus;
import org.springframework.web.bind.annotation.ExceptionHandler; import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.ResponseStatus;
import org.springframework.web.bind.annotation.RestControllerAdvice; import org.springframework.web.bind.annotation.RestControllerAdvice;
/** /**
...@@ -30,11 +27,4 @@ public class OptExceptionHandler extends GlobalExceptionHandler { ...@@ -30,11 +27,4 @@ public class OptExceptionHandler extends GlobalExceptionHandler {
public JsonViewObject OptServiceExceptionHandler(OptServiceException e) { public JsonViewObject OptServiceExceptionHandler(OptServiceException e) {
return JsonViewObject.newInstance().fail(e.getMessage(), "optService服务调用异常"); return JsonViewObject.newInstance().fail(e.getMessage(), "optService服务调用异常");
} }
@ExceptionHandler(value = ClientAbortException.class)
@ResponseStatus(HttpStatus.OK)
public JsonViewObject clientExceptionHandler(ClientAbortException ex) {
log.error("ClientAbortException异常opt:{}", ex);
return JsonViewObject.newInstance().success("");
}
} }
\ No newline at end of file
spring:
cloud:
nacos:
config:
server-addr: 37.8.219.227:28848
file-extension: yaml
group: signal
namespace: signal
username: nacos
password: Nacos@2025
application:
# dubbo启动需要程序名称
name: signal-optimize-service
main:
allow-circular-references: true
inforsuite:
license-path: D:\license
spring: spring:
profiles: profiles:
active: docker active: dockerCH
...@@ -29,14 +29,15 @@ ...@@ -29,14 +29,15 @@
</resultMap> </resultMap>
<sql id="Base_Column_List"> <sql id="Base_Column_List">
id, cross_id, scheme_id, dir_type, turn_type, offset, ring_no, phase_no, phase_order_id, ori_green_time, id
, cross_id, scheme_id, dir_type, turn_type, offset, ring_no, phase_no, phase_order_id, ori_green_time,
opt_time, opt_type, opt_reason, start_time, end_time, is_relation, relation_cross_id, opt_result, opt_result_desc, opt_time, opt_type, opt_reason, start_time, end_time, is_relation, relation_cross_id, opt_result, opt_result_desc,
data_batch_time, restore_result, data_extend data_batch_time, restore_result, data_extend
</sql> </sql>
<select id="selectByCrossId" parameterType="String" resultMap="BaseResultMap"> <select id="selectByCrossId" parameterType="String" resultMap="BaseResultMap">
select select
<include refid="Base_Column_List"/> <include refid="Base_Column_List"/>
from t_base_cross_scheme_opt_log from t_base_cross_scheme_opt_log
<where> <where>
<if test="crossId != null and crossId != ''"> <if test="crossId != null and crossId != ''">
...@@ -50,7 +51,7 @@ ...@@ -50,7 +51,7 @@
<include refid="Base_Column_List"/> <include refid="Base_Column_List"/>
from t_base_cross_scheme_opt_log from t_base_cross_scheme_opt_log
where cross_id = #{crossId} where cross_id = #{crossId}
and data_batch_time=(SELECT MAX(ABS(data_batch_time)) FROM t_base_cross_scheme_opt_log WHERE cross_id = #{crossId}); and data_batch_time=(SELECT MAX(ABS(data_batch_time)) FROM t_base_cross_scheme_opt_log WHERE cross_id = #{crossId});
</select> </select>
<select id="selectOptStartEntity" resultType="net.wanji.opt.po.base.CrossSchemeOptLogPO"> <select id="selectOptStartEntity" resultType="net.wanji.opt.po.base.CrossSchemeOptLogPO">
...@@ -72,10 +73,10 @@ ...@@ -72,10 +73,10 @@
<insert id="insertOne" parameterType="net.wanji.opt.po.base.CrossSchemeOptLogPO"> <insert id="insertOne" parameterType="net.wanji.opt.po.base.CrossSchemeOptLogPO">
insert into t_base_cross_scheme_opt_log (cross_id, scheme_id, dir_type, turn_type, offset, ring_no, phase_no, insert into t_base_cross_scheme_opt_log (cross_id, scheme_id, dir_type, turn_type, offset, ring_no, phase_no,
phase_order_id, ori_green_time, opt_time, opt_type, opt_reason, phase_order_id, ori_green_time, opt_time, opt_type, opt_reason,
start_time, start_time,
end_time, is_relation, relation_cross_id, opt_result, opt_result_desc, end_time, is_relation, relation_cross_id, opt_result, opt_result_desc,
data_batch_time, restore_result, data_extend) data_batch_time, restore_result, data_extend)
values (#{crossId}, #{schemeId}, #{dirType}, #{turnType}, #{offset}, #{ringNo}, #{phaseNo}, #{phaseOrderId}, values (#{crossId}, #{schemeId}, #{dirType}, #{turnType}, #{offset}, #{ringNo}, #{phaseNo}, #{phaseOrderId},
#{oriGreenTime}, #{optTime}, #{optType}, #{optReason}, #{startTime}, #{endTime}, #{relationFlag}, #{oriGreenTime}, #{optTime}, #{optType}, #{optReason}, #{startTime}, #{endTime}, #{relationFlag},
#{relationCrossId}, #{optResult}, #{optResultDesc}, #{dataBatchTime}, #{restoreResult}, #{dataExtend}) #{relationCrossId}, #{optResult}, #{optResultDesc}, #{dataBatchTime}, #{restoreResult}, #{dataExtend})
...@@ -83,16 +84,19 @@ ...@@ -83,16 +84,19 @@
<insert id="insertBatch" parameterType="net.wanji.opt.po.base.CrossSchemeOptLogPO"> <insert id="insertBatch" parameterType="net.wanji.opt.po.base.CrossSchemeOptLogPO">
insert into t_base_cross_scheme_opt_log insert into t_base_cross_scheme_opt_log
(cross_id, scheme_id, dir_type, turn_type, offset, ring_no, phase_no, (cross_id, scheme_id, dir_type, turn_type, offset, ring_no, phase_no,
phase_order_id, ori_green_time, opt_time, opt_type, opt_reason, phase_order_id, ori_green_time, opt_time, opt_type, opt_reason,
start_time, end_time, is_relation, relation_cross_id, opt_result, opt_result_desc, start_time, end_time, is_relation, relation_cross_id, opt_result, opt_result_desc,
data_batch_time, restore_result, data_extend) data_batch_time, restore_result, data_extend)
values values
<foreach collection="list" item="entity" separator=","> <foreach collection="list" item="entity" separator=",">
(#{entity.crossId}, #{entity.schemeId}, #{entity.dirType}, #{entity.turnType}, #{entity.offset}, #{entity.ringNo}, #{entity.phaseNo}, #{entity.phaseOrderId}, (#{entity.crossId}, #{entity.schemeId}, #{entity.dirType}, #{entity.turnType}, #{entity.offset},
#{entity.oriGreenTime}, #{entity.optTime}, #{entity.optType}, #{entity.optReason}, #{entity.startTime}, #{entity.endTime}, #{entity.relationFlag}, #{entity.ringNo}, #{entity.phaseNo}, #{entity.phaseOrderId},
#{entity.relationCrossId}, #{entity.optResult}, #{entity.optResultDesc}, #{entity.dataBatchTime}, #{entity.restoreResult}, #{entity.dataExtend}) #{entity.oriGreenTime}, #{entity.optTime}, #{entity.optType}, #{entity.optReason}, #{entity.startTime},
</foreach> #{entity.endTime}, #{entity.relationFlag},
#{entity.relationCrossId}, #{entity.optResult}, #{entity.optResultDesc}, #{entity.dataBatchTime},
#{entity.restoreResult}, #{entity.dataExtend})
</foreach>
</insert> </insert>
</mapper> </mapper>
\ No newline at end of file
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
t2.traffic_index as trafficIndex, t1.wkt, t2.trval_time as travelTime, t2.speed t2.traffic_index as trafficIndex, t1.wkt, t2.trval_time as travelTime, t2.speed
from t_greenwave_info t1 from t_greenwave_info t1
left join t_greenwave_realtime t2 on t1.id = t2.green_id left join t_greenwave_realtime t2 on t1.id = t2.green_id
and t2.start_time > curdate() and t2.start_time > current_date
</select> </select>
</mapper> </mapper>
\ No newline at end of file
...@@ -4,64 +4,127 @@ ...@@ -4,64 +4,127 @@
"http://mybatis.org/dtd/mybatis-3-mapper.dtd"> "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="net.wanji.opt.dao.mapper.StrategyGreenOptHistMapper"> <mapper namespace="net.wanji.opt.dao.mapper.StrategyGreenOptHistMapper">
<!-- <select id="selectByGreenId" resultType="net.wanji.opt.po.StrategyGreenOptHistEntity" parameterType="String">-->
<!-- select *-->
<!-- from t_strategy_green_opt_hist a-->
<!-- inner join (-->
<!-- &#45;&#45; 先查询出最后一条数据的时间-->
<!-- select `green_id`, MAX(`control_time`) control_time from t_strategy_green_opt_hist group by `green_id`-->
<!-- ) b on a.`green_id` = b.`green_id` and a.`control_time` = b.`control_time`-->
<!-- and a.`green_id` = #{greenId} and a.`control_method` = 1-->
<!-- and TIMESTAMPDIFF(SECOND,a.`control_time`, now()) &lt; a.`control_duration`-->
<!-- </select>-->
<select id="selectByGreenId" resultType="net.wanji.opt.po.StrategyGreenOptHistEntity" parameterType="String"> <select id="selectByGreenId" resultType="net.wanji.opt.po.StrategyGreenOptHistEntity" parameterType="String">
select * SELECT *
from t_strategy_green_opt_hist a FROM t_strategy_green_opt_hist a
inner join ( INNER JOIN (
-- 先查询出最后一条数据的时间 SELECT green_id, MAX(control_time) control_time
select `green_id`, MAX(`control_time`) control_time from t_strategy_green_opt_hist group by `green_id` FROM t_strategy_green_opt_hist
) b on a.`green_id` = b.`green_id` and a.`control_time` = b.`control_time` GROUP BY green_id
and a.`green_id` = #{greenId} and a.`control_method` = 1 ) b ON a.green_id = b.green_id AND a.control_time = b.control_time
and TIMESTAMPDIFF(SECOND,a.`control_time`, now()) &lt; a.`control_duration` WHERE a.green_id = #{greenId}
AND a.control_method = 1
AND EXTRACT(EPOCH FROM (NOW() - a.control_time)) <![CDATA[ < ]]> a.control_duration
</select> </select>
<!-- 查询绿波优化记录表当天结束的绿波--> <!-- 查询绿波优化记录表当天结束的绿波-->
<!-- <select id="selectGreenOptEndTimeEquipCode" resultType="net.wanji.opt.dto.induce.MessageParam">-->
<!-- select t1.green_id as greenId,-->
<!-- t1.control_time as endTime,-->
<!-- t2.equip_code as equipCode,-->
<!-- t2.id as induceId,-->
<!-- t2.source_id as sourceId-->
<!-- from (select green_id, max(control_time) control_time-->
<!-- from t_strategy_green_opt_hist t1-->
<!-- where control_time > CURDATE()-->
<!-- and control_method = -1-->
<!-- group by green_id) t1-->
<!-- left join t_greenwave_induces t2 on t1.green_id = t2.green_id-->
<!-- </select>-->
<select id="selectGreenOptEndTimeEquipCode" resultType="net.wanji.opt.dto.induce.MessageParam"> <select id="selectGreenOptEndTimeEquipCode" resultType="net.wanji.opt.dto.induce.MessageParam">
select t1.green_id as greenId, SELECT t1.green_id AS greenId,
t1.control_time as endTime, t1.control_time AS endTime,
t2.equip_code as equipCode, t2.equip_code AS equipCode,
t2.id as induceId, t2.id AS induceId,
t2.source_id as sourceId t2.source_id AS sourceId
from (select green_id, max(control_time) control_time FROM (
from t_strategy_green_opt_hist t1 SELECT green_id, MAX(control_time) control_time
where control_time > CURDATE() FROM t_strategy_green_opt_hist t1
and control_method = -1 WHERE control_time > CURRENT_DATE
group by green_id) t1 AND control_method = -1
left join t_greenwave_induces t2 on t1.green_id = t2.green_id GROUP BY green_id
) t1
LEFT JOIN t_greenwave_induces t2 ON t1.green_id :: INTEGER = t2.green_id
</select> </select>
<!-- 查询最新的绿波优化记录列表 --> <!-- 查询最新的绿波优化记录列表 -->
<!-- <select id="selectLastGreenOptResultList" resultType="net.wanji.opt.vo2.dto.GreenLastOptResultDTO">-->
<!-- select t2.green_id as greenId,-->
<!-- DATE_FORMAT(t2.control_time, '%Y-%m-%d %H:%i:%s') as optTime,-->
<!-- t2.control_duration as duration,-->
<!-- t2.response_code as responseCode,-->
<!-- t2.control_method as controlMethod-->
<!-- from (select max(id) id, green_id-->
<!-- from t_strategy_green_opt_hist-->
<!-- where control_time > curdate()-->
<!-- group by green_id) t1-->
<!-- inner join t_strategy_green_opt_hist t2 on t1.id = t2.id and t1.green_id = t2.green_id-->
<!-- </select>-->
<select id="selectLastGreenOptResultList" resultType="net.wanji.opt.vo2.dto.GreenLastOptResultDTO"> <select id="selectLastGreenOptResultList" resultType="net.wanji.opt.vo2.dto.GreenLastOptResultDTO">
select t2.green_id as greenId, SELECT t2.green_id AS greenId,
DATE_FORMAT(t2.control_time, '%Y-%m-%d %H:%i:%s') as optTime, TO_CHAR(t2.control_time, 'YYYY-MM-DD HH24:MI:SS') AS optTime,
t2.control_duration as duration, t2.control_duration AS duration,
t2.response_code as responseCode, t2.response_code AS responseCode,
t2.control_method as controlMethod t2.control_method AS controlMethod
from (select max(id) id, green_id FROM (
from t_strategy_green_opt_hist SELECT MAX(id) id, green_id
where control_time > curdate() FROM t_strategy_green_opt_hist
group by green_id) t1 WHERE control_time <![CDATA[ > ]]> CURRENT_DATE
inner join t_strategy_green_opt_hist t2 on t1.id = t2.id and t1.green_id = t2.green_id GROUP BY green_id
) t1
INNER JOIN t_strategy_green_opt_hist t2 ON t1.id = t2.id AND t1.green_id = t2.green_id
</select> </select>
<!-- 查询上周优化记录 --> <!-- 查询上周优化记录 -->
<!-- <select id="findGreenWaveOptHist" resultType="net.wanji.opt.dto.report.StrategyGreenOptHistDTO">-->
<!-- SELECT a.green_id,-->
<!-- a.dir as road_direction,-->
<!-- a.type as stragety_id,-->
<!-- a.control_time,-->
<!-- a.control_duration,-->
<!-- a.control_method,-->
<!-- min(DATE_SUB(CURDATE(), INTERVAL (WEEKDAY(CURDATE()) + 7) DAY)) week_start_day,-->
<!-- max(DATE_SUB(CURDATE(), INTERVAL (WEEKDAY(CURDATE()) ) +1 DAY)) week_end_day,-->
<!-- concat(year(control_time),'',(week(control_time)+1)) year_week,-->
<!-- (WEEKDAY(control_time)+1) week_day-->
<!-- FROM t_strategy_green_opt_hist a-->
<!-- WHERE control_time >= DATE_SUB(CURDATE(), INTERVAL (WEEKDAY(CURDATE()) + 7) DAY)-->
<!-- and control_time &lt; DATE_SUB(CURDATE(), INTERVAL (WEEKDAY(CURDATE()) ) DAY)-->
<!-- and control_method in (-1, 1)-->
<!-- group by green_id, control_time, control_duration, control_method-->
<!-- ORDER BY green_id,control_time-->
<!-- </select>-->
<select id="findGreenWaveOptHist" resultType="net.wanji.opt.dto.report.StrategyGreenOptHistDTO"> <select id="findGreenWaveOptHist" resultType="net.wanji.opt.dto.report.StrategyGreenOptHistDTO">
SELECT a.green_id, SELECT a.green_id,
a.dir as road_direction, a.dir AS road_direction,
a.type as stragety_id, a.type AS stragety_id,
a.control_time, a.control_time,
a.control_duration, a.control_duration,
a.control_method, a.control_method,
min(DATE_SUB(CURDATE(), INTERVAL (WEEKDAY(CURDATE()) + 7) DAY)) week_start_day, MIN(CURRENT_DATE - (EXTRACT(DOW FROM CURRENT_DATE) + 7) * INTERVAL '1 day') AS week_start_day,
max(DATE_SUB(CURDATE(), INTERVAL (WEEKDAY(CURDATE()) ) +1 DAY)) week_end_day, MAX(CURRENT_DATE - (EXTRACT(DOW FROM CURRENT_DATE) + 1) * INTERVAL '1 day') AS week_end_day,
concat(year(control_time),'',(week(control_time)+1)) year_week, EXTRACT(YEAR FROM control_time) || '' || (TO_CHAR(control_time, 'WW') :: INT + 1) AS year_week,
(WEEKDAY(control_time)+1) week_day EXTRACT(DOW FROM control_time) + 1 AS week_day
FROM t_strategy_green_opt_hist a FROM t_strategy_green_opt_hist a
WHERE control_time >= DATE_SUB(CURDATE(), INTERVAL (WEEKDAY(CURDATE()) + 7) DAY) WHERE control_time >= CURRENT_DATE - (EXTRACT(DOW FROM CURRENT_DATE) + 7) * INTERVAL '1 day'
and control_time &lt; DATE_SUB(CURDATE(), INTERVAL (WEEKDAY(CURDATE()) ) DAY) AND control_time <![CDATA[ < ]]> CURRENT_DATE - EXTRACT(DOW FROM CURRENT_DATE) * INTERVAL '1 day'
and control_method in (-1, 1) AND control_method IN (-1, 1)
group by green_id, control_time, control_duration, control_method GROUP BY green_id, control_time, control_duration, control_method
ORDER BY green_id,control_time ORDER BY green_id, control_time
</select> </select>
</mapper> </mapper>
\ No newline at end of file
...@@ -5,7 +5,10 @@ ...@@ -5,7 +5,10 @@
<mapper namespace="net.wanji.opt.dao.mapper.StrategyPlanInfoMapper"> <mapper namespace="net.wanji.opt.dao.mapper.StrategyPlanInfoMapper">
<select id="selectByCrossId" resultType="net.wanji.opt.synthesis.pojo.StrategyPlanInfoEntity" parameterType="String" > <select id="selectByCrossId" resultType="net.wanji.opt.synthesis.pojo.StrategyPlanInfoEntity" parameterType="String" >
select * from t_strategy_plan_info where `cross_id`=#{crossId} and ( `status`=1 or `status` is null) and ((CURRENT_DATE &lt; `end_time` and CURRENT_DATE &gt; `start_time`) or `end_time` is null ) select * from t_strategy_plan_info where
`cross_id`=#{crossId} and ( `status`=1 or `status` is null)
and ((CURRENT_DATE &lt; `end_time` and CURRENT_DATE &gt; `start_time`)
or `end_time` is null )
</select> </select>
<select id="selectAll" resultType="net.wanji.opt.synthesis.pojo.StrategyPlanInfoEntity" > <select id="selectAll" resultType="net.wanji.opt.synthesis.pojo.StrategyPlanInfoEntity" >
......
...@@ -4,52 +4,107 @@ ...@@ -4,52 +4,107 @@
<!-- 绿波路口查询 --> <!-- 绿波路口查询 -->
<!-- <select id="findStatusDistribution" parameterType="map" resultType="net.wanji.opt.vo2.TrunkLineStatusDisInfoVO">-->
<!-- select-->
<!-- c.green_id as greenId,-->
<!-- c.road_direction as direction,-->
<!-- c.start_time as startTime ,-->
<!-- ROUND(AVG(c.speed), 2) as speed ,-->
<!-- ROUND(AVG(c.trval_time), 2) as travelTime,-->
<!-- ROUND(AVG(c.delay_time), 2) as delayTime,-->
<!-- ROUND(AVG(c.stop_times), 2) as stopTimes-->
<!-- from-->
<!-- (-->
<!-- select-->
<!-- b.green_id,-->
<!-- b.road_direction,-->
<!-- b.speed ,-->
<!-- b.trval_time,-->
<!-- b.delay_time,-->
<!-- b.stop_times,-->
<!-- DATE_FORMAT(FROM_UNIXTIME(ceil(UNIX_TIMESTAMP(b.start_time) / #{granule}) * #{granule}), '%H:%i') as start_time-->
<!-- from-->
<!-- (-->
<!-- select-->
<!-- a.green_id,-->
<!-- a.road_direction,-->
<!-- IFNULL(a.speed, 0) as speed,-->
<!-- IFNULL(a.trval_time, 0) as trval_time,-->
<!-- a.delay_time,-->
<!-- a.stop_times,-->
<!-- DATE_FORMAT(a.start_time, '%Y-%m-%d %H:%i:00') as start_time-->
<!-- from-->
<!-- t_greenwave_hist a-->
<!-- where-->
<!-- DATE_FORMAT(a.start_time, '%Y-%m-%d') = DATE_FORMAT(#{date},'%Y-%m-%d')-->
<!-- and a.green_id = #{greenID}-->
<!-- ) b-->
<!-- ) c-->
<!-- group by c.green_id, c.road_direction, c.start_time-->
<!-- </select>-->
<select id="findStatusDistribution" parameterType="map" resultType="net.wanji.opt.vo2.TrunkLineStatusDisInfoVO"> <select id="findStatusDistribution" parameterType="map" resultType="net.wanji.opt.vo2.TrunkLineStatusDisInfoVO">
select select
c.green_id as greenId, c.green_id as greenId,
c.road_direction as direction, c.road_direction as direction,
c.start_time as startTime , c.start_time as startTime,
ROUND(AVG(c.speed), 2) as speed , ROUND(AVG(c.speed)::numeric, 2) as speed,
ROUND(AVG(c.trval_time), 2) as travelTime, ROUND(AVG(c.trval_time)::numeric, 2) as travelTime,
ROUND(AVG(c.delay_time), 2) as delayTime, ROUND(AVG(c.delay_time)::numeric, 2) as delayTime,
ROUND(AVG(c.stop_times), 2) as stopTimes ROUND(AVG(c.stop_times)::numeric, 2) as stopTimes
from from
( (
select select
b.green_id, b.green_id,
b.road_direction, b.road_direction,
b.speed , b.speed,
b.trval_time, b.trval_time,
b.delay_time, b.delay_time,
b.stop_times, b.stop_times,
DATE_FORMAT(FROM_UNIXTIME(ceil(UNIX_TIMESTAMP(b.start_time) / #{granule}) * #{granule}), '%H:%i') as start_time to_char(
to_timestamp(
ceil(extract(epoch from b.start_time :: TIMESTAMP ) / #{granule} :: INTEGER ) * #{granule} :: INTEGER
),
'HH24:MI'
) as start_time
from from
( (
select select
a.green_id, a.green_id,
a.road_direction, a.road_direction,
IFNULL(a.speed, 0) as speed, COALESCE(a.speed, 0) as speed,
IFNULL(a.trval_time, 0) as trval_time, COALESCE(a.trval_time, 0) as trval_time,
a.delay_time, a.delay_time,
a.stop_times, a.stop_times,
DATE_FORMAT(a.start_time, '%Y-%m-%d %H:%i:00') as start_time to_char(a.start_time, 'YYYY-MM-DD HH24:MI:00') as start_time
from from
t_greenwave_hist a t_greenwave_hist a
where where
DATE_FORMAT(a.start_time, '%Y-%m-%d') = DATE_FORMAT(#{date},'%Y-%m-%d') to_char(a.start_time, 'YYYY-MM-DD') = to_char(#{date}::date, 'YYYY-MM-DD')
and a.green_id = #{greenID} and a.green_id = #{greenID}
) b ) b
) c ) c
group by c.green_id, c.road_direction, c.start_time group by c.green_id, c.road_direction, c.start_time
</select> </select>
<!-- <select id="findPlanTime" parameterType="map" resultType="net.wanji.opt.vo2.TrunkLineOptTimeInfoVO">-->
<!-- select DISTINCT DATE_FORMAT(a.control_time,'%H:%i') as optStartTime ,DATE_FORMAT(DATE_ADD(a.control_time, INTERVAL a.duration SECOND),'%H:%i') as optEndTime-->
<!-- from t_strategy_green_opt_hist a-->
<!-- where DATE_FORMAT(a.control_time,'%Y-%m-%d') = DATE_FORMAT(#{date},'%Y-%m-%d')-->
<!-- and a.response_code = 200-->
<!-- and a.control_method = 1-->
<!-- and a.green_id = #{greenID}-->
<!-- </select>-->
<select id="findPlanTime" parameterType="map" resultType="net.wanji.opt.vo2.TrunkLineOptTimeInfoVO"> <select id="findPlanTime" parameterType="map" resultType="net.wanji.opt.vo2.TrunkLineOptTimeInfoVO">
select DISTINCT DATE_FORMAT(a.control_time,'%H:%i') as optStartTime ,DATE_FORMAT(DATE_ADD(a.control_time, INTERVAL a.duration SECOND),'%H:%i') as optEndTime select DISTINCT
to_char(a.control_time, 'HH24:MI') as optStartTime,
to_char(a.control_time + (a.duration * interval '1 second'), 'HH24:MI') as optEndTime
from t_strategy_green_opt_hist a from t_strategy_green_opt_hist a
where DATE_FORMAT(a.control_time,'%Y-%m-%d') = DATE_FORMAT(#{date},'%Y-%m-%d') where to_char(a.control_time, 'YYYY-MM-DD') = to_char(#{date}::date, 'YYYY-MM-DD')
and a.response_code = 200 and a.response_code = 200
and a.control_method = 1 and a.control_method = 1
and a.green_id = #{greenID} and a.green_id = #{greenID}
</select> </select>
</mapper> </mapper>
...@@ -152,7 +152,7 @@ ...@@ -152,7 +152,7 @@
<select id="greenOptimizeByTimeTrend" parameterType="map" resultType="net.wanji.opt.entity.eventoptimize.TEventOptimizeInfo"> <select id="greenOptimizeByTimeTrend" parameterType="map" resultType="net.wanji.opt.entity.eventoptimize.TEventOptimizeInfo">
SELECT green_id, SELECT green_id,
control_time as opt_start_time, control_time as opt_start_time,
DATE_ADD(control_time,INTERVAL control_duration SECOND) as opt_end_time, control_time + control_duration * INTERVAL '1 SECOND' as opt_end_time,
control_duration as opt_duration control_duration as opt_duration
from t_strategy_green_opt_hist from t_strategy_green_opt_hist
where 1=1 where 1=1
......
...@@ -170,6 +170,8 @@ ...@@ -170,6 +170,8 @@
WHERE 1=1 WHERE 1=1
<include refid="AnalysisGreenWaveOptimizeWeekByCondition" /> <include refid="AnalysisGreenWaveOptimizeWeekByCondition" />
</select> </select>
<select id="getTotalityData" <select id="getTotalityData"
resultType="net.wanji.opt.controllerv2.report.vo.GreenWaveOptimizeAnalysisDataDTO"> resultType="net.wanji.opt.controllerv2.report.vo.GreenWaveOptimizeAnalysisDataDTO">
SELECT SELECT
...@@ -196,6 +198,8 @@ ...@@ -196,6 +198,8 @@
</foreach> </foreach>
</if> </if>
</select> </select>
<select id="selectListByYearWeek" resultType="net.wanji.opt.controllerv2.report.vo.AnalysisGreenWaveOptimizeWeekVO"> <select id="selectListByYearWeek" resultType="net.wanji.opt.controllerv2.report.vo.AnalysisGreenWaveOptimizeWeekVO">
SELECT SELECT
<include refid="Base_Column_List"/> <include refid="Base_Column_List"/>
......
...@@ -36,14 +36,14 @@ ...@@ -36,14 +36,14 @@
sum(even_number_703) as even_number_703, sum(event_total_time_703) as event_total_time_703, sum(even_number_703) as even_number_703, sum(event_total_time_703) as event_total_time_703,
sum(even_number_707) as even_number_707, sum(event_total_time_707) as event_total_time_707 sum(even_number_707) as even_number_707, sum(event_total_time_707) as event_total_time_707
from from
(select case t3.event_type when 701 then t3.event_number else 0 end as even_number_701 , (select case t3.event_type when '701' then t3.event_number else 0 end as even_number_701 ,
case t3.event_type when 701 then t3.event_total_time else 0 end as event_total_time_701, case t3.event_type when '701' then t3.event_total_time else 0 end as event_total_time_701,
case t3.event_type when 702 then t3.event_number else 0 end as even_number_702 , case t3.event_type when '702' then t3.event_number else 0 end as even_number_702 ,
case t3.event_type when 702 then t3.event_total_time else 0 end as event_total_time_702, case t3.event_type when '702' then t3.event_total_time else 0 end as event_total_time_702,
case t3.event_type when 703 then t3.event_number else 0 end as even_number_703 , case t3.event_type when '703' then t3.event_number else 0 end as even_number_703 ,
case t3.event_type when 703 then t3.event_total_time else 0 end as event_total_time_703, case t3.event_type when '703' then t3.event_total_time else 0 end as event_total_time_703,
case t3.event_type when 707 then t3.event_number else 0 end as even_number_707 , case t3.event_type when '707' then t3.event_number else 0 end as even_number_707 ,
case t3.event_type when 707 then t3.event_total_time else 0 end as event_total_time_707 case t3.event_type when '707' then t3.event_total_time else 0 end as event_total_time_707
from from
(select event_type,sum(event_number) as event_number,sum(event_total_time) as event_total_time (select event_type,sum(event_number) as event_number,sum(event_total_time) as event_total_time
from t_analysis_problem_cross_day from t_analysis_problem_cross_day
......
...@@ -32,20 +32,21 @@ ...@@ -32,20 +32,21 @@
#{item.insertTime} #{item.insertTime}
) )
</foreach> </foreach>
ON DUPLICATE KEY UPDATE on conflict (green_id, peak_type, day_type, year_week, road_direction)
congest_index = VALUES(congest_index), do update set
max_congest_index = VALUES(max_congest_index), congest_index = excluded.congest_index,
congest_count = VALUES(congest_count), max_congest_index = excluded.max_congest_index,
congest_duration = VALUES(congest_duration), congest_count = excluded.congest_count,
max_congest_duration = VALUES(max_congest_duration), congest_duration = excluded.congest_duration,
flow = VALUES(flow), max_congest_duration = excluded.max_congest_duration,
travel_time = VALUES(travel_time), flow = excluded.flow,
speed = VALUES(speed), travel_time = excluded.travel_time,
max_congestion_period = VALUES(max_congestion_period), speed = excluded.speed,
second_congestion_period = VALUES(second_congestion_period), max_congestion_period = excluded.max_congestion_period,
start_time = VALUES(start_time), second_congestion_period = excluded.second_congestion_period,
end_time = VALUES(end_time), start_time = excluded.start_time,
insert_time = VALUES(insert_time); end_time = excluded.end_time,
insert_time = excluded.insert_time;
</insert> </insert>
<!-- 基本的 CRUD 方法由 MyBatis-Plus 自动生成,无需手动编写 --> <!-- 基本的 CRUD 方法由 MyBatis-Plus 自动生成,无需手动编写 -->
......
...@@ -19,7 +19,7 @@ ...@@ -19,7 +19,7 @@
case t.command_result when 1 then '成功' when 2 then '失败' when 3 then '停止失败任务解锁' end as command_result case t.command_result when 1 then '成功' when 2 then '失败' when 3 then '停止失败任务解锁' end as command_result
FROM t_signal_utc_jinan.t_signal_command_log t FROM t_signal_utc_jinan.t_signal_command_log t
left join t_signal_utc_jinan.t_cross_info t1 on t.cross_id = t1.id left join t_signal_utc_jinan.t_cross_info t1 on t.cross_id = t1.id
where t.query_time BETWEEN DATE_FORMAT(#{startTime},'%Y-%m-%d %H:%i:%s') and DATE_FORMAT(#{endTime},'%Y-%m-%d %H:%i:%s') where t.query_time BETWEEN to_char(#{startTime},'YYYY-MM-DD HH24:MI:SS') and to_char(#{endTime},'YYYY-MM-DD HH24:MI:SS')
and t.data_info is not null and t.data_info is not null
and t.command_type <![CDATA[ < ]]> 10 and t.command_type <![CDATA[ < ]]> 10
and t.cross_id = #{crossId} and t.cross_id = #{crossId}
......
...@@ -158,6 +158,10 @@ ...@@ -158,6 +158,10 @@
<artifactId>spring-boot-starter-logging</artifactId> <artifactId>spring-boot-starter-logging</artifactId>
<groupId>org.springframework.boot</groupId> <groupId>org.springframework.boot</groupId>
</exclusion> </exclusion>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
</exclusions> </exclusions>
</dependency> </dependency>
<!--热加载用--> <!--热加载用-->
...@@ -171,6 +175,10 @@ ...@@ -171,6 +175,10 @@
<groupId>org.springframework.boot</groupId> <groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-log4j2</artifactId> <artifactId>spring-boot-starter-log4j2</artifactId>
<exclusions> <exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
<exclusion> <exclusion>
<groupId>org.apache.logging.log4j</groupId> <groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId> <artifactId>log4j-core</artifactId>
...@@ -225,6 +233,12 @@ ...@@ -225,6 +233,12 @@
<dependency> <dependency>
<groupId>org.springframework</groupId> <groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId> <artifactId>spring-web</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
</exclusions>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.springframework</groupId> <groupId>org.springframework</groupId>
...@@ -376,10 +390,10 @@ ...@@ -376,10 +390,10 @@
<artifactId>zip4j</artifactId> <artifactId>zip4j</artifactId>
<version>1.3.2</version> <version>1.3.2</version>
</dependency> </dependency>
<dependency> <!-- <dependency>-->
<groupId>mysql</groupId> <!-- <groupId>mysql</groupId>-->
<artifactId>mysql-connector-java</artifactId> <!-- <artifactId>mysql-connector-java</artifactId>-->
</dependency> <!-- </dependency>-->
<!-- MP相关 start --> <!-- MP相关 start -->
<dependency> <dependency>
<groupId>com.baomidou</groupId> <groupId>com.baomidou</groupId>
...@@ -556,10 +570,6 @@ ...@@ -556,10 +570,6 @@
<artifactId>curl</artifactId> <artifactId>curl</artifactId>
<version>0.0.43</version> <version>0.0.43</version>
</dependency> </dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-core</artifactId>
</dependency>
</dependencies> </dependencies>
</project> </project>
\ No newline at end of file
...@@ -5,14 +5,11 @@ import net.wanji.common.framework.Constants; ...@@ -5,14 +5,11 @@ import net.wanji.common.framework.Constants;
import net.wanji.common.framework.exception.FeignServiceException; import net.wanji.common.framework.exception.FeignServiceException;
import net.wanji.common.framework.exception.RidException; import net.wanji.common.framework.exception.RidException;
import net.wanji.common.framework.rest.JsonViewObject; import net.wanji.common.framework.rest.JsonViewObject;
import org.apache.catalina.connector.ClientAbortException;
import org.springframework.dao.DuplicateKeyException; import org.springframework.dao.DuplicateKeyException;
import org.springframework.http.HttpStatus;
import org.springframework.http.converter.HttpMessageNotReadableException; import org.springframework.http.converter.HttpMessageNotReadableException;
import org.springframework.validation.FieldError; import org.springframework.validation.FieldError;
import org.springframework.web.bind.MethodArgumentNotValidException; import org.springframework.web.bind.MethodArgumentNotValidException;
import org.springframework.web.bind.annotation.ExceptionHandler; import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.ResponseStatus;
import org.springframework.web.bind.annotation.RestControllerAdvice; import org.springframework.web.bind.annotation.RestControllerAdvice;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
...@@ -173,11 +170,4 @@ public class GlobalExceptionHandler { ...@@ -173,11 +170,4 @@ public class GlobalExceptionHandler {
log.error("RuntimeException异常:", e); log.error("RuntimeException异常:", e);
return JsonViewObject.newInstance().fail(errorMessage); return JsonViewObject.newInstance().fail(errorMessage);
} }
@ExceptionHandler(value = ClientAbortException.class)
@ResponseStatus(HttpStatus.OK)
public JsonViewObject clientExceptionHandler(ClientAbortException ex) {
log.error("ClientAbortException异常global:{}", ex);
return JsonViewObject.newInstance().success("");
}
} }
...@@ -27,10 +27,6 @@ ...@@ -27,10 +27,6 @@
<artifactId>spring-cloud-commons</artifactId> <artifactId>spring-cloud-commons</artifactId>
<scope>compile</scope> <scope>compile</scope>
</dependency> </dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-core</artifactId>
</dependency>
<!--Nacos 配置中心--> <!--Nacos 配置中心-->
<dependency> <dependency>
<groupId>com.alibaba.cloud</groupId> <groupId>com.alibaba.cloud</groupId>
......
...@@ -83,11 +83,11 @@ ...@@ -83,11 +83,11 @@
<!-- 查询调度计划信息列表 --> <!-- 查询调度计划信息列表 -->
<select id="listSchedulesPlan" parameterType="String" resultMap="CrossSchedulesPlanPO"> <select id="listSchedulesPlan" parameterType="String" resultMap="CrossSchedulesPlanPO">
SELECT SELECT
s.id id s.id as id
,s.`name` name ,s.`name` as name
,s.`status` ,s.`status`
,s.cross_id ,s.cross_id
,p.id plan_id ,p.id as plan_id
,p.plan_no ,p.plan_no
,sp.`week` ,sp.`week`
,sp.special_date ,sp.special_date
......
...@@ -31,7 +31,7 @@ ...@@ -31,7 +31,7 @@
cross_id, cross_id,
cycle, cycle,
coord_phase, coord_phase,
offset "offset"
from from
t_base_cross_scheme t_base_cross_scheme
where 1=1 where 1=1
......
...@@ -103,6 +103,12 @@ ...@@ -103,6 +103,12 @@
<dependency> <dependency>
<groupId>org.springframework.boot</groupId> <groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId> <artifactId>spring-boot-starter</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
</exclusions>
</dependency> </dependency>
<dependency> <dependency>
...@@ -124,6 +130,12 @@ ...@@ -124,6 +130,12 @@
<groupId>org.springframework.boot</groupId> <groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId> <artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope> <scope>test</scope>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
</exclusions>
</dependency> </dependency>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment