diff --git a/src/main/java/com/ssf/mysqloracletest/mapper/JcjJxxViewMysqlMapper.java b/src/main/java/com/ssf/mysqloracletest/mapper/JcjJxxViewMysqlMapper.java index 5dfc252..075833c 100644 --- a/src/main/java/com/ssf/mysqloracletest/mapper/JcjJxxViewMysqlMapper.java +++ b/src/main/java/com/ssf/mysqloracletest/mapper/JcjJxxViewMysqlMapper.java @@ -21,7 +21,7 @@ public interface JcjJxxViewMysqlMapper extends BaseMapper { @Select(" select * " + " from jcj_jjxx_view " + - " where JDZB BETWEEN #{LEFTTOPLONGITUDE} AND #{RIGHTBOTTOMLONGITUDE} " + - " AND WDZB BETWEEN #{RIGHTBOTTOMLATITUDE} AND #{LEFTTOPLATITUDE}"+" AND STATUS IS NULL") + " where GIS_X BETWEEN #{LEFTTOPLONGITUDE} AND #{RIGHTBOTTOMLONGITUDE} " + + " AND GIS_Y BETWEEN #{RIGHTBOTTOMLATITUDE} AND #{LEFTTOPLATITUDE}") public List selectloaction(JcjJjxxViewMysql bean); } diff --git a/src/main/java/com/ssf/mysqloracletest/task/AlarmInfoTask.java b/src/main/java/com/ssf/mysqloracletest/task/AlarmInfoTask.java index 4e92e80..3f43ccd 100644 --- a/src/main/java/com/ssf/mysqloracletest/task/AlarmInfoTask.java +++ b/src/main/java/com/ssf/mysqloracletest/task/AlarmInfoTask.java @@ -49,30 +49,30 @@ public class AlarmInfoTask { try { JcjJjxxViewMysql jjxxViewMysqlCp = new JcjJjxxViewMysql(); - jjxxViewMysqlCp.setLEFTTOPLONGITUDE("120.423914"); - jjxxViewMysqlCp.setRIGHTBOTTOMLONGITUDE("120.439581"); - jjxxViewMysqlCp.setRIGHTBOTTOMLATITUDE("33.823756"); - jjxxViewMysqlCp.setLEFTTOPLATITUDE("33.833082"); + jjxxViewMysqlCp.setLEFTTOPLONGITUDE("120.414200"); + jjxxViewMysqlCp.setRIGHTBOTTOMLONGITUDE("120.434200"); + jjxxViewMysqlCp.setRIGHTBOTTOMLATITUDE("33.811500"); + jjxxViewMysqlCp.setLEFTTOPLATITUDE("33.831500"); List selectloaction = jjxxViewMysqlService.selectloaction(jjxxViewMysqlCp); - CountDownLatch latch = new CountDownLatch(selectloaction.size()); - ExecutorService JjxxPool = Executors.newFixedThreadPool(5); +// CountDownLatch latch = new CountDownLatch(selectloaction.size()); +// ExecutorService JjxxPool = Executors.newFixedThreadPool(5); for (JcjJjxxViewMysql bean : selectloaction) { - JjxxPool.submit(() -> { - cleanJjxx(bean); - logger.info("清洗完成"); - latch.countDown(); - }); +// JjxxPool.submit(() -> { + cleanJjxx(bean); + logger.info("清洗完成"); +// latch.countDown(); +// }); } - try { - // Wait for all threads to complete - latch.await(); - } catch (InterruptedException e) { - e.printStackTrace(); - } +// try { +// // Wait for all threads to complete +// latch.await(); +// } catch (InterruptedException e) { +// e.printStackTrace(); +// } // 关闭线程池 - JjxxPool.shutdown(); +// JjxxPool.shutdown(); } catch (Exception e) { logger.info(StringKit.getTrace(e)); } @@ -83,7 +83,7 @@ public class AlarmInfoTask { JcjJjxxViewMysql jjxxViewMysqlCp = new JcjJjxxViewMysql(); BeanUtils.copyProperties(bean, jjxxViewMysqlCp); try { - JcjJjxxViewMysql jwd = jjxxViewMysqlService.selectJcjJxxByJJBH(jjxxViewMysqlCp.getJJBH()); +// JcjJjxxViewMysql jwd = jjxxViewMysqlService.selectJcjJxxByJJBH(jjxxViewMysqlCp.getJJBH()); MetaAlarmInfo alarmInfo = new MetaAlarmInfo(); //设置目标字段的值 //alarm_code<-----JJBH 接警编号 @@ -106,23 +106,20 @@ public class AlarmInfoTask { alarmInfo.setAlarmAddress(jjxxViewMysqlCp.getSFDD()); //alarm_response_unit<-----JJDWMC接警单位名称 alarmInfo.setAlarmResponseUnit(jjxxViewMysqlCp.getJJDWMC()); - - if (jwd.getGIS_Y() != null) { - //latitude(纬度)<-----WDZB纬度坐标 - alarmInfo.setLatitude(NumKit.checkBigDecimal(jwd.getGIS_Y())); - } - - if (jwd.getGIS_X() != null) { - //longitude(经度)<-----JDZB经度坐标 - alarmInfo.setLongitude(NumKit.checkBigDecimal(jwd.getGIS_X())); - } - - boolean b = alarmInfoService.save(alarmInfo); - - if (b) { - jjxxViewMysqlCp.setSTATUS("1"); - jjxxViewMysqlService.updateJjxxByJJBH(jjxxViewMysqlCp); - logger.info("状态修改为:1"); + //latitude(纬度)<-----WDZB纬度坐标 + alarmInfo.setLatitude(NumKit.checkBigDecimal(jjxxViewMysqlCp.getGIS_Y())); + //longitude(经度)<-----JDZB经度坐标 + alarmInfo.setLongitude(NumKit.checkBigDecimal(jjxxViewMysqlCp.getGIS_X())); + QueryWrapper metaAlarmInfoQueryWrapper = new QueryWrapper<>(); + metaAlarmInfoQueryWrapper.eq("alarm_code", jjxxViewMysqlCp.getJJBH()); + int count = alarmInfoService.count(metaAlarmInfoQueryWrapper); + if (count == 0) { + boolean b = alarmInfoService.save(alarmInfo); + if (b) { + jjxxViewMysqlCp.setSTATUS("1"); + jjxxViewMysqlService.updateJjxxByJJBH(jjxxViewMysqlCp); + logger.info("状态修改为:1"); + } } } catch (Exception e) { logger.info(StringKit.getTrace(e)); diff --git a/src/main/java/com/ssf/mysqloracletest/task/JcjCjxxTask.java b/src/main/java/com/ssf/mysqloracletest/task/JcjCjxxTask.java index 2259cb9..fa55b28 100644 --- a/src/main/java/com/ssf/mysqloracletest/task/JcjCjxxTask.java +++ b/src/main/java/com/ssf/mysqloracletest/task/JcjCjxxTask.java @@ -83,20 +83,20 @@ public class JcjCjxxTask { BeanUtils.copyProperties(cjxx, sBean); - byte[] qrCode1 = cjxx.getXZB(); - byte[] qrCode2 = cjxx.getYZB(); - try { - String filePath = getFolderPath(ConfigParam.GyzhafPhotoPicPath) + cjxx.getCJBH() + "XZB" + StringKit.toString(UUID.randomUUID()).replaceAll("-", "") + ".jpg"; - File file = FileUtil.writeBytes(qrCode1, filePath); - logger.info(file.getPath() + ",生成成功"); - String filePath1 = getFolderPath(ConfigParam.GyzhafPhotoPicPath) + cjxx.getCJBH() + "YZB" + StringKit.toString(UUID.randomUUID()).replaceAll("-", "") + ".jpg"; - File file1 = FileUtil.writeBytes(qrCode2, filePath1); - logger.info(file1.getPath() + ",生成成功"); - sBean.setXZB(filePath); - sBean.setYZB(filePath1); - } catch (Exception e) { - logger.info(cjxx.getCJBH() + ",文件生成失败"); - } +// byte[] qrCode1 = cjxx.getXZB(); +// byte[] qrCode2 = cjxx.getYZB(); +// try { +// String filePath = getFolderPath(ConfigParam.GyzhafPhotoPicPath) + cjxx.getCJBH() + "XZB" + StringKit.toString(UUID.randomUUID()).replaceAll("-", "") + ".jpg"; +// File file = FileUtil.writeBytes(qrCode1, filePath); +// logger.info(file.getPath() + ",生成成功"); +// String filePath1 = getFolderPath(ConfigParam.GyzhafPhotoPicPath) + cjxx.getCJBH() + "YZB" + StringKit.toString(UUID.randomUUID()).replaceAll("-", "") + ".jpg"; +// File file1 = FileUtil.writeBytes(qrCode2, filePath1); +// logger.info(file1.getPath() + ",生成成功"); +// sBean.setXZB(filePath); +// sBean.setYZB(filePath1); +// } catch (Exception e) { +// logger.info(cjxx.getCJBH() + ",文件生成失败"); +// } //确定一个数据是否唯一 JcjCjxxViewMysql checkcjxx = cjxxMysqlService.selectCjxxById(cjxx.getCJBH()); diff --git a/src/main/java/com/ssf/mysqloracletest/task/MetaHandleAlarmTask.java b/src/main/java/com/ssf/mysqloracletest/task/MetaHandleAlarmTask.java index 54dfcc9..fbdc21f 100644 --- a/src/main/java/com/ssf/mysqloracletest/task/MetaHandleAlarmTask.java +++ b/src/main/java/com/ssf/mysqloracletest/task/MetaHandleAlarmTask.java @@ -3,8 +3,10 @@ package com.ssf.mysqloracletest.task; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ssf.mysqloracletest.domain.JcjCjxxViewMysql; +import com.ssf.mysqloracletest.domain.MetaAlarmInfo; import com.ssf.mysqloracletest.domain.MetaHandleAlarmInfo; import com.ssf.mysqloracletest.service.JcjCjxxViewMysqlService; +import com.ssf.mysqloracletest.service.MetaAlarmInfoService; import com.ssf.mysqloracletest.service.MetaHandleAlarmInfoService; import com.ssf.mysqloracletest.utils.ConfigParam; import com.ssf.mysqloracletest.utils.StringKit; @@ -19,6 +21,7 @@ import java.util.List; import java.util.concurrent.CountDownLatch; import java.util.regex.Matcher; import java.util.regex.Pattern; +import java.util.stream.Collectors; /** * 用户数据接入 @@ -30,6 +33,7 @@ public class MetaHandleAlarmTask { private static final Logger logger = LoggerFactory.getLogger(MetaHandleAlarmTask.class); private final MetaHandleAlarmInfoService metaHandleAlarmInfoService; + private final MetaAlarmInfoService metaAlarmInfoService; private final JcjCjxxViewMysqlService jcjCjxxViewMysqlService; @Scheduled(initialDelay = 100, fixedDelay = 3000) @@ -42,27 +46,30 @@ public class MetaHandleAlarmTask { try { - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.isNull("status"); - Page page = new Page<>(1, 1000); - List resultList = jcjCjxxViewMysqlService.page(page, queryWrapper).getRecords(); - CountDownLatch latch = new CountDownLatch(resultList.size()); + List list = metaAlarmInfoService.list(); + List collect = list.stream().map(MetaAlarmInfo::getAlarmCode).collect(Collectors.toList()); + List jcjCjxxViewMysqls = jcjCjxxViewMysqlService.lambdaQuery().in(JcjCjxxViewMysql::getJJBH, collect).list(); +// QueryWrapper queryWrapper = new QueryWrapper<>(); +// queryWrapper.isNull("status"); +// Page page = new Page<>(1, 1000); +// List resultList = jcjCjxxViewMysqlService.page(page, queryWrapper).getRecords(); +// CountDownLatch latch = new CountDownLatch(resultList.size()); // ExecutorService cjxxPool = Executors.newFixedThreadPool(5); - for (JcjCjxxViewMysql bean : resultList) { + for (JcjCjxxViewMysql bean : jcjCjxxViewMysqls) { // cjxxPool.submit(() -> { cleanCjxx(bean); - latch.countDown(); +// latch.countDown(); // }); } - try { +// try { // Wait for all threads to complete - latch.await(); - } catch (InterruptedException e) { - e.printStackTrace(); - } +// latch.await(); +// } catch (InterruptedException e) { +// e.printStackTrace(); +// } // 关闭线程池 // cjxxPool.shutdown(); @@ -71,7 +78,7 @@ public class MetaHandleAlarmTask { } } - private void cleanCjxx(JcjCjxxViewMysql bean) { + public void cleanCjxx(JcjCjxxViewMysql bean) { JcjCjxxViewMysql cjxx = new JcjCjxxViewMysql(); try { BeanUtils.copyProperties(bean, cjxx); @@ -96,10 +103,15 @@ public class MetaHandleAlarmTask { metaHandleAlarmInfo.setHandleAlarmUserCode(substring); } metaHandleAlarmInfo.setHandleAlarmResult(cjxx.getCJJGMC()); - boolean save = metaHandleAlarmInfoService.save(metaHandleAlarmInfo); - if (save) { - cjxx.setStatus("1"); - jcjCjxxViewMysqlService.updateCjxxById(cjxx); + QueryWrapper metaHandleAlarmInfoQueryWrapper = new QueryWrapper<>(); + metaHandleAlarmInfoQueryWrapper.eq("alarm_code",cjxx.getJJBH()); + int count = metaHandleAlarmInfoService.count(metaHandleAlarmInfoQueryWrapper); + if (count == 0) { + boolean save = metaHandleAlarmInfoService.save(metaHandleAlarmInfo); + if (save) { + cjxx.setStatus("1"); + jcjCjxxViewMysqlService.updateCjxxById(cjxx); + } } } catch (Exception e) { logger.info(StringKit.getTrace(e));