Commit 66c1a088 authored by wangjinjing's avatar wangjinjing

添加推送每2分钟推送设备功能

parent 0f52ca5c
...@@ -60,7 +60,7 @@ public class ScheduleTaskConfig { ...@@ -60,7 +60,7 @@ public class ScheduleTaskConfig {
} }
// @Scheduled(cron = "0 */2 * * * ?")//每2分钟执行一次 @Scheduled(cron = "0 */2 * * * ?")//每2分钟执行一次
private void sendToguangda() { private void sendToguangda() {
//查询所有未推送的数据 //查询所有未推送的数据
List<Traffalarmrecord> resultlist=traffalarmrecordService.getTraffalarmrecordBystatus(); List<Traffalarmrecord> resultlist=traffalarmrecordService.getTraffalarmrecordBystatus();
......
...@@ -6,7 +6,6 @@ import org.springframework.beans.factory.annotation.Autowired; ...@@ -6,7 +6,6 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import java.lang.reflect.Array;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
import java.util.List; import java.util.List;
...@@ -18,12 +17,11 @@ public class TraffdevicewriteresultController { ...@@ -18,12 +17,11 @@ public class TraffdevicewriteresultController {
private TraffdevicewriteresultService traffdevicewriteresultService; private TraffdevicewriteresultService traffdevicewriteresultService;
/*** /**
* 豸Ϣ * 发送设备指纹指令
* @param xhs * @param xhs
* @return * @return
*/ */
@PostMapping("/sendDevices") @PostMapping("/sendDevices")
public List<ResultObj> sendDevices(@RequestParam("xhs") String xhs){ public List<ResultObj> sendDevices(@RequestParam("xhs") String xhs){
......
...@@ -8,40 +8,14 @@ import java.util.Date; ...@@ -8,40 +8,14 @@ import java.util.Date;
@Getter @Getter
@Setter @Setter
public class SbtdspsrParams extends Sbtdspsr { public class SbtdspsrParams extends Sbtdspsr {
/**
* 创建时间
*/
private Date createtime; private Date createtime;
/**
* 推送状态(0成功1失败)
*/
private Long pushstatus; private Long pushstatus;
/**
* 推送描述
*/
private String pushdesc; private String pushdesc;
/**
* 推送次数
*/
private Long pushcount; private Long pushcount;
/**
* 行政编号
*/
private String xzbh; private String xzbh;
/**
* 备注
*/
private String remark; private String remark;
/**
* 行政名称
*/
private String xztreename; private String xztreename;
private String deviceconfig; private String deviceconfig;
......
...@@ -75,7 +75,7 @@ public class TraffdevicewriteresultService { ...@@ -75,7 +75,7 @@ public class TraffdevicewriteresultService {
// } // }
} catch (Exception e) { } catch (Exception e) {
log.error("devicewrite - sendEvent 异常:" + e.toString()); log.error("devicewrite - sendEvent 异常:" + e.toString());
resultObj.add(ResultObj.error(ResponseEnum.E_9999.getCode(), e.toString())); resultObj.add(ResultObj.error(ResponseEnum.E_9999.getCode(), e.toString()));
} }
return resultObj; return resultObj;
...@@ -83,13 +83,13 @@ public class TraffdevicewriteresultService { ...@@ -83,13 +83,13 @@ public class TraffdevicewriteresultService {
public ResultObj sendToGuangda(SbtdspsrParams val, Traffdevicewriteresult param){ public ResultObj sendToGuangda(SbtdspsrParams val, Traffdevicewriteresult param){
if (val.getXzbh() == null) { if (val.getXzbh() == null) {
log.error("deviceWritePost {} : regist remsg...", "设备所属单位机构编码必填"); log.error("deviceWritePost {} : regist remsg...", "设备所属单位机构编码必填");
return ResultObj.error(ResponseEnum.E_1002.getCode(), "设备所属单位机构编码必填"); return ResultObj.error(ResponseEnum.E_1002.getCode(), "设备所属单位机构编码必填");
} else if (val.getDeviceconfig() == null) { } else if (val.getDeviceconfig() == null) {
log.error("deviceWritePost {} : regist remsg...", "请impn先配置设备推送配置"); log.error("deviceWritePost {} : regist remsg...", "请impn先配置设备推送配置");
return ResultObj.error(ResponseEnum.E_1002.getCode(), "请impn先配置设备推送配置"); return ResultObj.error(ResponseEnum.E_1002.getCode(), "请impn先配置设备推送配置");
} else { } else {
//转成第三方对象 //转成第三方对象
DeviceWriteParam item = JSONUtil.toBean(val.getDeviceconfig(), DeviceWriteParam.class); DeviceWriteParam item = JSONUtil.toBean(val.getDeviceconfig(), DeviceWriteParam.class);
item.setDeviceID(val.getWbbh()); item.setDeviceID(val.getWbbh());
item.setDeviceName(val.getTdmc()); item.setDeviceName(val.getTdmc());
...@@ -99,19 +99,19 @@ public class TraffdevicewriteresultService { ...@@ -99,19 +99,19 @@ public class TraffdevicewriteresultService {
item.setDataType(1); item.setDataType(1);
WriteResultObj writeResultObj=null; WriteResultObj writeResultObj=null;
try { try {
//调用第三方的restful //调用第三方的restful
log.error("调用第三方的restful" + item.toString()); log.error("调用第三方的restful" + item.toString());
writeResultObj = deviceWritePost(item); writeResultObj = deviceWritePost(item);
} }
catch (TimeoutException e) { catch (TimeoutException e) {
log.error("eventwrite - sendEvents 请求超时:" + e.toString()); log.error("eventwrite - sendEvents 请求超时:" + e.toString());
return ResultObj.error(ResponseEnum.E_1008.getCode(), ResponseEnum.E_1008.getMsg()); return ResultObj.error(ResponseEnum.E_1008.getCode(), ResponseEnum.E_1008.getMsg());
} catch (Exception e) { } catch (Exception e) {
log.error("eventwrite - sendEvents 异常:" + e.toString()); log.error("eventwrite - sendEvents 异常:" + e.toString());
return ResultObj.error(ResponseEnum.E_9999.getCode(), e.toString()); return ResultObj.error(ResponseEnum.E_9999.getCode(), e.toString());
} }
if (writeResultObj == null) { if (writeResultObj == null) {
return ResultObj.error(ResponseEnum.E_9999.getCode(), "token凭证获取失败"); return ResultObj.error(ResponseEnum.E_9999.getCode(), "token凭证获取失败");
} }
param.setSbbh(val.getSbbh()); param.setSbbh(val.getSbbh());
param.setTdbh(val.getTdbh()); param.setTdbh(val.getTdbh());
...@@ -125,7 +125,7 @@ public class TraffdevicewriteresultService { ...@@ -125,7 +125,7 @@ public class TraffdevicewriteresultService {
} else { } else {
param.setPushstatus(Long.valueOf(1)); param.setPushstatus(Long.valueOf(1));
} }
//数据库记录操作 //数据库记录操作
if (traffdevicewriteresult == null) { if (traffdevicewriteresult == null) {
traffdevicewriteresultMapper.insertSelective(param); traffdevicewriteresultMapper.insertSelective(param);
} else { } else {
...@@ -152,11 +152,11 @@ public class TraffdevicewriteresultService { ...@@ -152,11 +152,11 @@ public class TraffdevicewriteresultService {
long pushstatus = 0; long pushstatus = 0;
assert sbtdspsr != null; assert sbtdspsr != null;
if (sbtdspsr.getXzbh() == null) { if (sbtdspsr.getXzbh() == null) {
res = ResultObj.error(ResponseEnum.E_1002.getCode(), "设备所属单位机构编码必填"); res = ResultObj.error(ResponseEnum.E_1002.getCode(), "设备所属单位机构编码必填");
log.error("deviceWritePost {} : regist remsg...", "设备所属单位机构编码必填"); log.error("deviceWritePost {} : regist remsg...", "设备所属单位机构编码必填");
} else if (sbtdspsr.getDeviceconfig() == null) { } else if (sbtdspsr.getDeviceconfig() == null) {
res = ResultObj.error(ResponseEnum.E_1002.getCode(), "请impn先配置设备推送配置"); res = ResultObj.error(ResponseEnum.E_1002.getCode(), "请impn先配置设备推送配置");
log.error("deviceWritePost {} : regist remsg...", "请impn先配置设备推送配置"); log.error("deviceWritePost {} : regist remsg...", "请impn先配置设备推送配置");
} else { } else {
res = doDeviceWriteGetResultObj(sbtdspsr); res = doDeviceWriteGetResultObj(sbtdspsr);
} }
...@@ -166,7 +166,7 @@ public class TraffdevicewriteresultService { ...@@ -166,7 +166,7 @@ public class TraffdevicewriteresultService {
pushdesc = res.getMsg(); pushdesc = res.getMsg();
pushstatus = 1; pushstatus = 1;
} }
//数据库记录操作 //数据库记录操作
Traffdevicewriteresult traffdevicewriteresult = traffdevicewriteresultMapper.selectOne(TransHelper.transDeviceWriteResult(sbtdspsr)); Traffdevicewriteresult traffdevicewriteresult = traffdevicewriteresultMapper.selectOne(TransHelper.transDeviceWriteResult(sbtdspsr));
if (traffdevicewriteresult == null) { if (traffdevicewriteresult == null) {
traffdevicewriteresultMapper.insertSelective(TransHelper.transDeviceWriteResult(sbtdspsr, pushstatus, pushdesc)); traffdevicewriteresultMapper.insertSelective(TransHelper.transDeviceWriteResult(sbtdspsr, pushstatus, pushdesc));
...@@ -186,30 +186,30 @@ public class TraffdevicewriteresultService { ...@@ -186,30 +186,30 @@ public class TraffdevicewriteresultService {
List<SbtdspsrParam> list = sbtdspsrMapper.selectDeviceWrite(); List<SbtdspsrParam> list = sbtdspsrMapper.selectDeviceWrite();
count = list.size(); count = list.size();
try { try {
write(response, "共查询出需要写入的设备" + count + "条"); write(response, "共查询出需要写入的设备" + count + "条");
} catch (IOException e) { } catch (IOException e) {
log.error("设备批量写入 registall -->>io异常" + e.toString()); log.error("设备批量写入 registall -->>io异常" + e.toString());
} }
for (SbtdspsrParam val : list) { for (SbtdspsrParam val : list) {
try { try {
write(response, "--->>>开始写入第" + (susscee + fail + 1) + "条,剩余" + (count - susscee - fail - 1) + "条。设备编号:" + val.getSbbh() + ",通道编号:" + val.getTdbh() + ",设备名称:" + val.getTdmc()); write(response, "--->>>开始写入第" + (susscee + fail + 1) + "条,剩余" + (count - susscee - fail - 1) + "条。设备编号:" + val.getSbbh() + ",通道编号:" + val.getTdbh() + ",设备名称:" + val.getTdmc());
ResultObj regest = updateAndRegist(val); ResultObj regest = updateAndRegist(val);
if (regest.getStatus() == 200) { if (regest.getStatus() == 200) {
susscee++; susscee++;
write(response, "<<<---写入成功:" + regest.getData()); write(response, "<<<---写入成功:" + regest.getData());
} else { } else {
fail++; fail++;
write(response, "<<<---写入失败:" + regest.getMsg()); write(response, "<<<---写入失败:" + regest.getMsg());
} }
} catch (IOException e) { } catch (IOException e) {
log.error("设备批量写入 registall -->>io异常" + e.toString()); log.error("设备批量写入 registall -->>io异常" + e.toString());
} }
} }
ret = "查询出需要设备写入的设备数:" + count + "条,其中成功" + susscee + "条,失败" + fail + "条"; ret = "查询出需要设备写入的设备数:" + count + "条,其中成功" + susscee + "条,失败" + fail + "条";
try { try {
write(response, ret); write(response, ret);
} catch (IOException e) { } catch (IOException e) {
log.error("设备批量写入 registall -->>io异常" + e.toString()); log.error("设备批量写入 registall -->>io异常" + e.toString());
} }
return ResultObj.ok(ret); return ResultObj.ok(ret);
} }
...@@ -245,7 +245,7 @@ public class TraffdevicewriteresultService { ...@@ -245,7 +245,7 @@ public class TraffdevicewriteresultService {
HttpHeaders headers = new HttpHeaders(); HttpHeaders headers = new HttpHeaders();
// String token = stringRedisTemplate.opsForValue().get(qztoken); // String token = stringRedisTemplate.opsForValue().get(qztoken);
// if (token == null) { // if (token == null) {
//登录 //登录
// log.info("login", qztoken); // log.info("login", qztoken);
String token= qingZhiLoginCacheService.keepAlive(); String token= qingZhiLoginCacheService.keepAlive();
log.error("deviceWritePost {} : redis token empty..", qztoken); log.error("deviceWritePost {} : redis token empty..", qztoken);
...@@ -264,23 +264,23 @@ public class TraffdevicewriteresultService { ...@@ -264,23 +264,23 @@ public class TraffdevicewriteresultService {
private ResultObj doDeviceWriteGetResultObj(SbtdspsrParam sbtdspsr) { private ResultObj doDeviceWriteGetResultObj(SbtdspsrParam sbtdspsr) {
ResultObj res; ResultObj res;
sbtdspsr.setSbcsName(devicesupplier); sbtdspsr.setSbcsName(devicesupplier);
//组装请求数据 //组装请求数据
DeviceWriteParam param = TransHelper.transDevice(sbtdspsr, CodeConst.device_regist); DeviceWriteParam param = TransHelper.transDevice(sbtdspsr, CodeConst.device_regist);
WriteResultObj writeResultObj; WriteResultObj writeResultObj;
try { try {
//发送请求返回结果 //发送请求返回结果
writeResultObj = deviceWritePost(param); writeResultObj = deviceWritePost(param);
if (writeResultObj == null) { if (writeResultObj == null) {
writeResultObj = new WriteResultObj(ResponseEnum.E_9999.getCode(), "token凭证获取失败"); writeResultObj = new WriteResultObj(ResponseEnum.E_9999.getCode(), "token凭证获取失败");
} }
} catch (TimeoutException e) { } catch (TimeoutException e) {
log.error("devicewrite - sendEvent 请求超时:" + e.toString()); log.error("devicewrite - sendEvent 请求超时:" + e.toString());
writeResultObj = new WriteResultObj(ResponseEnum.E_1008.getCode(), ResponseEnum.E_1008.getMsg()); writeResultObj = new WriteResultObj(ResponseEnum.E_1008.getCode(), ResponseEnum.E_1008.getMsg());
} catch (Exception e) { } catch (Exception e) {
log.error("devicewrite - sendEvent 异常:" + e.toString()); log.error("devicewrite - sendEvent 异常:" + e.toString());
writeResultObj = new WriteResultObj(ResponseEnum.E_9999.getCode(), e.toString()); writeResultObj = new WriteResultObj(ResponseEnum.E_9999.getCode(), e.toString());
} }
//判断成功还是失败 //判断成功还是失败
if (writeResultObj.getStatus() == 200) { if (writeResultObj.getStatus() == 200) {
res = ResultObj.ok(writeResultObj.getMessage()); res = ResultObj.ok(writeResultObj.getMessage());
// log.info("deviceWritePost {} : regist remsg...Data=" + param.toString(), writeResultObj.toString()); // log.info("deviceWritePost {} : regist remsg...Data=" + param.toString(), writeResultObj.toString());
...@@ -303,14 +303,14 @@ public class TraffdevicewriteresultService { ...@@ -303,14 +303,14 @@ public class TraffdevicewriteresultService {
for (SbtdspsrParam ta : sbtdspsrs) { for (SbtdspsrParam ta : sbtdspsrs) {
ResultObj resultObj = updateAndRegist(ta); ResultObj resultObj = updateAndRegist(ta);
boolean successFlag = resultObj.getStatus() == ResponseEnum.SUCCESS.getCode(); boolean successFlag = resultObj.getStatus() == ResponseEnum.SUCCESS.getCode();
/* 成功 */ /* 成功 */
if (successFlag) { if (successFlag) {
success++; success++;
continue; continue;
} }
error++; error++;
} }
return ResultObj.error(ResponseEnum.SUCCESS.getCode(), "成功" + success + "条|失败" + error + "条"); return ResultObj.error(ResponseEnum.SUCCESS.getCode(), "成功" + success + "条|失败" + error + "条");
} }
} }
\ No newline at end of file
...@@ -15,71 +15,41 @@ mybatis.configuration.default-statement-timeout=3000 ...@@ -15,71 +15,41 @@ mybatis.configuration.default-statement-timeout=3000
#mybatis.mapperLocations = classpath:xxx.xml #mybatis.mapperLocations = classpath:xxx.xml
#logging.level.com.hzjt=debug #logging.level.com.hzjt=debug
## �������ݿ�-����Դ����
#spring.datasource.url=jdbc:dm://127.0.0.1:12345/auditlocal_cq
#spring.datasource.driver-class-name=dm.jdbc.driver.DmDriver
#spring.datasource.username=SYSDBA
#spring.datasource.password=SYSDBA
##���ӳ�����
#spring.datasource.type=org.apache.commons.dbcp.BasicDataSource
#spring.datasource.dbcp2.max-wait-millis=10000
#spring.datasource.dbcp2.min-idle=5
#spring.datasource.dbcp2.initial-size=5
#spring.datasoe.dbcp2.validation-query=SELECT x
#spring.datasource.dbcp2.connection-properties=characterEncoding=utf8
# Mysql���ݿ�-����Դ���� #spring.datasource.username=test
spring.datasource.username=test #spring.datasource.password=test
spring.datasource.password=test #spring.datasource.url=jdbc:oracle:thin:@192.168.168.212:1523:helowin
spring.datasource.url=jdbc:oracle:thin:@192.168.168.212:1523:helowin spring.datasource.username=hzjt
#spring.datasource.username=hzjt spring.datasource.password=hzjt
#spring.datasource.password=hzjt spring.datasource.url=jdbc:oracle:thin:@33.50.1.22:1521:orcl
#spring.datasource.url=jdbc:oracle:thin:@33.50.1.22:1521:orcl
spring.datasource.driverClassName=oracle.jdbc.OracleDriver spring.datasource.driverClassName=oracle.jdbc.OracleDriver
# druid # druid
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
# ��ʼ����С����С�����
spring.datasource.initialSize=5 spring.datasource.initialSize=5
spring.datasource.minIdle=5 spring.datasource.minIdle=5
spring.datasource.maxActive=20 spring.datasource.maxActive=20
# ���û�ȡ���ӵȴ���ʱ��ʱ��
spring.datasource.maxWait=60000 spring.datasource.maxWait=60000
# ���ü����òŽ���һ�μ�⣬�����Ҫ�رյĿ������ӣ���λ�Ǻ���
spring.datasource.timeBetweenEvictionRunsMillis=60000 spring.datasource.timeBetweenEvictionRunsMillis=60000
spring.datasource.minEvictableIdleTimeMillis=300000 spring.datasource.minEvictableIdleTimeMillis=300000
spring.datasource.testWhileIdle=true spring.datasource.testWhileIdle=true
spring.datasource.testOnBorrow=false spring.datasource.testOnBorrow=false
spring.datasource.testOnReturn=false spring.datasource.testOnReturn=false
# ��PSCache������ָ��ÿ��������PSCache�Ĵ�С
spring.datasource.poolPreparedStatements=true spring.datasource.poolPreparedStatements=true
spring.datasource.maxPoolPreparedStatementPerConnectionSize=20 spring.datasource.maxPoolPreparedStatementPerConnectionSize=20
# ���ü��ͳ�����ص�filters��ȥ�����ؽ���sql�޷�ͳ�ƣ�'wall'���ڷ���ǽ
spring.datasource.filters=stat,wall spring.datasource.filters=stat,wall
# ͨ��connectProperties��������mergeSql���ܣ���SQL��¼ spring.datasource.connectionProperties=druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000
spring.datasource.connectionProperties=druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000
# �ϲ����DruidDataSource�ļ������
spring.datasource.useGlobalDataSourceStat=true spring.datasource.useGlobalDataSourceStat=true
#redis #redis
# Redis��������ַ
spring.redis.host=127.0.0.1 spring.redis.host=127.0.0.1
# Redis���������Ӷ˿�
spring.redis.port=6379 spring.redis.port=6379
# Redis�������������루Ĭ��Ϊ�գ�
#spring.redis.password=123456 #spring.redis.password=123456
# Redis���ݿ�������Ĭ��Ϊ0��
spring.redis.database=0 spring.redis.database=0
# ���ӳ������������ʹ�ø�ֵ��ʾû�����ƣ�
spring.redis.pool.max-active=8 spring.redis.pool.max-active=8
# ���ӳ���������ȴ�ʱ�䣨ʹ�ø�ֵ��ʾû�����ƣ�
spring.redis.pool.max-wait=5000 spring.redis.pool.max-wait=5000
# ���ӳ��е�����������
spring.redis.pool.max-idle=8 spring.redis.pool.max-idle=8
# ���ӳ��е���С��������
spring.redis.pool.min-idle=0 spring.redis.pool.min-idle=0
# ���ӳ�ʱʱ�䣨���룩
spring.redis.timeout=2000 spring.redis.timeout=2000
#spring-session ʹ��
spring.session.store-type=none spring.session.store-type=none
ip.host=33.57.1.22 ip.host=33.57.1.22
port=21 port=21
...@@ -90,7 +60,7 @@ ftp.host=33.50.1.22:21:reader:reader ...@@ -90,7 +60,7 @@ ftp.host=33.50.1.22:21:reader:reader
alarm.subscribe.data.key=gs:traff:alarmlist alarm.subscribe.data.key=gs:traff:alarmlist
# 免审标记 0需审核 1免审 # \u514D\u5BA1\u6807\u8BB0 0\u9700\u5BA1\u6838 1\u514D\u5BA1
alarmrecord.check.enable=1 alarmrecord.check.enable=1
#spring.profiles.path= D:/imp/config/im/hzjt.properties #spring.profiles.path= D:/imp/config/im/hzjt.properties
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
<insert id="insertlist" parameterType="com.hzjt.domain.Vehicle" > <insert id="insertlist" parameterType="com.hzjt.domain.Vehicle" >
INSERT INTO vehicle (video_id, type, insert into vehicle (video_id, type,
direction,classification_confidence,ruletag,create_time) direction,classification_confidence,ruletag,create_time)
values( values(
#{video_id,jdbcType=VARCHAR}, #{video_id,jdbcType=VARCHAR},
......
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