人脸抓拍数据清洗

develop
hanrenchun 7 months ago
parent e04fc2f7a0
commit 7eb949cc3a

@ -21,7 +21,7 @@ public interface JcjJxxViewMysqlMapper extends BaseMapper<JcjJjxxViewMysql> {
@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<JcjJjxxViewMysql> selectloaction(JcjJjxxViewMysql bean);
}

@ -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<JcjJjxxViewMysql> 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<MetaAlarmInfo> 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));

@ -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());

@ -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<JcjCjxxViewMysql> queryWrapper = new QueryWrapper<>();
queryWrapper.isNull("status");
Page<JcjCjxxViewMysql> page = new Page<>(1, 1000);
List<JcjCjxxViewMysql> resultList = jcjCjxxViewMysqlService.page(page, queryWrapper).getRecords();
CountDownLatch latch = new CountDownLatch(resultList.size());
List<MetaAlarmInfo> list = metaAlarmInfoService.list();
List<String> collect = list.stream().map(MetaAlarmInfo::getAlarmCode).collect(Collectors.toList());
List<JcjCjxxViewMysql> jcjCjxxViewMysqls = jcjCjxxViewMysqlService.lambdaQuery().in(JcjCjxxViewMysql::getJJBH, collect).list();
// QueryWrapper<JcjCjxxViewMysql> queryWrapper = new QueryWrapper<>();
// 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);
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<MetaHandleAlarmInfo> 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));

Loading…
Cancel
Save