人脸抓拍数据清洗

develop
hanrenchun 7 months ago
parent e04fc2f7a0
commit 7eb949cc3a

@ -21,7 +21,7 @@ public interface JcjJxxViewMysqlMapper extends BaseMapper<JcjJjxxViewMysql> {
@Select(" select * " + @Select(" select * " +
" from jcj_jjxx_view " + " from jcj_jjxx_view " +
" where JDZB BETWEEN #{LEFTTOPLONGITUDE} AND #{RIGHTBOTTOMLONGITUDE} " + " where GIS_X BETWEEN #{LEFTTOPLONGITUDE} AND #{RIGHTBOTTOMLONGITUDE} " +
" AND WDZB BETWEEN #{RIGHTBOTTOMLATITUDE} AND #{LEFTTOPLATITUDE}"+" AND STATUS IS NULL") " AND GIS_Y BETWEEN #{RIGHTBOTTOMLATITUDE} AND #{LEFTTOPLATITUDE}")
public List<JcjJjxxViewMysql> selectloaction(JcjJjxxViewMysql bean); public List<JcjJjxxViewMysql> selectloaction(JcjJjxxViewMysql bean);
} }

@ -49,30 +49,30 @@ public class AlarmInfoTask {
try { try {
JcjJjxxViewMysql jjxxViewMysqlCp = new JcjJjxxViewMysql(); JcjJjxxViewMysql jjxxViewMysqlCp = new JcjJjxxViewMysql();
jjxxViewMysqlCp.setLEFTTOPLONGITUDE("120.423914"); jjxxViewMysqlCp.setLEFTTOPLONGITUDE("120.414200");
jjxxViewMysqlCp.setRIGHTBOTTOMLONGITUDE("120.439581"); jjxxViewMysqlCp.setRIGHTBOTTOMLONGITUDE("120.434200");
jjxxViewMysqlCp.setRIGHTBOTTOMLATITUDE("33.823756"); jjxxViewMysqlCp.setRIGHTBOTTOMLATITUDE("33.811500");
jjxxViewMysqlCp.setLEFTTOPLATITUDE("33.833082"); jjxxViewMysqlCp.setLEFTTOPLATITUDE("33.831500");
List<JcjJjxxViewMysql> selectloaction = jjxxViewMysqlService.selectloaction(jjxxViewMysqlCp); List<JcjJjxxViewMysql> selectloaction = jjxxViewMysqlService.selectloaction(jjxxViewMysqlCp);
CountDownLatch latch = new CountDownLatch(selectloaction.size()); // CountDownLatch latch = new CountDownLatch(selectloaction.size());
ExecutorService JjxxPool = Executors.newFixedThreadPool(5); // ExecutorService JjxxPool = Executors.newFixedThreadPool(5);
for (JcjJjxxViewMysql bean : selectloaction) { for (JcjJjxxViewMysql bean : selectloaction) {
JjxxPool.submit(() -> { // JjxxPool.submit(() -> {
cleanJjxx(bean); cleanJjxx(bean);
logger.info("清洗完成"); logger.info("清洗完成");
latch.countDown(); // latch.countDown();
}); // });
} }
try { // try {
// Wait for all threads to complete // // Wait for all threads to complete
latch.await(); // latch.await();
} catch (InterruptedException e) { // } catch (InterruptedException e) {
e.printStackTrace(); // e.printStackTrace();
} // }
// 关闭线程池 // 关闭线程池
JjxxPool.shutdown(); // JjxxPool.shutdown();
} catch (Exception e) { } catch (Exception e) {
logger.info(StringKit.getTrace(e)); logger.info(StringKit.getTrace(e));
} }
@ -83,7 +83,7 @@ public class AlarmInfoTask {
JcjJjxxViewMysql jjxxViewMysqlCp = new JcjJjxxViewMysql(); JcjJjxxViewMysql jjxxViewMysqlCp = new JcjJjxxViewMysql();
BeanUtils.copyProperties(bean, jjxxViewMysqlCp); BeanUtils.copyProperties(bean, jjxxViewMysqlCp);
try { try {
JcjJjxxViewMysql jwd = jjxxViewMysqlService.selectJcjJxxByJJBH(jjxxViewMysqlCp.getJJBH()); // JcjJjxxViewMysql jwd = jjxxViewMysqlService.selectJcjJxxByJJBH(jjxxViewMysqlCp.getJJBH());
MetaAlarmInfo alarmInfo = new MetaAlarmInfo(); MetaAlarmInfo alarmInfo = new MetaAlarmInfo();
//设置目标字段的值 //设置目标字段的值
//alarm_code<-----JJBH 接警编号 //alarm_code<-----JJBH 接警编号
@ -106,24 +106,21 @@ public class AlarmInfoTask {
alarmInfo.setAlarmAddress(jjxxViewMysqlCp.getSFDD()); alarmInfo.setAlarmAddress(jjxxViewMysqlCp.getSFDD());
//alarm_response_unit<-----JJDWMC接警单位名称 //alarm_response_unit<-----JJDWMC接警单位名称
alarmInfo.setAlarmResponseUnit(jjxxViewMysqlCp.getJJDWMC()); alarmInfo.setAlarmResponseUnit(jjxxViewMysqlCp.getJJDWMC());
if (jwd.getGIS_Y() != null) {
//latitude(纬度)<-----WDZB纬度坐标 //latitude(纬度)<-----WDZB纬度坐标
alarmInfo.setLatitude(NumKit.checkBigDecimal(jwd.getGIS_Y())); alarmInfo.setLatitude(NumKit.checkBigDecimal(jjxxViewMysqlCp.getGIS_Y()));
}
if (jwd.getGIS_X() != null) {
//longitude(经度)<-----JDZB经度坐标 //longitude(经度)<-----JDZB经度坐标
alarmInfo.setLongitude(NumKit.checkBigDecimal(jwd.getGIS_X())); alarmInfo.setLongitude(NumKit.checkBigDecimal(jjxxViewMysqlCp.getGIS_X()));
} QueryWrapper<MetaAlarmInfo> metaAlarmInfoQueryWrapper = new QueryWrapper<>();
metaAlarmInfoQueryWrapper.eq("alarm_code", jjxxViewMysqlCp.getJJBH());
int count = alarmInfoService.count(metaAlarmInfoQueryWrapper);
if (count == 0) {
boolean b = alarmInfoService.save(alarmInfo); boolean b = alarmInfoService.save(alarmInfo);
if (b) { if (b) {
jjxxViewMysqlCp.setSTATUS("1"); jjxxViewMysqlCp.setSTATUS("1");
jjxxViewMysqlService.updateJjxxByJJBH(jjxxViewMysqlCp); jjxxViewMysqlService.updateJjxxByJJBH(jjxxViewMysqlCp);
logger.info("状态修改为1"); logger.info("状态修改为1");
} }
}
} catch (Exception e) { } catch (Exception e) {
logger.info(StringKit.getTrace(e)); logger.info(StringKit.getTrace(e));
jjxxViewMysqlCp.setSTATUS("2"); jjxxViewMysqlCp.setSTATUS("2");

@ -83,20 +83,20 @@ public class JcjCjxxTask {
BeanUtils.copyProperties(cjxx, sBean); BeanUtils.copyProperties(cjxx, sBean);
byte[] qrCode1 = cjxx.getXZB(); // byte[] qrCode1 = cjxx.getXZB();
byte[] qrCode2 = cjxx.getYZB(); // byte[] qrCode2 = cjxx.getYZB();
try { // try {
String filePath = getFolderPath(ConfigParam.GyzhafPhotoPicPath) + cjxx.getCJBH() + "XZB" + StringKit.toString(UUID.randomUUID()).replaceAll("-", "") + ".jpg"; // String filePath = getFolderPath(ConfigParam.GyzhafPhotoPicPath) + cjxx.getCJBH() + "XZB" + StringKit.toString(UUID.randomUUID()).replaceAll("-", "") + ".jpg";
File file = FileUtil.writeBytes(qrCode1, filePath); // File file = FileUtil.writeBytes(qrCode1, filePath);
logger.info(file.getPath() + ",生成成功"); // logger.info(file.getPath() + ",生成成功");
String filePath1 = getFolderPath(ConfigParam.GyzhafPhotoPicPath) + cjxx.getCJBH() + "YZB" + StringKit.toString(UUID.randomUUID()).replaceAll("-", "") + ".jpg"; // String filePath1 = getFolderPath(ConfigParam.GyzhafPhotoPicPath) + cjxx.getCJBH() + "YZB" + StringKit.toString(UUID.randomUUID()).replaceAll("-", "") + ".jpg";
File file1 = FileUtil.writeBytes(qrCode2, filePath1); // File file1 = FileUtil.writeBytes(qrCode2, filePath1);
logger.info(file1.getPath() + ",生成成功"); // logger.info(file1.getPath() + ",生成成功");
sBean.setXZB(filePath); // sBean.setXZB(filePath);
sBean.setYZB(filePath1); // sBean.setYZB(filePath1);
} catch (Exception e) { // } catch (Exception e) {
logger.info(cjxx.getCJBH() + ",文件生成失败"); // logger.info(cjxx.getCJBH() + ",文件生成失败");
} // }
//确定一个数据是否唯一 //确定一个数据是否唯一
JcjCjxxViewMysql checkcjxx = cjxxMysqlService.selectCjxxById(cjxx.getCJBH()); JcjCjxxViewMysql checkcjxx = cjxxMysqlService.selectCjxxById(cjxx.getCJBH());

@ -3,8 +3,10 @@ package com.ssf.mysqloracletest.task;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ssf.mysqloracletest.domain.JcjCjxxViewMysql; import com.ssf.mysqloracletest.domain.JcjCjxxViewMysql;
import com.ssf.mysqloracletest.domain.MetaAlarmInfo;
import com.ssf.mysqloracletest.domain.MetaHandleAlarmInfo; import com.ssf.mysqloracletest.domain.MetaHandleAlarmInfo;
import com.ssf.mysqloracletest.service.JcjCjxxViewMysqlService; import com.ssf.mysqloracletest.service.JcjCjxxViewMysqlService;
import com.ssf.mysqloracletest.service.MetaAlarmInfoService;
import com.ssf.mysqloracletest.service.MetaHandleAlarmInfoService; import com.ssf.mysqloracletest.service.MetaHandleAlarmInfoService;
import com.ssf.mysqloracletest.utils.ConfigParam; import com.ssf.mysqloracletest.utils.ConfigParam;
import com.ssf.mysqloracletest.utils.StringKit; import com.ssf.mysqloracletest.utils.StringKit;
@ -19,6 +21,7 @@ import java.util.List;
import java.util.concurrent.CountDownLatch; import java.util.concurrent.CountDownLatch;
import java.util.regex.Matcher; import java.util.regex.Matcher;
import java.util.regex.Pattern; 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 static final Logger logger = LoggerFactory.getLogger(MetaHandleAlarmTask.class);
private final MetaHandleAlarmInfoService metaHandleAlarmInfoService; private final MetaHandleAlarmInfoService metaHandleAlarmInfoService;
private final MetaAlarmInfoService metaAlarmInfoService;
private final JcjCjxxViewMysqlService jcjCjxxViewMysqlService; private final JcjCjxxViewMysqlService jcjCjxxViewMysqlService;
@Scheduled(initialDelay = 100, fixedDelay = 3000) @Scheduled(initialDelay = 100, fixedDelay = 3000)
@ -42,27 +46,30 @@ public class MetaHandleAlarmTask {
try { try {
QueryWrapper<JcjCjxxViewMysql> queryWrapper = new QueryWrapper<>(); List<MetaAlarmInfo> list = metaAlarmInfoService.list();
queryWrapper.isNull("status"); List<String> collect = list.stream().map(MetaAlarmInfo::getAlarmCode).collect(Collectors.toList());
Page<JcjCjxxViewMysql> page = new Page<>(1, 1000); List<JcjCjxxViewMysql> jcjCjxxViewMysqls = jcjCjxxViewMysqlService.lambdaQuery().in(JcjCjxxViewMysql::getJJBH, collect).list();
List<JcjCjxxViewMysql> resultList = jcjCjxxViewMysqlService.page(page, queryWrapper).getRecords(); // QueryWrapper<JcjCjxxViewMysql> queryWrapper = new QueryWrapper<>();
CountDownLatch latch = new CountDownLatch(resultList.size()); // queryWrapper.isNull("status");
// Page<JcjCjxxViewMysql> page = new Page<>(1, 1000);
// List<JcjCjxxViewMysql> resultList = jcjCjxxViewMysqlService.page(page, queryWrapper).getRecords();
// CountDownLatch latch = new CountDownLatch(resultList.size());
// ExecutorService cjxxPool = Executors.newFixedThreadPool(5); // ExecutorService cjxxPool = Executors.newFixedThreadPool(5);
for (JcjCjxxViewMysql bean : resultList) { for (JcjCjxxViewMysql bean : jcjCjxxViewMysqls) {
// cjxxPool.submit(() -> { // cjxxPool.submit(() -> {
cleanCjxx(bean); cleanCjxx(bean);
latch.countDown(); // latch.countDown();
// }); // });
} }
try { // try {
// Wait for all threads to complete // Wait for all threads to complete
latch.await(); // latch.await();
} catch (InterruptedException e) { // } catch (InterruptedException e) {
e.printStackTrace(); // e.printStackTrace();
} // }
// 关闭线程池 // 关闭线程池
// cjxxPool.shutdown(); // cjxxPool.shutdown();
@ -71,7 +78,7 @@ public class MetaHandleAlarmTask {
} }
} }
private void cleanCjxx(JcjCjxxViewMysql bean) { public void cleanCjxx(JcjCjxxViewMysql bean) {
JcjCjxxViewMysql cjxx = new JcjCjxxViewMysql(); JcjCjxxViewMysql cjxx = new JcjCjxxViewMysql();
try { try {
BeanUtils.copyProperties(bean, cjxx); BeanUtils.copyProperties(bean, cjxx);
@ -96,11 +103,16 @@ public class MetaHandleAlarmTask {
metaHandleAlarmInfo.setHandleAlarmUserCode(substring); metaHandleAlarmInfo.setHandleAlarmUserCode(substring);
} }
metaHandleAlarmInfo.setHandleAlarmResult(cjxx.getCJJGMC()); metaHandleAlarmInfo.setHandleAlarmResult(cjxx.getCJJGMC());
QueryWrapper<MetaHandleAlarmInfo> metaHandleAlarmInfoQueryWrapper = new QueryWrapper<>();
metaHandleAlarmInfoQueryWrapper.eq("alarm_code",cjxx.getJJBH());
int count = metaHandleAlarmInfoService.count(metaHandleAlarmInfoQueryWrapper);
if (count == 0) {
boolean save = metaHandleAlarmInfoService.save(metaHandleAlarmInfo); boolean save = metaHandleAlarmInfoService.save(metaHandleAlarmInfo);
if (save) { if (save) {
cjxx.setStatus("1"); cjxx.setStatus("1");
jcjCjxxViewMysqlService.updateCjxxById(cjxx); jcjCjxxViewMysqlService.updateCjxxById(cjxx);
} }
}
} catch (Exception e) { } catch (Exception e) {
logger.info(StringKit.getTrace(e)); logger.info(StringKit.getTrace(e));
cjxx.setStatus("2"); cjxx.setStatus("2");

Loading…
Cancel
Save