123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080 |
- package com.hhwy.qbeqsjy.kafka.service;
- import com.alibaba.fastjson.JSON;
- import com.alibaba.fastjson.JSONArray;
- import com.alibaba.fastjson.JSONObject;
- import com.hhwy.qbeqsjy.common.*;
- import com.hhwy.qbeqsjy.dao.CtrlDao;
- import lombok.extern.slf4j.Slf4j;
- import org.apache.commons.lang3.StringUtils;
- import org.apache.kafka.clients.consumer.ConsumerRecord;
- import org.apache.kafka.clients.consumer.ConsumerRecords;
- import org.apache.kafka.clients.consumer.KafkaConsumer;
- import org.locationtech.jts.geom.Coordinate;
- import org.springframework.beans.factory.annotation.Value;
- import org.springframework.context.ApplicationListener;
- import org.springframework.context.event.ContextRefreshedEvent;
- import org.springframework.scheduling.annotation.EnableScheduling;
- import org.springframework.stereotype.Service;
- import javax.annotation.Resource;
- import java.io.IOException;
- import java.util.*;
- import java.util.concurrent.ExecutorService;
- import java.util.concurrent.Executors;
- /**
- * 布控命中数据处理
- */
- @Slf4j
- @Service
- @EnableScheduling
- public class ConsumeService implements ApplicationListener<ContextRefreshedEvent> {
- @Value("${topic.name}")
- private String topic;
- @Value("${clue.code.phone}")
- private String clueCodePhone;
- @Value("${clue.code.idCard}")
- private String clueCodeIdCard;
- @Value("${address.query.url}")
- private String addressQueryUrl;
- @Value("${centerPoint.lon.hcz}")
- private String centerPointLonHcz;
- @Value("${centerPoint.lat.hcz}")
- private String centerPointLatHcz;
- @Value("${radius.hcz}")
- private String radiusHcz;
- @Value("${res.code.auth}")
- private String resCodeAUTH;
- /*@Value("${res.code.tldp}")
- private String resCodeTldp;*/
- @Value("${res.code.mhdp}")
- private String resCodeMhdp;
- @Value("${res.code.jnryzs}")
- private String resCodeJnryzs;
- @Value("${res.code.wbsw}")
- private String resCodeWbsw;
- @Value("${res.code.ky}")
- private String resCodeKy;
- @Value("${res.code.dt}")
- private String resCodeDt;
- @Value("${res.code.sjrd}")
- private String resCodeSjrd;
- @Value("${res.code.xlpc}")
- private String resCodeXlpc;
- @Value("${res.code.zdjc}")
- private String resCodeZdjc;
- @Value("${res.code.dzwl}")
- private String resCodeDzwl;
- @Value("${res.code.rlgz}")
- private String resCodeRlgz;
- @Value("${res.code.gmszy}")
- private String resCodeGmszy;
- @Resource
- private CtrlDao ctrlDao;
- private SnowflakeIdGenerator generator = new SnowflakeIdGenerator(1);
- private HttpClient httpClient = new HttpClient();
- // IOC容器刷新完成后就会发布ContextRefreshedEvent事件
- @Override
- public void onApplicationEvent(ContextRefreshedEvent contextRefreshedEvent) {
- ExecutorService executor = Executors.newFixedThreadPool(1);
- executor.execute(() -> {
- if (contextRefreshedEvent.getApplicationContext().getParent() == null) {
- try {
- this.dataConsume();
- } catch (Exception e) {
- log.error("【QBEQSJYCTRL】 数据处理服务启动异常", e);
- }
- }
- });
- executor.shutdown();
- }
- public void dataConsume() {
- if (AuthService.isSecurityModel()){
- try {
- log.info("kafka集群已开启安全模式");
- AuthService.securityPrepare();
- } catch (IOException e) {
- log.error("kafka集群安全认证失败,异常信息 : {}.", e);
- return;
- }
- log.info("kafka集群安全认证成功");
- }
- AuthService consumerAuthService = new AuthService(topic);
- log.info("【QBEQSJYCTRL - 消费者服务】 服务已启动");
- process(consumerAuthService.consumer, topic);
- }
- /**
- * 消费目标topic中的预警结果数据,处理后批量入库
- * @param consumer
- * @param topic
- */
- public void process(KafkaConsumer<Integer, String> consumer, String topic) {
- consumer.subscribe(Collections.singletonList(topic));
- while (true) {
- // 间隔30秒拉取一次数据
- log.info("间隔30秒拉取一次数据......");
- ConsumerRecords<Integer, String> records = consumer.poll(Constants.WAIT_TIME);
- if (records != null && records.count() > 0) {
- List<Object[]> warningInfoList = new ArrayList<>();
- int batchSaveNum = 0;
- for (ConsumerRecord<Integer, String> record : records) {
- JSONObject message = JSONObject.parseObject(record.value());
- JSONObject uniCtrl = message.getJSONObject("UNICTRL");
- String clueId = uniCtrl.getString("U_CLUEID");
- String[] clueIdStrArr = clueId.split("_");
- String rwbh = clueIdStrArr[Constants.NUM_1];
- String clueType = clueIdStrArr[Constants.NUM_2];
- String clue = clueIdStrArr[Constants.NUM_3];
- String resourceCode = uniCtrl.getString("U_RESID");
- // 每张布控资源表对应的命中数据JSON对象
- JSONObject oriField = message.getJSONObject("ORIFIELD");
- log.info(oriField.toJSONString());
- StringBuilder yjxxsm = new StringBuilder();
- // 生成预警信息编号
- String yjxxbh = String.valueOf(generator.nextId());
- // 预警状态默认为0(未读)
- Integer yjzt = 0;
- Date currentTime = new Date();
- // 根据clueId中的任务编号、线索值、线索类型查询对应的布控任务相关信息(包含任务信息、数据资源信息、区域信息、线索信息)
- List<Map<String, Object>> ctrlTaskInfoList = ctrlDao.queryCtrlTaskInfo(rwbh, clue, clueType);
- if(ctrlTaskInfoList.size() > 0){
- Map<String, Object> ctrlTaskInfo = ctrlTaskInfoList.get(0);
- String rwmc = String.valueOf(ctrlTaskInfo.get("rwmc"));
- Integer rwlx = (Integer) ctrlTaskInfo.get("rwlx");
- String rwlxmc = String.valueOf(ctrlTaskInfo.get("rwlxmc"));
- String rwdxlxmc = String.valueOf(ctrlTaskInfo.get("rwdxlxmc"));
- String sqrXm = String.valueOf(ctrlTaskInfo.get("sqr_xm"));
- String sqrSfzh = String.valueOf(ctrlTaskInfo.get("sqr_sfzh"));
- String sqrJh = String.valueOf(ctrlTaskInfo.get("sqr_jh"));
- String sqrDwbm = String.valueOf(ctrlTaskInfo.get("sqr_dwbm"));
- String sqrDwmc = String.valueOf(ctrlTaskInfo.get("sqr_dwmc"));
- String bkqyxx = String.valueOf(ctrlTaskInfo.get("bkqyxx"));
- String yjryXm = String.valueOf(ctrlTaskInfo.get("ryxm"));
- String yjrySfzh = String.valueOf(ctrlTaskInfo.get("zjhm"));
- String yjrySjh = String.valueOf(ctrlTaskInfo.get("sjh"));
- String yjryLb = String.valueOf(ctrlTaskInfo.get("rylb"));
- String yjryBq = String.valueOf(ctrlTaskInfo.get("rybq"));
- String gkjb = String.valueOf(ctrlTaskInfo.get("gkjb"));
- String gkjbmc = String.valueOf(ctrlTaskInfo.get("gkjbmc"));
- String zrjz = String.valueOf(ctrlTaskInfo.get("zrjz"));
- String zrmjid = String.valueOf(ctrlTaskInfo.get("zrmjid"));
- String zrmjxm = String.valueOf(ctrlTaskInfo.get("zrmjxm"));
- String zrmjjh = String.valueOf(ctrlTaskInfo.get("zrmjjh"));
- String zrmjlxfs = String.valueOf(ctrlTaskInfo.get("zrmjlxfs"));
- String zrdwbm = String.valueOf(ctrlTaskInfo.get("zrdwbm"));
- String zrbmbm = String.valueOf(ctrlTaskInfo.get("zrbmbm"));
- // 根据任务编号查询对应的模型配置信息
- List<Map<String, Object>> modelInfoList = ctrlDao.queryCtrlTaskModelInfo(rwbh);
- if(resCodeAUTH.equals(resourceCode)){ // =========== AUTH认证数据
- // 1. ========================= 过滤基站号、经纬度为空的数据
- String baseStationId = oriField.getString("BASE_STATION_ID");
- String lonBD = oriField.getString("LONGITUDE");
- String latBD = oriField.getString("LATITUDE");
- if(StringUtils.isBlank(baseStationId) || StringUtils.isBlank(lonBD) || StringUtils.isBlank(latBD)){
- continue;
- }
- // 2. ========================= 调用烽火接口,根据命中点位经纬度(百度坐标系)查询对应的地址信息
- String rspStr = httpClient.sendGetRequst(addressQueryUrl.replace("x", lonBD).replace("y", latBD), null);
- JSONObject rspJSONObj = JSON.parseObject(rspStr);
- // 命中点位地址名称
- String addressName = rspJSONObj.getString("fullAddress");
- String captureTime = TimeTool.timeStampToDateString(Long.valueOf(oriField.getString("CAPTURE_TIME")));
- yjxxsm.append(yjryXm);
- yjxxsm.append("于");
- yjxxsm.append(captureTime);
- yjxxsm.append("出现在");
- yjxxsm.append(addressName);
- // 将烽火的百度坐标系经纬度值转换为84坐标系经纬度值
- double[] latAndLon84 = GpsCoordinateUtils.calBD09toWGS84(Double.valueOf(latBD), Double.valueOf(lonBD));
- String lat84 = String.valueOf(latAndLon84[0]);
- String lon84 = String.valueOf(latAndLon84[1]);
- // 3. ========================= 如果存在布控区域,则过滤不在布控区域范围的数据
- JSONArray areaInfoList = JSON.parseArray(bkqyxx);
- if(areaInfoList != null && areaInfoList.size() > 0){
- for (Object obj : areaInfoList) {
- JSONObject ctrlAreaInfo = (JSONObject) obj;
- String areaName = (String) ctrlAreaInfo.get("qymc");
- Integer geoType = (Integer) ctrlAreaInfo.get("qyjhlx");
- JSONObject locationJSONObj = JSON.parseObject(String.valueOf(ctrlAreaInfo.get("qyfwjwdjhFh")));
- JSONArray locationSet = locationJSONObj.getJSONArray("location");
- // ****** 说明:如果出现多个布控区域范围存在重叠,并且命中点位也恰巧出现在重叠区域的极端情况,目前则只保存命中第一个布控区域时的一份数据,不再继续判断
- if(Constants.NUM_0 == geoType){ // 布控区域是圆形
- JSONObject loc = locationSet.getJSONObject(0);
- String centerLon84 = loc.getString("lon");
- String centerLat84 = loc.getString("lat");
- String radius = loc.getString("radius");
- if(GeoUtils.isPointInCircle(Double.valueOf(lat84), Double.valueOf(lon84), Double.valueOf(centerLat84), Double.valueOf(centerLon84), Double.valueOf(radius))){
- yjxxsm.append(",所在区域:");
- yjxxsm.append(areaName);
- warningInfoList.add(new Object[]{rwbh, rwmc, rwlx, rwlxmc, rwdxlxmc, yjxxbh, yjryXm, yjrySfzh, yjrySjh, yjxxsm.toString(), yjzt, Constants.YJZT_WD, currentTime, zrjz, zrmjid, zrmjxm, zrmjjh, zrmjlxfs, zrdwbm, CommonUtil.getConfValueByKey(zrdwbm), zrbmbm, CommonUtil.getConfValueByKey(zrbmbm), sqrXm, sqrSfzh, sqrJh, sqrDwbm, sqrDwmc, yjryLb, yjryBq, gkjb, gkjbmc, resourceCode, lon84, lat84, currentTime, currentTime, null, null, null, areaName, addressName});
- yjxxsm.setLength(0);
- break;
- }
- } else { // 布控区域是一般多边形
- List<Coordinate> coordinates = new ArrayList<>();
- for (Object item : locationSet) {
- JSONObject loc = (JSONObject) item;
- String vertexLon84 = loc.getString("lon");
- String vertexLat84 = loc.getString("lat");
- coordinates.add(new Coordinate(Double.valueOf(vertexLon84), Double.valueOf(vertexLat84)));
- }
- if(GeoUtils.isPointInPolygon(coordinates, new Coordinate(Double.valueOf(lon84), Double.valueOf(lat84)))){
- yjxxsm.append(",所在区域:");
- yjxxsm.append(areaName);
- warningInfoList.add(new Object[]{rwbh, rwmc, rwlx, rwlxmc, rwdxlxmc, yjxxbh, yjryXm, yjrySfzh, yjrySjh, yjxxsm.toString(), yjzt, Constants.YJZT_WD, currentTime, zrjz, zrmjid, zrmjxm, zrmjjh, zrmjlxfs, zrdwbm, CommonUtil.getConfValueByKey(zrdwbm), zrbmbm, CommonUtil.getConfValueByKey(zrbmbm), sqrXm, sqrSfzh, sqrJh, sqrDwbm, sqrDwmc, yjryLb, yjryBq, gkjb, gkjbmc, resourceCode, lon84, lat84, currentTime, currentTime, null, null, null, areaName, addressName});
- yjxxsm.setLength(0);
- break;
- }
- }
- }
- } else { // 如果不存在布控区域信息,则默认布控区域范围为全天津市,预警数据直接入库
- warningInfoList.add(new Object[]{rwbh, rwmc, rwlx, rwlxmc, rwdxlxmc, yjxxbh, yjryXm, yjrySfzh, yjrySjh, yjxxsm.toString(), yjzt, Constants.YJZT_WD, currentTime, zrjz, zrmjid, zrmjxm, zrmjjh, zrmjlxfs, zrdwbm, CommonUtil.getConfValueByKey(zrdwbm), zrbmbm, CommonUtil.getConfValueByKey(zrbmbm), sqrXm, sqrSfzh, sqrJh, sqrDwbm, sqrDwmc, yjryLb, yjryBq, gkjb, gkjbmc, resourceCode, lon84, lat84, currentTime, currentTime, null, null, null, "天津市", addressName});
- yjxxsm.setLength(0);
- }
- yjxxsm.setLength(0);
- } else if(resCodeKy.equals(resourceCode)){ // =========== 客运数据
- // 票号
- String ph = oriField.getString("TRAIN_TIC_NO");
- // 旅客姓名
- String lkXm = oriField.getString("PASS_NAME");
- // 旅客身份证号
- String lkSfzh = oriField.getString("PASS_CRED_NUM");
- // 旅客手机
- String passMob = oriField.getString("PASS_MOB");
- String lkSjh = StringUtils.isNotBlank(passMob)? passMob : yjrySjh;
- // String ccrq = oriField.getString("RIDING_DATE"); // 乘车日期
- // 检票时间 ---样例:20200929073509
- String cheticTime = oriField.getString("CHETIC_TIME");
- String jpsj = StringUtils.isNotBlank(cheticTime)? TimeTool.timeStampToDateString(TimeTool.dateStringToTimeStamp3(cheticTime)) : "暂无";
- // String jpkyz = oriField.getString("CHETIC_PASSTA_NAME"); // 检票客运站
- // 检票车次号
- String cheticTrainNo = oriField.getString("CHETIC_TRAIN_NO");
- String jpcch = StringUtils.isNotBlank(cheticTrainNo)? cheticTrainNo : "暂无";
- // String bc = oriField.getString("SHIFT"); // 班次
- // 座号
- String seatNo = oriField.getString("SEAT_NO");
- String zh = StringUtils.isNotBlank(seatNo)? seatNo : "暂无";
- // String pj = oriField.getString("VEHTIC_PRIC"); // 票价
- // String zffs = oriField.getString("PAYM_METH_NAME"); // 支付方式
- // 车牌号
- String vehPlateNum = oriField.getString("VEH_PLATE_NUM");
- String cph = StringUtils.isNotBlank(vehPlateNum)? vehPlateNum : "暂无";
- // 始发地站点
- String depAddrStatiName = oriField.getString("DEP_ADDR_STATI_NAME");
- String sfdzdmc = (StringUtils.isNotBlank(depAddrStatiName) && !"0".equals(depAddrStatiName))? depAddrStatiName : "暂无";
- // 始发地行政区划代码
- String sfdxzqhdm = oriField.getString("DEP_ADDR_ADDI_CODE");
- // 目的地站点
- String destStatiName = oriField.getString("DEST_STATI_NAME");
- String mddzdmc = StringUtils.isNotBlank(destStatiName)? destStatiName : "暂无";
- String mddxzqhdm = oriField.getString("DEST_ADDI_CODE"); // 目的地行政区划代码
- // 订票时间 ---样例:20200929061228
- String booticTime = oriField.getString("BOOTIC_TIME");
- String dpsj = StringUtils.isNotBlank(booticTime)? TimeTool.timeStampToDateString(TimeTool.dateStringToTimeStamp3(booticTime)) : "暂无";
- // String dpfs = oriField.getString("BOOTIC_METH"); // 订票方式
- // 发车时间 ---样例:20200929061228
- String depTimeDtime = oriField.getString("DEP_TIME_DTIME");
- String fcsj = StringUtils.isNotBlank(depTimeDtime)? TimeTool.timeStampToDateString(TimeTool.dateStringToTimeStamp3(depTimeDtime)) : "暂无";
- // String ddsj = oriField.getString("ARR_TIME"); // 到达时间
- // String lxrXm = oriField.getString("CTCT_PERSON_NAME"); // 联系人姓名
- // String lxrLxdh = oriField.getString("CTCT_PERSON_CTCT_TEL"); // 联系人联系电话
- String captureTimeKy = TimeTool.timeStampToDateString(Long.valueOf(oriField.getString("CAPTURE_TIME")));
- yjxxsm.append("客运数据 - 票号:");
- yjxxsm.append(ph);
- yjxxsm.append(",旅客姓名:");
- yjxxsm.append(lkXm);
- yjxxsm.append(",旅客身份证号:");
- yjxxsm.append(lkSfzh);
- yjxxsm.append(",旅客手机号:");
- yjxxsm.append(lkSjh);
- yjxxsm.append(",订票时间:");
- yjxxsm.append(dpsj);
- yjxxsm.append(",发车时间:");
- yjxxsm.append(fcsj);
- yjxxsm.append(",始发站:");
- yjxxsm.append(sfdzdmc);
- yjxxsm.append(",目的站:");
- yjxxsm.append(mddzdmc);
- yjxxsm.append(",检票时间:");
- yjxxsm.append(jpsj);
- yjxxsm.append(",检票车次号:");
- yjxxsm.append(jpcch);
- yjxxsm.append(",座号:");
- yjxxsm.append(zh);
- yjxxsm.append(",车牌号:");
- yjxxsm.append(cph);
- for (Map<String, Object> modelInfoMap : modelInfoList) {
- String mxbh = (String) modelInfoMap.get("mxbh");
- if("DRYJ-BSJJ-KYCC".equals(mxbh)){ // 单人预警-本市进京-客运乘车
- if(StringUtils.isNotBlank(sfdxzqhdm) && StringUtils.isNotBlank(mddxzqhdm)){
- // 始发地:天津,目的地:北京
- if("12".equals(sfdxzqhdm.substring(0, 2)) && "11".equals(mddxzqhdm.substring(0, 2))){
- warningInfoList.add(new Object[]{rwbh, rwmc, rwlx, rwlxmc, rwdxlxmc, yjxxbh, lkXm, lkSfzh, lkSjh, yjxxsm.toString(), yjzt, Constants.YJZT_WD, captureTimeKy, zrjz, zrmjid, zrmjxm, zrmjjh, zrmjlxfs, zrdwbm, CommonUtil.getConfValueByKey(zrdwbm), zrbmbm, CommonUtil.getConfValueByKey(zrbmbm), sqrXm, sqrSfzh, sqrJh, sqrDwbm, sqrDwmc, yjryLb, yjryBq, gkjb, gkjbmc, resourceCode, null, null, currentTime, currentTime, null, null, null, null, null});
- break;
- }
- }
- }
- }
- yjxxsm.setLength(0);
- } else if (resCodeMhdp.equals(resourceCode)) { // =========== 民航订票数据
- // 订座记录编号
- String ordseatRecoNo = oriField.getString("ORDSEAT_RECO_NO");
- String dzjlbh = StringUtils.isNotBlank(ordseatRecoNo)? ordseatRecoNo : "暂无";
- // 旅客中文名
- String passName = oriField.getString("PASS_NAME");
- String lkzwm = StringUtils.isNotBlank(passName)? passName : "暂无";
- // 旅客证件号码
- String credNum = oriField.getString("CRED_NUM");
- String zjhm = StringUtils.isNotBlank(credNum)? credNum : "暂无";
- // String lklxdh = oriField.getString("PASS_CTCT_TEL"); // 旅客联系电话
- // 承运航空公司
- String carrOrgaAirlineName = oriField.getString("CARR_ORGA_AIRLINE_NAME");
- String cyhkgs = StringUtils.isNotBlank(carrOrgaAirlineName)? carrOrgaAirlineName : "暂无";
- // 责任航空公司
- String respUnitAirlineName = oriField.getString("RESP_UNIT_AIRLINE_NAME");
- String zrhkgs = StringUtils.isNotBlank(respUnitAirlineName)? respUnitAirlineName : "暂无";
- // 航班号
- String flinum = oriField.getString("FLINUM");
- String hbh = StringUtils.isNotBlank(flinum)? flinum : "暂无";
- // 起飞机场
- String flyInitNrtAirportName = oriField.getString("FLY_INIT_NRT_AIRPORT_NAME");
- String qfjcmc = StringUtils.isNotBlank(flyInitNrtAirportName)? flyInitNrtAirportName : "暂无";
- // 起飞机场代码
- String flyInitNrtAirportCode = oriField.getString("FLY_INIT_NRT_AIRPORT_CODE");
- String qfjcdm = StringUtils.isNotBlank(flyInitNrtAirportCode)? flyInitNrtAirportCode : "暂无";
- // String qfzcs = oriField.getString("FLY_INIT_ADDR_CITY_NAME"); // 起飞站城市
- // 到达机场
- String arrAtAirAirportName = oriField.getString("ARR_AT_AIR_AIRPORT_NAME");
- String ddjcmc = StringUtils.isNotBlank(arrAtAirAirportName)? arrAtAirAirportName : "暂无";
- // 到达机场代码
- String arrAtAirAirportCode = oriField.getString("ARR_AT_AIR_AIRPORT_CODE");
- String ddjcdm = StringUtils.isNotBlank(arrAtAirAirportCode)? arrAtAirAirportCode : "暂无";
- // String ddzcs = oriField.getString("ARR_ADDR_CITY_NAME"); // 到达站城市
- // String cfrq = oriField.getString("STAOFF_DATE"); // 出发日期
- // 出发时间 ---样例:20200929061228
- String staoffTime = oriField.getString("STAOFF_TIME");
- String cfsj = StringUtils.isNotBlank(staoffTime)? TimeTool.timeStampToDateString(TimeTool.dateStringToTimeStamp3(staoffTime)) : "暂无";
- // String ddrq = oriField.getString("ARR_DATE"); // 到达日期
- // 到达时间
- String arrTime = oriField.getString("ARR_TIME");
- String ddsj = StringUtils.isNotBlank(arrTime)? arrTime : "暂无";
- // String kpzt = oriField.getString("ELE_TIC_STAT_NAME"); // 客票状态
- // String cw = oriField.getString("CHISHI_SEAT"); // 舱位
- // String dpsj = oriField.getString("BOOTIC_TIME"); // 订票时间
- // 截获时间 ---样例:20200929061228
- String captureTime = oriField.getString("CAPTURE_TIME");
- String captureTimeMhdp = StringUtils.isNotBlank(captureTime)? TimeTool.timeStampToDateString(TimeTool.dateStringToTimeStamp3(captureTime)) : "暂无";
- yjxxsm.append("民航订票 - 订座记录编号:");
- yjxxsm.append(dzjlbh);
- yjxxsm.append(",旅客中文名:");
- yjxxsm.append(lkzwm);
- yjxxsm.append(",旅客证件号码:");
- yjxxsm.append(zjhm);
- yjxxsm.append(",承运航空公司:");
- yjxxsm.append(cyhkgs);
- yjxxsm.append(",责任航空公司:");
- yjxxsm.append(zrhkgs);
- yjxxsm.append(",航班号:");
- yjxxsm.append(hbh);
- yjxxsm.append(",起飞机场:");
- yjxxsm.append(qfjcmc);
- yjxxsm.append(",出发时间:");
- yjxxsm.append(cfsj);
- yjxxsm.append(",到达机场:");
- yjxxsm.append(ddjcmc);
- yjxxsm.append(",到达时间:");
- yjxxsm.append(ddsj);
- for (Map<String, Object> modelInfoMap : modelInfoList) {
- String mxbh = (String) modelInfoMap.get("mxbh");
- if("DRYJ-WSLJ-MHDP".equals(mxbh)){ // 单人预警-外省来津-民航订票
- if(StringUtils.isNotBlank(ddjcdm)){
- // 业务需求:到达机场代码为TSN(中国-天津-天津滨海国际机场)
- if("TSN".equals(ddjcdm.trim())){
- warningInfoList.add(new Object[]{rwbh, rwmc, rwlx, rwlxmc, rwdxlxmc, yjxxbh, lkzwm, zjhm, yjrySjh, yjxxsm.toString(), yjzt, Constants.YJZT_WD, captureTimeMhdp, zrjz, zrmjid, zrmjxm, zrmjjh, zrmjlxfs, zrdwbm, CommonUtil.getConfValueByKey(zrdwbm), zrbmbm, CommonUtil.getConfValueByKey(zrbmbm), sqrXm, sqrSfzh, sqrJh, sqrDwbm, sqrDwmc, yjryLb, yjryBq, gkjb, gkjbmc, resourceCode, null, null, currentTime, currentTime, null, null, null, null, ddjcmc});
- break;
- }
- }
- } else if ("DRYJ-KSGJ-MHDP".equals(mxbh)) { // 单人预警-跨省轨迹-民航订票
- if(StringUtils.isNotBlank(qfjcdm) && StringUtils.isNotBlank(ddjcmc)){
- String mddShi = (String) modelInfoMap.get("mdd_shi");
- // 业务需求:起飞机场代码为TSN(中国-天津-天津滨海国际机场),到达机场处在当前任务所记录的目的地市境内
- if("TSN".equals(qfjcdm.trim()) && ddjcmc.contains(mddShi)){
- warningInfoList.add(new Object[]{rwbh, rwmc, rwlx, rwlxmc, rwdxlxmc, yjxxbh, lkzwm, zjhm, yjrySjh, yjxxsm.toString(), yjzt, Constants.YJZT_WD, captureTimeMhdp, zrjz, zrmjid, zrmjxm, zrmjjh, zrmjlxfs, zrdwbm, CommonUtil.getConfValueByKey(zrdwbm), zrbmbm, CommonUtil.getConfValueByKey(zrbmbm), sqrXm, sqrSfzh, sqrJh, sqrDwbm, sqrDwmc, yjryLb, yjryBq, gkjb, gkjbmc, resourceCode, null, null, currentTime, currentTime, null, null, null, null, ddjcmc});
- break;
- }
- }
- }
- }
- yjxxsm.setLength(0);
- } else if (resCodeJnryzs.equals(resourceCode)) { // =========== 境内人员住宿数据
- // 旅馆编号
- String lgbh = oriField.getString("HOTEL_NO");
- String[] lgxxArr = CommonUtil.getConfValueByKey(lgbh).split("@");
- // 旅馆名称
- // String lgmc = oriField.getString("HOTE_NAME");
- // 旅馆地址
- // String lgdz = oriField.getString("HOTEL_ADDR_ADDR_NAME");
- // 旅馆经度
- // String lgjd = oriField.getString("HOTEL_LON");
- // 旅馆纬度
- // String lgwd = oriField.getString("HOTEL_LAT");
- String lgmc = lgxxArr[0];
- String lgdz = lgxxArr[1];
- String lgjd = lgxxArr[2];
- String lgwd = lgxxArr[3];
- // String lglx = oriField.getString("HOTE_TYPE_NAME"); // 旅馆类型
- // 姓名
- String rzrXm = oriField.getString("NAME");
- // 身份证号
- String rzrSfzh = oriField.getString("CERT_NO");
- // 旅客联系电话
- String ctctTel = oriField.getString("CTCT_TEL");
- String rzrLxdh = StringUtils.isNotBlank(ctctTel)? ctctTel : yjrySjh;
- // String rylx = oriField.getString("PER_CLAS_NAME"); // 人员类型
- // String gj = oriField.getString("NATION_NAME"); // 国籍
- // String hjdz = oriField.getString("DOMIC_ADDR_NAME"); // 户籍地址
- // 入住时间 ---样例:20250329061228
- String admiTime = oriField.getString("ADMI_TIME");
- String rzsj = StringUtils.isNotBlank(admiTime)? TimeTool.timeStampToDateString(TimeTool.dateStringToTimeStamp3(admiTime)) : "暂无";
- // 退房时间 ---样例:20250329061228
- String choutTime = oriField.getString("CHOUT_TIME");
- String tfsj = StringUtils.isNotBlank(choutTime)? TimeTool.timeStampToDateString(TimeTool.dateStringToTimeStamp3(choutTime)) : "暂无";
- // String zsts = oriField.getString("LODG_DAY_NUM"); // 住宿天数
- // 房间号
- String roomNo = oriField.getString("ROOM_NO");
- String fjh = StringUtils.isNotBlank(roomNo)? roomNo : "暂无";
- // String rzrs = oriField.getString("ADMISSION_PER_NUM"); // 入住人数
- // String ywsxcl = oriField.getString("THER_ACCO_VEHI_JUDGE_FLAG"); // 有无随行车辆
- // String sxclhp = oriField.getString("ACCO_VEH_VEH_PLATE_NUM"); // 随行车辆号牌
- // String wypt = oriField.getString("PLAT_NAME"); // 网约平台
- // String ydrXm = oriField.getString("APPO_PER_NAME"); // 预定人姓名
- // String ydrSfzh = oriField.getString("APPO_PER_CERT_NO"); // 预定人身份证号
- // String ydrSjh = oriField.getString("APPO_PER_CTCT_TEL"); // 预定人手机号
- // String rzr2Xm = oriField.getString("ADMIS_PER_TWO_NAME"); // 入住人2姓名
- // String rzr2Sfzh = oriField.getString("ADMIS_PER_TWO_CERT_NO"); // 入住人2身份证号
- // String rzr2Lxfs = oriField.getString("ADMIS_PER_TWO_CTCT_TEL"); // 入住人2联系方式
- String captureTimeJnryzs = TimeTool.timeStampToDateString(Long.valueOf(oriField.getString("CAPTURE_TIME")));
- yjxxsm.append("旅馆住宿 - 旅馆编号:");
- yjxxsm.append(lgbh);
- yjxxsm.append(",旅馆名称:");
- yjxxsm.append(lgmc);
- yjxxsm.append(",旅馆地址:");
- yjxxsm.append(lgdz);
- yjxxsm.append(",入住人姓名:");
- yjxxsm.append(rzrXm);
- yjxxsm.append(",入住人身份证号:");
- yjxxsm.append(rzrSfzh);
- yjxxsm.append(",入住人联系电话:");
- yjxxsm.append(rzrLxdh);
- yjxxsm.append(",入住时间:");
- yjxxsm.append(rzsj);
- yjxxsm.append(",退房时间:");
- yjxxsm.append(tfsj);
- yjxxsm.append(",房间号:");
- yjxxsm.append(fjh);
- for (Map<String, Object> modelInfoMap : modelInfoList) {
- String mxbh = (String) modelInfoMap.get("mxbh");
- /*if("DRYJ-BSJJ-LKZD".equals(mxbh)){ // 单人预警-本市进京-旅客住店
- // --- todo
- // 该需求不合理,待定
- }
- else*/
- if("DRYJ-BSMGQY-LKZD".equals(mxbh)){ // 单人预警-本市敏感区域-旅客住店
- JSONArray areaInfoList = JSON.parseArray(bkqyxx);
- for (Object obj : areaInfoList) {
- JSONObject ctrlAreaInfo = (JSONObject) obj;
- String qymc = (String) ctrlAreaInfo.get("qymc");
- Integer qyjhlx = (Integer) ctrlAreaInfo.get("qyjhlx");
- JSONObject locationJSONObj = JSON.parseObject(String.valueOf(ctrlAreaInfo.get("qyfwjwdjhFh")));
- JSONArray locationSet = locationJSONObj.getJSONArray("location");
- if(!"null".equals(lgjd) && !"null".equals(lgwd)){
- if(Constants.NUM_0 == qyjhlx){
- JSONObject loc = locationSet.getJSONObject(0);
- String centerLon84 = loc.getString("lon");
- String centerLat84 = loc.getString("lat");
- String radius = loc.getString("radius");
- if(GeoUtils.isPointInCircle(Double.valueOf(lgwd), Double.valueOf(lgjd), Double.valueOf(centerLat84), Double.valueOf(centerLon84), Double.valueOf(radius))){
- yjxxsm.append(",所在区域:");
- yjxxsm.append(qymc);
- warningInfoList.add(new Object[]{rwbh, rwmc, rwlx, rwlxmc, rwdxlxmc, yjxxbh, rzrXm, rzrSfzh, rzrLxdh, yjxxsm.toString(), yjzt, Constants.YJZT_WD, captureTimeJnryzs, zrjz, zrmjid, zrmjxm, zrmjjh, zrmjlxfs, zrdwbm, CommonUtil.getConfValueByKey(zrdwbm), zrbmbm, CommonUtil.getConfValueByKey(zrbmbm), sqrXm, sqrSfzh, sqrJh, sqrDwbm, sqrDwmc, yjryLb, yjryBq, gkjb, gkjbmc, resourceCode, lgjd, lgwd, currentTime, currentTime, null, null, null, qymc, lgdz});
- yjxxsm.setLength(0);
- break;
- }
- } else {
- List<Coordinate> coordinates = new ArrayList<>();
- for (Object item : locationSet) {
- JSONObject loc = (JSONObject) item;
- String vertexLon84 = loc.getString("lon");
- String vertexLat84 = loc.getString("lat");
- coordinates.add(new Coordinate(Double.valueOf(vertexLon84), Double.valueOf(vertexLat84)));
- }
- if(GeoUtils.isPointInPolygon(coordinates, new Coordinate(Double.valueOf(lgjd), Double.valueOf(lgwd)))){
- yjxxsm.append(",所在区域:");
- yjxxsm.append(qymc);
- warningInfoList.add(new Object[]{rwbh, rwmc, rwlx, rwlxmc, rwdxlxmc, yjxxbh, rzrXm, rzrSfzh, rzrLxdh, yjxxsm.toString(), yjzt, Constants.YJZT_WD, captureTimeJnryzs, zrjz, zrmjid, zrmjxm, zrmjjh, zrmjlxfs, zrdwbm, CommonUtil.getConfValueByKey(zrdwbm), zrbmbm, CommonUtil.getConfValueByKey(zrbmbm), sqrXm, sqrSfzh, sqrJh, sqrDwbm, sqrDwmc, yjryLb, yjryBq, gkjb, gkjbmc, resourceCode, lgjd, lgwd, currentTime, currentTime, null, null, null, qymc, lgdz});
- yjxxsm.setLength(0);
- break;
- }
- }
- }
- }
- }
- }
- yjxxsm.setLength(0);
- } else if (resCodeWbsw.equals(resourceCode)) { // =========== 网吧上网数据
- // 上网人员姓名
- String swryXm = oriField.getString("INTE_PER_NAME");
- // 上网人员身份证号
- String swrySfzh = oriField.getString("CRED_NUM");
- // 上网人员联系电话
- String ctctTel = oriField.getString("CTCT_TEL");
- String swryLxdh = StringUtils.isNotBlank(ctctTel)? ctctTel : yjrySjh;
- // 上网终端编号
- String intenetTermNo = oriField.getString("INTENET_TERM_NO");
- String swzdbh = StringUtils.isNotBlank(intenetTermNo)? intenetTermNo : "暂无";
- // String ip = oriField.getString("MAIENG_IP"); // IP地址
- // String zdmc = oriField.getString("TERM_DESIG"); // 终端名称
- // String zdmac = oriField.getString("TERM_MAC"); // 终端mac地址
- // 上网开始时间 ---样例:20250329061228
- String intenetStartTime = oriField.getString("INTENET_START_TIME");
- String swkssj = StringUtils.isNotBlank(intenetStartTime)? TimeTool.timeStampToDateString(TimeTool.dateStringToTimeStamp3(intenetStartTime)) : "暂无";
- // 上网结束时间 ---样例:20250329061228
- String intenetEndTime = oriField.getString("INTENET_END_TIME");
- String swjssj = StringUtils.isNotBlank(intenetEndTime)? TimeTool.timeStampToDateString(TimeTool.dateStringToTimeStamp3(intenetEndTime)) : "暂无";
- // String swsc = oriField.getString("INTENET_TIME_LENGTH"); // 上网时长
- // 营业场所编号
- String premNo = oriField.getString("PREM_NO");
- String yycsbh = StringUtils.isNotBlank(premNo)? premNo : "暂无";
- // 营业场所名称
- String premDesig = oriField.getString("PREM_DESIG");
- String yycsmc = StringUtils.isNotBlank(premDesig)? premDesig : "暂无";
- // String dzmc = oriField.getString("ADDR_NAME"); // 地址名称
- // String jd = oriField.getString("LON"); // 经度
- // String wd = oriField.getString("LAT"); // 纬度
- // String frXm = oriField.getString("LEGAL_NAME"); // 法人姓名
- // String frSfzh = oriField.getString("LEGAL_CRED_NUM"); // 法人身份证号
- // String frLxdh = oriField.getString("LEGAL_CTCT_TEL"); // 法人联系电话
- String captureTimeWbsw = TimeTool.timeStampToDateString(Long.valueOf(oriField.getString("CAPTURE_TIME")));
- yjxxsm.append("网吧上网 - 上网人员姓名:");
- yjxxsm.append(swryXm);
- yjxxsm.append(",上网人员身份证号:");
- yjxxsm.append(swrySfzh);
- yjxxsm.append(",上网人员联系电话:");
- yjxxsm.append(swryLxdh);
- yjxxsm.append(",上网终端编号:");
- yjxxsm.append(swzdbh);
- yjxxsm.append(",上网开始时间:");
- yjxxsm.append(swkssj);
- yjxxsm.append(",上网结束时间:");
- yjxxsm.append(swjssj);
- yjxxsm.append(",营业场所编号:");
- yjxxsm.append(yycsbh);
- yjxxsm.append(",营业场所名称:");
- yjxxsm.append(yycsmc);
- for (Map<String, Object> modelInfoMap : modelInfoList) {
- String mxbh = (String) modelInfoMap.get("mxbh");
- if("DRYJ-BSMGQY-WBSW".equals(mxbh)){ // 单人预警-本市敏感区域-网吧上网
- // --- todo
- // 表中无经、纬度数据,无法判断是否出现在布控区域
- // 暂时不做过滤处理
- warningInfoList.add(new Object[]{rwbh, rwmc, rwlx, rwlxmc, rwdxlxmc, yjxxbh, swryXm, swrySfzh, swryLxdh, yjxxsm.toString(), yjzt, Constants.YJZT_WD, captureTimeWbsw, zrjz, zrmjid, zrmjxm, zrmjjh, zrmjlxfs, zrdwbm, CommonUtil.getConfValueByKey(zrdwbm), zrbmbm, CommonUtil.getConfValueByKey(zrbmbm), sqrXm, sqrSfzh, sqrJh, sqrDwbm, sqrDwmc, yjryLb, yjryBq, gkjb, gkjbmc, resourceCode, null, null, currentTime, currentTime, null, null, null, null, yycsmc});
- break;
- }
- }
- yjxxsm.setLength(0);
- } else if (resCodeDt.equals(resourceCode)) { // =========== 地铁数据
- // 乘客姓名
- String ckXm = oriField.getString("XM");
- // 乘客身份证号
- String ckSfzh = oriField.getString("ZJHM");
- // 乘客联系电话
- String yddh = oriField.getString("YDDH");
- String ckLxdh = StringUtils.isNotBlank(yddh)? yddh : yjrySjh;
- // 刷卡卡号
- String khXxbh = oriField.getString("KH_XXBH");
- String skkh = StringUtils.isNotBlank(khXxbh)? khXxbh : "暂无";
- // 刷卡时间 ---样例:20250329061228
- String shkJdsj = oriField.getString("SHK_JDSJ");
- String sksj = StringUtils.isNotBlank(shkJdsj)? TimeTool.timeStampToDateString(TimeTool.dateStringToTimeStamp3(shkJdsj)) : "暂无";
- // 车站名称
- String czmMc = oriField.getString("CZM_MC");
- String czmc = StringUtils.isNotBlank(czmMc)? czmMc : "暂无";
- // 分类名称
- String flMc = oriField.getString("FL_MC");
- String flmc = StringUtils.isNotBlank(flMc)? flMc : "暂无";
- // 进出站标识名称
- String jczBsMc = oriField.getString("JCZ_BS_MC");
- String jczbsmc = StringUtils.isNotBlank(jczBsMc)? jczBsMc : "暂无";
- // 交易类型名称
- String jyLexMc = oriField.getString("JY_LEX_MC");
- String jylxmc = StringUtils.isNotBlank(jyLexMc)? jyLexMc : "暂无";
- // 闸机号
- String zhjhJyqk = oriField.getString("ZHJH_JYQK");
- String zjh = StringUtils.isNotBlank(zhjhJyqk)? zhjhJyqk : "暂无";
- // 地铁线路信息
- String dtXlxx = oriField.getString("DTXLXX");
- String dtxlxx = StringUtils.isNotBlank(dtXlxx)? dtXlxx : "暂无";
- String captureTimeDt = TimeTool.timeStampToDateString(Long.valueOf(oriField.getString("CAPTURE_TIME")));
- yjxxsm.append("地铁数据 - 乘客姓名:");
- yjxxsm.append(ckXm);
- yjxxsm.append(",乘客身份证号:");
- yjxxsm.append(ckSfzh);
- yjxxsm.append(",乘客联系电话:");
- yjxxsm.append(ckLxdh);
- yjxxsm.append(",刷卡卡号:");
- yjxxsm.append(skkh);
- yjxxsm.append(",刷卡时间:");
- yjxxsm.append(sksj);
- yjxxsm.append(",车站名称:");
- yjxxsm.append(czmc);
- yjxxsm.append(",分类名称:");
- yjxxsm.append(flmc);
- yjxxsm.append(",进出站标识名称:");
- yjxxsm.append(jczbsmc);
- yjxxsm.append(",交易类型名称:");
- yjxxsm.append(jylxmc);
- yjxxsm.append(",闸机号:");
- yjxxsm.append(zjh);
- yjxxsm.append(",地铁线路信息:");
- yjxxsm.append(dtxlxx);
- for (Map<String, Object> modelInfoMap : modelInfoList) {
- String mxbh = (String) modelInfoMap.get("mxbh");
- if("DRYJ-BSMGQY-DT".equals(mxbh)){ // 单人预警-本市敏感区域-地铁
- // --- todo
- // 表中无经、纬度数据,无法判断是否出现在布控区域
- // 暂时不做过滤处理
- warningInfoList.add(new Object[]{rwbh, rwmc, rwlx, rwlxmc, rwdxlxmc, yjxxbh, ckXm, ckSfzh, ckLxdh, yjxxsm.toString(), yjzt, Constants.YJZT_WD, captureTimeDt, zrjz, zrmjid, zrmjxm, zrmjjh, zrmjlxfs, zrdwbm, CommonUtil.getConfValueByKey(zrdwbm), zrbmbm, CommonUtil.getConfValueByKey(zrbmbm), sqrXm, sqrSfzh, sqrJh, sqrDwbm, sqrDwmc, yjryLb, yjryBq, gkjb, gkjbmc, resourceCode, null, null, currentTime, currentTime, null, null, null, null, czmc});
- break;
- }
- }
- yjxxsm.setLength(0);
- } else if (resCodeSjrd.equals(resourceCode)) { // =========== 手机热点
- // 移动电话
- String yddhSrc = oriField.getString("YDDH");
- String yddh = StringUtils.isNotBlank(yddhSrc)? yddhSrc : yjrySjh;
- // 城际设备信息编号
- String chjiSbeXxbh = oriField.getString("CHJI_SBE_XXBH");
- String cjsbxxbh = StringUtils.isNotBlank(chjiSbeXxbh)? chjiSbeXxbh : "暂无";
- // 国际移动用户识别码,IMSI
- String gjydyhsbm = oriField.getString("GJYDYHSBM");
- String imsi = StringUtils.isNotBlank(gjydyhsbm)? gjydyhsbm : "暂无";
- // 国际移动设备识别码,IMEI
- String gjydsbsfdm = oriField.getString("GJYDSBSFDM");
- String imei = StringUtils.isNotBlank(gjydsbsfdm)? gjydsbsfdm : "暂无";
- // 交换机信息编号
- String jhjXxbh = oriField.getString("JHJ_XXBH");
- String jhjxxbh = StringUtils.isNotBlank(jhjXxbh)? jhjXxbh : "暂无";
- // 位置区域信息编号
- String wzhQuyXxbh = oriField.getString("WZH_QUY_XXBH");
- String wzqyxxbh = StringUtils.isNotBlank(wzhQuyXxbh)? wzhQuyXxbh : "暂无";
- // 小区信息编号
- String xiqXxbh = oriField.getString("XIQ_XXBH");
- String xqxxbh = StringUtils.isNotBlank(xiqXxbh)? xiqXxbh : "暂无";
- // 经度
- String jd = oriField.getString("DQJD");
- // 纬度
- String wd = oriField.getString("DQWD");
- // 关联时间 ---样例:1745476573
- String glsj = TimeTool.timeStampToDateString(Long.valueOf(oriField.getString("JDSJ")));
- String captureTimeSjrd = TimeTool.timeStampToDateString(Long.valueOf(oriField.getString("CAPTURE_TIME")));
- String addressName = null;
- if(StringUtils.isNotBlank(wd) && StringUtils.isNotBlank(jd)){
- double[] jwdBD = GpsCoordinateUtils.calWGS84toBD09(Double.valueOf(wd), Double.valueOf(jd));
- String rspStr = httpClient.sendGetRequst(addressQueryUrl.replace("x", String.valueOf(jwdBD[1])).replace("y", String.valueOf(jwdBD[0])), null);
- JSONObject rspJSONObj = JSON.parseObject(rspStr);
- addressName = rspJSONObj.getString("fullAddress");
- }
- yjxxsm.append("手机热点 - 移动电话:");
- yjxxsm.append(yddh);
- yjxxsm.append(",城际设备信息编号:");
- yjxxsm.append(cjsbxxbh);
- yjxxsm.append(",IMSI:");
- yjxxsm.append(imsi);
- yjxxsm.append(",IMEI:");
- yjxxsm.append(imei);
- yjxxsm.append(",交换机信息编号:");
- yjxxsm.append(jhjxxbh);
- yjxxsm.append(",位置区域信息编号:");
- yjxxsm.append(wzqyxxbh);
- yjxxsm.append(",小区信息编号:");
- yjxxsm.append(xqxxbh);
- yjxxsm.append(",关联时间:");
- yjxxsm.append(glsj);
- yjxxsm.append(",位置信息:");
- yjxxsm.append(StringUtils.isNotBlank(addressName)? addressName : "暂无");
- for (Map<String, Object> modelInfoMap : modelInfoList) {
- String mxbh = (String) modelInfoMap.get("mxbh");
- if("DRYJ-BSJJ-SJRD".equals(mxbh)){ // 单人预警-本市进京-手机热点
- // 暂时不做过滤处理
- warningInfoList.add(new Object[]{rwbh, rwmc, rwlx, rwlxmc, rwdxlxmc, yjxxbh, yjryXm, yjrySfzh, yddh, yjxxsm.toString(), yjzt, Constants.YJZT_WD, captureTimeSjrd, zrjz, zrmjid, zrmjxm, zrmjjh, zrmjlxfs, zrdwbm, CommonUtil.getConfValueByKey(zrdwbm), zrbmbm, CommonUtil.getConfValueByKey(zrbmbm), sqrXm, sqrSfzh, sqrJh, sqrDwbm, sqrDwmc, yjryLb, yjryBq, gkjb, gkjbmc, resourceCode, jd, wd, currentTime, currentTime, null, null, null, null, addressName});
- break;
- }
- }
- yjxxsm.setLength(0);
- } else if (resCodeXlpc.equals(resourceCode)) { // =========== 巡逻盘查(人员)
- // 卡口信息ID
- String kakXxId = oriField.getString("KAK_XXID");
- String kkxxId = StringUtils.isNotBlank(kakXxId)? kakXxId : "暂无";
- // 卡口名称
- String kakMc = oriField.getString("KAK_MC");
- String kkmc = StringUtils.isNotBlank(kakMc)? kakMc : "暂无";
- // 终端型号
- String zhdXh = oriField.getString("ZHD_XH");
- String zdxh = StringUtils.isNotBlank(zhdXh)? zhdXh : "暂无";
- // 终端串号简要情况
- String zhdChaJyqk = oriField.getString("ZHD_CHA_JYQK");
- String zdchjyqk = StringUtils.isNotBlank(zhdChaJyqk)? zhdChaJyqk : "暂无";
- // 盘查时间 ---样例:20250329061228
- String pacJdsj = oriField.getString("PAC_JDSJ");
- String pcsj = StringUtils.isNotBlank(pacJdsj)? TimeTool.timeStampToDateString(TimeTool.dateStringToTimeStamp3(pacJdsj)) : "暂无";
- // 人员姓名
- String xmSrc = oriField.getString("XM");
- String xm = StringUtils.isNotBlank(xmSrc)? xmSrc : "暂无";
- // 人员身份证号
- String gmsfhm = oriField.getString("GMSFHM");
- String sfzh = StringUtils.isNotBlank(gmsfhm)? gmsfhm : "暂无";
- // 人员联系电话
- String lxdhSrc = oriField.getString("LXDH");
- String lxdh = StringUtils.isNotBlank(lxdhSrc)? lxdhSrc : yjrySjh;
- // String rybq = oriField.getString("REY_BQI_MC"); // 人员标签
- // 籍贯
- String jgXzqhmc = oriField.getString("JG_XZQHMC");
- String jg = StringUtils.isNotBlank(jgXzqhmc)? jgXzqhmc : "暂无";
- // 民族
- String mzmzwz = oriField.getString("MZMZWZ");
- String mz = StringUtils.isNotBlank(mzmzwz)? mzmzwz : "暂无";
- // 居住地区划内详细地址
- String jzdQhnxxdz = oriField.getString("JZD_QHNXXDZ");
- String jzdxxdz = StringUtils.isNotBlank(jzdQhnxxdz)? jzdQhnxxdz : "暂无";
- // 盘查民警姓名
- String pacMjXm = oriField.getString("PAC_MJ_XM");
- String pcmjXm = StringUtils.isNotBlank(pacMjXm)? pacMjXm : "暂无";
- // 盘查民警警号
- String pacMjJh = oriField.getString("PAC_MJ_JH");
- String pcmjJh = StringUtils.isNotBlank(pacMjJh)? pacMjJh : "暂无";
- // 盘查民警账号
- String pacMjZh = oriField.getString("PAC_MJ_ZH");
- String pcmjZh = StringUtils.isNotBlank(pacMjZh)? pacMjZh : "暂无";
- // 盘查民警所属单位名称
- String pacMjSsDwmc = oriField.getString("PAC_MJ_SS_DWMC");
- String pcmjSsdwmc = StringUtils.isNotBlank(pacMjSsDwmc)? pacMjSsDwmc : "暂无";
- // 盘查处理结果
- String pacChlJguMc = oriField.getString("PAC_CHL_JGU_MC");
- String pccljg = StringUtils.isNotBlank(pacChlJguMc)? pacChlJguMc : "暂无";
- // 盘查处理移交单位名称
- String pacChlYijDwmc = oriField.getString("PAC_CHL_YIJ_DWMC");
- String pcclyjdwmc = StringUtils.isNotBlank(pacChlYijDwmc)? pacChlYijDwmc : "暂无";
- // 业务类型名称
- String ywlxMc = oriField.getString("YWLX_MC");
- String ywlx = StringUtils.isNotBlank(ywlxMc)? ywlxMc : "暂无";
- // 盘查地经度
- String pcdJd = oriField.getString("PCD_DQJD");
- // 盘查地纬度
- String pcdWd = oriField.getString("PCD_DQWD");
- String captureTimeXlpc = TimeTool.timeStampToDateString(Long.valueOf(oriField.getString("CAPTURE_TIME")));
- String addressName = null;
- if(StringUtils.isNotBlank(pcdWd) && StringUtils.isNotBlank(pcdJd)){
- double[] jwdBD = GpsCoordinateUtils.calWGS84toBD09(Double.valueOf(pcdWd), Double.valueOf(pcdJd));
- String rspStr = httpClient.sendGetRequst(addressQueryUrl.replace("x", String.valueOf(jwdBD[1])).replace("y", String.valueOf(jwdBD[0])), null);
- JSONObject rspJSONObj = JSON.parseObject(rspStr);
- addressName = rspJSONObj.getString("fullAddress");
- }
- yjxxsm.append("巡逻盘查 - 人员姓名:");
- yjxxsm.append(xm);
- yjxxsm.append(",人员身份证号:");
- yjxxsm.append(sfzh);
- yjxxsm.append(",人员联系电话:");
- yjxxsm.append(lxdh);
- yjxxsm.append(",籍贯:");
- yjxxsm.append(jg);
- yjxxsm.append(",民族:");
- yjxxsm.append(mz);
- yjxxsm.append(",居住地详细地址:");
- yjxxsm.append(jzdxxdz);
- yjxxsm.append(",盘查时间:");
- yjxxsm.append(pcsj);
- yjxxsm.append(",卡口ID:");
- yjxxsm.append(kkxxId);
- yjxxsm.append(",卡口名称:");
- yjxxsm.append(kkmc);
- yjxxsm.append(",终端型号:");
- yjxxsm.append(zdxh);
- yjxxsm.append(",终端串号:");
- yjxxsm.append(zdchjyqk);
- yjxxsm.append(",盘查民警姓名:");
- yjxxsm.append(pcmjXm);
- yjxxsm.append(",盘查民警警号:");
- yjxxsm.append(pcmjJh);
- yjxxsm.append(",盘查民警账号:");
- yjxxsm.append(pcmjZh);
- yjxxsm.append(",盘查民警所属单位名称:");
- yjxxsm.append(pcmjSsdwmc);
- yjxxsm.append(",盘查处理结果:");
- yjxxsm.append(pccljg);
- yjxxsm.append(",盘查处理移交单位名称:");
- yjxxsm.append(pcclyjdwmc);
- yjxxsm.append(",业务类型名称:");
- yjxxsm.append(ywlx);
- yjxxsm.append(",盘查地位置信息:");
- yjxxsm.append(StringUtils.isNotBlank(addressName)? addressName : "暂无");
- for (Map<String, Object> modelInfoMap : modelInfoList) {
- String mxbh = (String) modelInfoMap.get("mxbh");
- if("DRYJ-BSJJ-XLPC".equals(mxbh)){ // 单人预警-本市进京-巡逻盘查
- // 暂时不做过滤处理
- warningInfoList.add(new Object[]{rwbh, rwmc, rwlx, rwlxmc, rwdxlxmc, yjxxbh, xm, sfzh, lxdh, yjxxsm.toString(), yjzt, Constants.YJZT_WD, captureTimeXlpc, zrjz, zrmjid, zrmjxm, zrmjjh, zrmjlxfs, zrdwbm, CommonUtil.getConfValueByKey(zrdwbm), zrbmbm, CommonUtil.getConfValueByKey(zrbmbm), sqrXm, sqrSfzh, sqrJh, sqrDwbm, sqrDwmc, yjryLb, yjryBq, gkjb, gkjbmc, resourceCode, pcdJd, pcdWd, currentTime, currentTime, null, null, null, null, addressName});
- break;
- }
- }
- yjxxsm.setLength(0);
- } else if (resCodeZdjc.equals(resourceCode)) { // =========== 站点检查(人员)
- // 人员姓名
- String xmSrc = oriField.getString("XM");
- String xm = StringUtils.isNotBlank(xmSrc)? xmSrc : "暂无";
- // 人员身份证号
- String gmsfhm = oriField.getString("GMSFHM");
- String sfzh = StringUtils.isNotBlank(gmsfhm)? gmsfhm : "暂无";
- // 民族
- String mzmzwz = oriField.getString("MZMZWZ");
- String mz = StringUtils.isNotBlank(mzmzwz)? mzmzwz : "暂无";
- // 地址
- String dzmc = oriField.getString("DZMC");
- String dz = StringUtils.isNotBlank(dzmc)? dzmc : "暂无";
- // 发证机关名称
- String fzjgMc = oriField.getString("FZJG_MC");
- String fzjg = StringUtils.isNotBlank(fzjgMc)? fzjgMc : "暂无";
- // 证件有效起始日期
- String zjyxqKsRq = oriField.getString("ZJYXQ_KS_RQ");
- String zjyxqsrq = StringUtils.isNotBlank(zjyxqKsRq)? zjyxqKsRq : "暂无";
- // 证件有效终止日期
- String zjyxqJshRq = oriField.getString("ZJYXQ_JSH_RQ");
- String zjyxzzrq = StringUtils.isNotBlank(zjyxqJshRq)? zjyxqJshRq : "暂无";
- // 警员编号
- String jyuBh = oriField.getString("JYU_BH");
- String jybh = StringUtils.isNotBlank(jyuBh)? jyuBh : "暂无";
- // 人员照片地址
- String ryzpWz = oriField.getString("RYZP_WZ");
- String ryzpUrl = StringUtils.isNotBlank(ryzpWz)? ryzpWz : "暂无";
- // 检查站名称
- String jiczMc = oriField.getString("JICZ_MC");
- String jczmc = StringUtils.isNotBlank(jiczMc)? jiczMc : "暂无";
- // 检查时间 ---样例:20250329061228
- String jicJdsj = oriField.getString("JIC_JDSJ");
- String jcsj = StringUtils.isNotBlank(jicJdsj)? TimeTool.timeStampToDateString(TimeTool.dateStringToTimeStamp3(jicJdsj)) : "暂无";
- String captureTimeZdjc = TimeTool.timeStampToDateString(Long.valueOf(oriField.getString("CAPTURE_TIME")));
- yjxxsm.append("站点检查 - 人员姓名:");
- yjxxsm.append(xm);
- yjxxsm.append(",人员身份证号:");
- yjxxsm.append(sfzh);
- yjxxsm.append(",民族:");
- yjxxsm.append(mz);
- yjxxsm.append(",地址:");
- yjxxsm.append(dz);
- yjxxsm.append(",检查时间:");
- yjxxsm.append(jcsj);
- yjxxsm.append(",发证机关:");
- yjxxsm.append(fzjg);
- yjxxsm.append(",证件有效起始日期:");
- yjxxsm.append(zjyxqsrq);
- yjxxsm.append(",证件有效终止日期:");
- yjxxsm.append(zjyxzzrq);
- yjxxsm.append(",人员照片:");
- yjxxsm.append(ryzpUrl);
- yjxxsm.append(",警员编号:");
- yjxxsm.append(jybh);
- yjxxsm.append(",检查站名称:");
- yjxxsm.append(jczmc);
- for (Map<String, Object> modelInfoMap : modelInfoList) {
- String mxbh = (String) modelInfoMap.get("mxbh");
- if("DRYJ-BSJJ-ZDJC".equals(mxbh)){ // 单人预警-本市进京-站点检查
- // 暂时不做过滤处理
- warningInfoList.add(new Object[]{rwbh, rwmc, rwlx, rwlxmc, rwdxlxmc, yjxxbh, xm, sfzh, yjrySjh, yjxxsm.toString(), yjzt, Constants.YJZT_WD, captureTimeZdjc, zrjz, zrmjid, zrmjxm, zrmjjh, zrmjlxfs, zrdwbm, CommonUtil.getConfValueByKey(zrdwbm), zrbmbm, CommonUtil.getConfValueByKey(zrbmbm), sqrXm, sqrSfzh, sqrJh, sqrDwbm, sqrDwmc, yjryLb, yjryBq, gkjb, gkjbmc, resourceCode, null, null, currentTime, currentTime, null, null, null, null, jczmc});
- break;
- }
- }
- yjxxsm.setLength(0);
- } else if (resCodeDzwl.equals(resourceCode)) { // =========== 电子围栏(火车站)
- // 移动电话
- String mob = oriField.getString("MOB");
- String yddh = StringUtils.isNotBlank(mob)? mob : yjrySjh;
- // 国际移动用户识别码
- String imsiSrc = oriField.getString("IMSI");
- String imsi = StringUtils.isNotBlank(imsiSrc)? imsiSrc : "暂无";
- // 国际移动设备识别码
- String imeiSrc = oriField.getString("IMEI");
- String imei = StringUtils.isNotBlank(imeiSrc)? imeiSrc : "暂无";
- // 手机MAC地址
- String mobphoMac = oriField.getString("MOBPHO_MAC");
- String sjMac = StringUtils.isNotBlank(mobphoMac)? mobphoMac : "暂无";
- // 运营商名称
- // String spName = oriField.getString("SP_NAME");
- // String yysmc = StringUtils.isNotBlank(spName)? spName : "暂无";
- // 设备编号
- String equipmentNo = oriField.getString("EQUIPMENT_NO");
- String sbbh = StringUtils.isNotBlank(equipmentNo)? equipmentNo : "暂无";
- // 所在地区编号
- // String szdqbh = oriField.getString("IN_THE_AREA_NO");
- // 厂商编号
- // String csbh = oriField.getString("COMP_NO");
- // 网络类型名称
- // String wllxmc = oriField.getString("NET_TYPE_NAME");
- // 频点
- // String pd = oriField.getString("FREPOI");
- // 基站地球经度
- String jzdqJd = oriField.getString("BASSTA_LON");
- // 基站地球纬度
- String jzdqWd = oriField.getString("BASSTA_LAT");
- // 截获时间 ---样例:20250329061228
- String captureTime = oriField.getString("CAPTURE_TIME");
- String captureTimeDzwl = StringUtils.isNotBlank(captureTime)? TimeTool.timeStampToDateString(TimeTool.dateStringToTimeStamp3(captureTime)) : "暂无";
- String addressName = null;
- if(StringUtils.isNotBlank(jzdqWd) && StringUtils.isNotBlank(jzdqJd)){
- double[] jwdBD = GpsCoordinateUtils.calWGS84toBD09(Double.valueOf(jzdqWd), Double.valueOf(jzdqJd));
- String rspStr = httpClient.sendGetRequst(addressQueryUrl.replace("x", String.valueOf(jwdBD[1])).replace("y", String.valueOf(jwdBD[0])), null);
- JSONObject rspJSONObj = JSON.parseObject(rspStr);
- addressName = rspJSONObj.getString("fullAddress");
- }
- yjxxsm.append("火车站电围 - 移动电话:");
- yjxxsm.append(yddh);
- yjxxsm.append(",IMSI:");
- yjxxsm.append(imsi);
- yjxxsm.append(",IMEI:");
- yjxxsm.append(imei);
- yjxxsm.append(",手机MAC地址:");
- yjxxsm.append(sjMac);
- yjxxsm.append(",设备编号:");
- yjxxsm.append(sbbh);
- for (Map<String, Object> modelInfoMap : modelInfoList) {
- String mxbh = (String) modelInfoMap.get("mxbh");
- if("DRYJ-BSJJ-HCZDW".equals(mxbh)){ // 单人预警-本市进京-火车站电围
- // 只保留命中点位在火车站区域内的数据
- if(GeoUtils.isPointInCircle(Double.valueOf(jzdqWd), Double.valueOf(jzdqJd), Double.valueOf(centerPointLatHcz), Double.valueOf(centerPointLonHcz), Double.valueOf(radiusHcz))){
- warningInfoList.add(new Object[]{rwbh, rwmc, rwlx, rwlxmc, rwdxlxmc, yjxxbh, yjryXm, yjrySfzh, yddh, yjxxsm.toString(), yjzt, Constants.YJZT_WD, captureTimeDzwl, zrjz, zrmjid, zrmjxm, zrmjjh, zrmjlxfs, zrdwbm, CommonUtil.getConfValueByKey(zrdwbm), zrbmbm, CommonUtil.getConfValueByKey(zrbmbm), sqrXm, sqrSfzh, sqrJh, sqrDwbm, sqrDwmc, yjryLb, yjryBq, gkjb, gkjbmc, resourceCode, jzdqJd, jzdqWd, currentTime, currentTime, null, null, null, "火车站", addressName});
- break;
- }
- }
- }
- yjxxsm.setLength(0);
- } else if (resCodeRlgz.equals(resourceCode)) { // =========== 人脸感知(火车站)
- // 抓拍机编号
- String snashoMachNo = oriField.getString("SNASHO_MACH_NO");
- String zpjbh = StringUtils.isNotBlank(snashoMachNo)? snashoMachNo : "暂无";
- // 抓拍机名称
- String snashoMachDesig = oriField.getString("SNASHO_MACH_DESIG");
- String zpjmc = StringUtils.isNotBlank(snashoMachDesig)? snashoMachDesig : "暂无";
- // 告警人员姓名
- // String gjryXm = oriField.getString("ALARM_PERSON_NAME");
- // 证件号码
- String credNum = oriField.getString("CRED_NUM");
- String gjryZjhm = StringUtils.isNotBlank(credNum)? credNum : "暂无";
- // 告警时间 ---样例:20250329061228
- String alarmTime = oriField.getString("ALARM_TIME");
- String gjsj = StringUtils.isNotBlank(alarmTime)? TimeTool.timeStampToDateString(TimeTool.dateStringToTimeStamp3(alarmTime)) : "暂无";
- // 地址名称
- // String dzmc = oriField.getString("ADDR_NAME");
- // 预警相似度
- // String yjxsd = oriField.getString("EARALA_SIMILA");
- // 告警信息处理结果
- // String gjxxcljg = oriField.getString("ALARM_INFO_PROC_RESU");
- // 人脸图片文件路径
- String perFacePictureFilePath = oriField.getString("PER_FACE_PICTURE_FILE_PATH");
- String rltpwjlj = StringUtils.isNotBlank(perFacePictureFilePath)? perFacePictureFilePath : "暂无";
- // 经度
- String jd = oriField.getString("LON");
- // 纬度
- String wd = oriField.getString("LAT");
- String addressName = null;
- if(StringUtils.isNotBlank(wd) && StringUtils.isNotBlank(jd)){
- double[] jwdBD = GpsCoordinateUtils.calWGS84toBD09(Double.valueOf(wd), Double.valueOf(jd));
- String rspStr = httpClient.sendGetRequst(addressQueryUrl.replace("x", String.valueOf(jwdBD[1])).replace("y", String.valueOf(jwdBD[0])), null);
- JSONObject rspJSONObj = JSON.parseObject(rspStr);
- addressName = rspJSONObj.getString("fullAddress");
- }
- yjxxsm.append("火车站人脸感知 - 抓拍机编号:");
- yjxxsm.append(zpjbh);
- yjxxsm.append(",抓拍机名称:");
- yjxxsm.append(zpjmc);
- yjxxsm.append(",告警人员证件号码:");
- yjxxsm.append(gjryZjhm);
- yjxxsm.append(",告警时间:");
- yjxxsm.append(gjsj);
- yjxxsm.append(",人脸图片文件路径:");
- yjxxsm.append(rltpwjlj);
- for (Map<String, Object> modelInfoMap : modelInfoList) {
- String mxbh = (String) modelInfoMap.get("mxbh");
- if("DRYJ-BSJJ-HCZRLGZ".equals(mxbh)){ // 单人预警-本市进京-火车站人脸感知
- // 只保留命中点位在火车站区域内的数据
- if(GeoUtils.isPointInCircle(Double.valueOf(wd), Double.valueOf(jd), Double.valueOf(centerPointLatHcz), Double.valueOf(centerPointLonHcz), Double.valueOf(radiusHcz))){
- warningInfoList.add(new Object[]{rwbh, rwmc, rwlx, rwlxmc, rwdxlxmc, yjxxbh, yjryXm, gjryZjhm, yjrySjh, yjxxsm.toString(), yjzt, Constants.YJZT_WD, gjsj, zrjz, zrmjid, zrmjxm, zrmjjh, zrmjlxfs, zrdwbm, CommonUtil.getConfValueByKey(zrdwbm), zrbmbm, CommonUtil.getConfValueByKey(zrbmbm), sqrXm, sqrSfzh, sqrJh, sqrDwbm, sqrDwmc, yjryLb, yjryBq, gkjb, gkjbmc, resourceCode, jd, wd, currentTime, currentTime, null, null, null, "火车站", addressName});
- break;
- }
- }
- }
- yjxxsm.setLength(0);
- } else if (resCodeGmszy.equals(resourceCode)) { // =========== 购买散装油
- // 抓拍机编号
- String snashoMachNo = oriField.getString("SNASHO_MACH_NO");
- String zpjbh = StringUtils.isNotBlank(snashoMachNo)? snashoMachNo : "暂无";
- // 抓拍机名称
- String snashoMachDesig = oriField.getString("SNASHO_MACH_DESIG");
- String zpjmc = StringUtils.isNotBlank(snashoMachDesig)? snashoMachDesig : "暂无";
- // 证件号码
- String credNum = oriField.getString("CRED_NUM");
- String gjryZjhm = StringUtils.isNotBlank(credNum)? credNum : "暂无";
- // 告警时间 ---样例:20250329061228
- String alarmTime = oriField.getString("ALARM_TIME");
- String gjsj = StringUtils.isNotBlank(alarmTime)? TimeTool.timeStampToDateString(TimeTool.dateStringToTimeStamp3(alarmTime)) : "暂无";
- // 人脸图片文件路径
- String perFacePictureFilePath = oriField.getString("PER_FACE_PICTURE_FILE_PATH");
- String rltpwjlj = StringUtils.isNotBlank(perFacePictureFilePath)? perFacePictureFilePath : "暂无";
- // 经度
- String jd = oriField.getString("LON");
- // 纬度
- String wd = oriField.getString("LAT");
- String addressName = null;
- if(StringUtils.isNotBlank(wd) && StringUtils.isNotBlank(jd)){
- double[] jwdBD = GpsCoordinateUtils.calWGS84toBD09(Double.valueOf(wd), Double.valueOf(jd));
- String rspStr = httpClient.sendGetRequst(addressQueryUrl.replace("x", String.valueOf(jwdBD[1])).replace("y", String.valueOf(jwdBD[0])), null);
- JSONObject rspJSONObj = JSON.parseObject(rspStr);
- addressName = rspJSONObj.getString("fullAddress");
- }
- yjxxsm.append("购买散装油 - 抓拍机编号:");
- yjxxsm.append(zpjbh);
- yjxxsm.append(",抓拍机名称:");
- yjxxsm.append(zpjmc);
- yjxxsm.append(",告警人员证件号码:");
- yjxxsm.append(gjryZjhm);
- yjxxsm.append(",告警时间:");
- yjxxsm.append(gjsj);
- yjxxsm.append(",人脸图片文件路径:");
- yjxxsm.append(rltpwjlj);
- for (Map<String, Object> modelInfoMap : modelInfoList) {
- String mxbh = (String) modelInfoMap.get("mxbh");
- if("DRYJ-FXXW-GMSZY".equals(mxbh)){ // 单人预警-风险行为-购买散装油
- warningInfoList.add(new Object[]{rwbh, rwmc, rwlx, rwlxmc, rwdxlxmc, yjxxbh, yjryXm, gjryZjhm, yjrySjh, yjxxsm.toString(), yjzt, Constants.YJZT_WD, gjsj, zrjz, zrmjid, zrmjxm, zrmjjh, zrmjlxfs, zrdwbm, CommonUtil.getConfValueByKey(zrdwbm), zrbmbm, CommonUtil.getConfValueByKey(zrbmbm), sqrXm, sqrSfzh, sqrJh, sqrDwbm, sqrDwmc, yjryLb, yjryBq, gkjb, gkjbmc, resourceCode, jd, wd, currentTime, currentTime, null, null, null, "火车站", addressName});
- break;
- }
- }
- yjxxsm.setLength(0);
- }
- }
- }
- // ========================= 批量入库符合条件的预警数据
- if(warningInfoList.size() > 0){
- batchSaveNum = ctrlDao.batchInsertWarningInfo(warningInfoList);
- }
- log.info("【QBEQSJYCTRL - 单人预警消费者服务】 当次消费到的数据量:{},符合条件保存入库的数据量:{}", records.count(), batchSaveNum);
- }
- }
- }
- }
|