Browse Source

[update]修改抓拍图片上传S3逻辑

xiahailong 2 years ago
parent
commit
1122dbc872
62 changed files with 960 additions and 1960 deletions
  1. 264 261
      src/main/java/cn/com/taiji/esshipservice/listener/hlx/fusion/DynamicCaptureCarTrackConsumer.java
  2. 230 228
      src/main/java/cn/com/taiji/esshipservice/listener/hlx/fusion/DynamicCaptureFaceTrackConsumer.java
  3. 167 167
      src/main/java/cn/com/taiji/esshipservice/listener/hlx/fusion/DynamicCaptureShipTrackConsumer.java
  4. 254 254
      src/main/java/cn/com/taiji/esshipservice/listener/hlx/fusion/EsHkImagesDumpS3.java
  5. 43 7
      src/main/java/cn/com/taiji/esshipservice/utils/HttpsDownloadUtils.java
  6. 2 188
      src/main/resources/application-prod.yml
  7. BIN
      target/EsHkImagesDumpS3.jar
  8. BIN
      target/EsHkImagesDumpS3.jar.original
  9. 0 277
      target/classes/application-dev.yml
  10. 0 345
      target/classes/application-prod.yml
  11. 0 34
      target/classes/application.yml
  12. BIN
      target/classes/cn/com/taiji/esshipservice/AxShipTrackEsServiceApplication.class
  13. BIN
      target/classes/cn/com/taiji/esshipservice/config/BingoFileConfig.class
  14. BIN
      target/classes/cn/com/taiji/esshipservice/config/DassIoClientConfig.class
  15. BIN
      target/classes/cn/com/taiji/esshipservice/config/EsClientConfiguration.class
  16. BIN
      target/classes/cn/com/taiji/esshipservice/constant/BeiDouIdConstants.class
  17. BIN
      target/classes/cn/com/taiji/esshipservice/constant/ShipHisTrackIndexConstants.class
  18. BIN
      target/classes/cn/com/taiji/esshipservice/domain/ANotOnline.class
  19. BIN
      target/classes/cn/com/taiji/esshipservice/domain/ApiResult.class
  20. BIN
      target/classes/cn/com/taiji/esshipservice/domain/BeiDouDTO.class
  21. BIN
      target/classes/cn/com/taiji/esshipservice/domain/Beidou.class
  22. BIN
      target/classes/cn/com/taiji/esshipservice/domain/CbgkShip$CbgkShipBuilder.class
  23. BIN
      target/classes/cn/com/taiji/esshipservice/domain/CbgkShip.class
  24. BIN
      target/classes/cn/com/taiji/esshipservice/domain/EsLocationDict.class
  25. BIN
      target/classes/cn/com/taiji/esshipservice/domain/HainanAreaOut.class
  26. BIN
      target/classes/cn/com/taiji/esshipservice/domain/HlxRadar.class
  27. BIN
      target/classes/cn/com/taiji/esshipservice/domain/ImportShipTable.class
  28. BIN
      target/classes/cn/com/taiji/esshipservice/domain/ImportShipTable2.class
  29. BIN
      target/classes/cn/com/taiji/esshipservice/domain/ShipTrackHistoryDTO.class
  30. BIN
      target/classes/cn/com/taiji/esshipservice/domain/SmallRadar.class
  31. BIN
      target/classes/cn/com/taiji/esshipservice/domain/TestQuery.class
  32. BIN
      target/classes/cn/com/taiji/esshipservice/domain/YzPortShip.class
  33. BIN
      target/classes/cn/com/taiji/esshipservice/domain/dto/BaseTrackQueryInputDTO.class
  34. BIN
      target/classes/cn/com/taiji/esshipservice/domain/dto/CommonHistoryTrack.class
  35. BIN
      target/classes/cn/com/taiji/esshipservice/domain/dto/EsHistoryTrack.class
  36. BIN
      target/classes/cn/com/taiji/esshipservice/domain/dto/FuseShipTrack.class
  37. BIN
      target/classes/cn/com/taiji/esshipservice/domain/dto/HisTrackQueryDto.class
  38. BIN
      target/classes/cn/com/taiji/esshipservice/domain/dto/HistoryTrack.class
  39. BIN
      target/classes/cn/com/taiji/esshipservice/domain/dto/TempTrack.class
  40. BIN
      target/classes/cn/com/taiji/esshipservice/domain/dto/TrackQueryCircleInputDTO.class
  41. BIN
      target/classes/cn/com/taiji/esshipservice/domain/dto/TrackQueryInputDTO.class
  42. BIN
      target/classes/cn/com/taiji/esshipservice/domain/dto/TrackQueryPolygonInputDTO.class
  43. BIN
      target/classes/cn/com/taiji/esshipservice/domain/dto/TrackQueryShipInputDTO.class
  44. BIN
      target/classes/cn/com/taiji/esshipservice/enums/HisQueryCmdEnum.class
  45. BIN
      target/classes/cn/com/taiji/esshipservice/enums/HisTrackSrcTypeEnum.class
  46. BIN
      target/classes/cn/com/taiji/esshipservice/exception/CustomException.class
  47. BIN
      target/classes/cn/com/taiji/esshipservice/listener/hlx/fusion/DynamicCaptureCarTrackConsumer.class
  48. BIN
      target/classes/cn/com/taiji/esshipservice/listener/hlx/fusion/DynamicCaptureFaceTrackConsumer.class
  49. BIN
      target/classes/cn/com/taiji/esshipservice/listener/hlx/fusion/DynamicCaptureShipTrackConsumer.class
  50. BIN
      target/classes/cn/com/taiji/esshipservice/utils/DateUtils.class
  51. BIN
      target/classes/cn/com/taiji/esshipservice/utils/GraphUtils.class
  52. BIN
      target/classes/cn/com/taiji/esshipservice/utils/HttpsDownloadUtils$1.class
  53. BIN
      target/classes/cn/com/taiji/esshipservice/utils/HttpsDownloadUtils$X509TrustUtiil.class
  54. BIN
      target/classes/cn/com/taiji/esshipservice/utils/HttpsDownloadUtils.class
  55. BIN
      target/classes/cn/com/taiji/esshipservice/utils/JsonParser.class
  56. BIN
      target/classes/cn/com/taiji/esshipservice/utils/MapPoint.class
  57. 0 108
      target/classes/log-config/logback-spring.xml
  58. 0 3
      target/maven-archiver/pom.properties
  59. 0 45
      target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
  60. 0 43
      target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
  61. 0 0
      target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/createdFiles.lst
  62. 0 0
      target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst

+ 264 - 261
src/main/java/cn/com/taiji/esshipservice/listener/hlx/fusion/DynamicCaptureCarTrackConsumer.java

@@ -1,261 +1,264 @@
-package cn.com.taiji.esshipservice.listener.hlx.fusion;
-
-import cn.com.taiji.esshipservice.utils.HttpsDownloadUtils;
-import com.alibaba.fastjson.JSONArray;
-import com.alibaba.fastjson.JSONObject;
-import lombok.extern.slf4j.Slf4j;
-import org.apache.kafka.clients.consumer.ConsumerRecord;
-import org.elasticsearch.action.bulk.BulkRequest;
-import org.elasticsearch.action.bulk.BulkResponse;
-import org.elasticsearch.action.index.IndexRequest;
-import org.elasticsearch.client.RequestOptions;
-import org.elasticsearch.client.RestHighLevelClient;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.kafka.annotation.KafkaListener;
-import org.springframework.kafka.annotation.TopicPartition;
-import org.springframework.kafka.support.Acknowledgment;
-import org.springframework.stereotype.Component;
-
-import java.io.IOException;
-import java.util.*;
-import java.util.concurrent.*;
-
-import static cn.com.taiji.esshipservice.constant.ShipHisTrackIndexConstants.INDEX_SEAT_HIK_CAPTURE_CAR_TRACKS;
-
-
-//海康
-
-/**
- * @author xhl
- */
-@Component
-@Slf4j
-public class DynamicCaptureCarTrackConsumer {
-
-    @Autowired
-    private RestHighLevelClient client;
-
-
-    @Autowired
-    private HttpsDownloadUtils httpsDownloadUtils;
-
-    ExecutorService threadPool = new ThreadPoolExecutor( 10,25,10L, TimeUnit.SECONDS, new LinkedBlockingDeque<>(10), Executors.defaultThreadFactory(), new ThreadPoolExecutor.DiscardPolicy());
-
-    /**
-     * 海康车辆抓拍数据-「分区」消费
-     * es场景
-     */
-
-    @KafkaListener(
-            groupId = "${taiji.kafka.consumer.hik-capture-car.group}",
-            topicPartitions = {
-                    @TopicPartition(
-                            topic = "${taiji.kafka.consumer.hik-capture-car.topic}",
-                            partitions = {"#{'${taiji.kafka.consumer.hik-capture-car.partitions0}'.split(',')}"}
-                    )
-            }
-    )
-    public void dynamicCaptureFaceTrack0(List<ConsumerRecord<?, ?>> records, Acknowledgment ack) {
-        threadPool.execute(()-> {
-            insertEs(records);
-        });
-        ack.acknowledge();
-    }
-
-
-    @KafkaListener(
-            groupId = "${taiji.kafka.consumer.hik-capture-car.group}",
-            topicPartitions = {
-                    @TopicPartition(
-                            topic = "${taiji.kafka.consumer.hik-capture-car.topic}",
-                            partitions = {"#{'${taiji.kafka.consumer.hik-capture-car.partitions1}'.split(',')}"}
-                    )
-            }
-    )
-    public void dynamicCaptureFaceTrack1(List<ConsumerRecord<?, ?>> records, Acknowledgment ack) {
-        threadPool.execute(()-> {
-            insertEs(records);
-        });
-        ack.acknowledge();
-
-    }
-
-
-    @KafkaListener(
-            groupId = "${taiji.kafka.consumer.hik-capture-car.group}",
-            topicPartitions = {
-                    @TopicPartition(
-                            topic = "${taiji.kafka.consumer.hik-capture-car.topic}",
-                            partitions = {"#{'${taiji.kafka.consumer.hik-capture-car.partitions2}'.split(',')}"}
-                    )
-            }
-    )
-    public void dynamicCaptureFaceTrack2(List<ConsumerRecord<?, ?>> records, Acknowledgment ack) {
-        threadPool.execute(()-> {
-            insertEs(records);
-        });
-        ack.acknowledge();
-    }
-
-
-    @KafkaListener(
-            groupId = "${taiji.kafka.consumer.hik-capture-car.group}",
-            topicPartitions = {
-                    @TopicPartition(
-                            topic = "${taiji.kafka.consumer.hik-capture-car.topic}",
-                            partitions = {"#{'${taiji.kafka.consumer.hik-capture-car.partitions3}'.split(',')}"}
-                    )
-            }
-    )
-    public void dynamicCaptureFaceTrack3(List<ConsumerRecord<?, ?>> records, Acknowledgment ack) {
-        threadPool.execute(()-> {
-            insertEs(records);
-        });
-        ack.acknowledge();
-    }
-
-
-    @KafkaListener(
-            groupId = "${taiji.kafka.consumer.hik-capture-car.group}",
-            topicPartitions = {
-                    @TopicPartition(
-                            topic = "${taiji.kafka.consumer.hik-capture-car.topic}",
-                            partitions = {"#{'${taiji.kafka.consumer.hik-capture-car.partitions4}'.split(',')}"}
-                    )
-            }
-    )
-    public void dynamicCaptureFaceTrack4(List<ConsumerRecord<?, ?>> records, Acknowledgment ack) {
-        threadPool.execute(()-> {
-            insertEs(records);
-        });
-        ack.acknowledge();
-
-    }
-
-    public void insertEs(List<ConsumerRecord<?, ?>> records) {
-        BulkRequest bulkRequest = new BulkRequest();
-        records.forEach(item -> {
-            Optional<?> message = Optional.ofNullable(item.value());
-            if (message.isPresent()) {
-                Object msg = message.get();
-                JSONObject map = JSONObject.parseObject(msg.toString());
-                JSONArray jsonArray = JSONObject.parseObject(map.getString("vehiclePassRecogList"),JSONArray.class);
-                if (jsonArray.size()>0){
-                    for (int i = 0; i < jsonArray.size(); i++) {
-                        Map<String, Object> maps = Collections.synchronizedMap(new HashMap<>());
-                        JSONObject job = jsonArray.getJSONObject(i);
-                        maps.put("cameraIndexCode", job.getString("cameraIndexCode"));
-                        maps.put("captureTime", job.getString("captureTime"));
-                        maps.put("card", job.getString("card"));
-                        maps.put("cardName", job.getString("cardName"));
-                        maps.put("cardNum", job.getString("cardNum"));
-                        maps.put("cardType", job.getString("cardType"));
-                        maps.put("cardTypeName", job.getString("cardTypeName"));
-                        maps.put("copilot", job.getString("copilot"));
-                        maps.put("copilotName", job.getString("copilotName"));
-                        maps.put("coverPlate", job.getString("coverPlate"));
-                        maps.put("coverPlateName", job.getString("coverPlateName"));
-                        maps.put("crossingIndexCode", job.getString("crossingIndexCode"));
-                        maps.put("dangMark", job.getString("dangMark"));
-                        maps.put("dangMarkName", job.getString("dangMarkName"));
-                        maps.put("decoration", job.getString("decoration"));
-                        maps.put("decorationName", job.getString("decorationName"));
-                        maps.put("directionIndex", job.getString("directionIndex"));
-                        maps.put("directionName", job.getString("directionName"));
-                        maps.put("envproSign", job.getString("envproSign"));
-                        maps.put("envproSignName", job.getString("envproSignName"));
-                        maps.put("frontChild", job.getString("frontChild"));
-                        maps.put("frontChildName", job.getString("frontChildName"));
-                        maps.put("id", job.getString("id"));
-                        maps.put("label", job.getString("label"));
-                        maps.put("labelName", job.getString("labelName"));
-                        maps.put("labelNum", job.getString("labelNum"));
-                        maps.put("laneNo", job.getString("laneNo"));
-                        maps.put("linkWifiVehicleId", job.getString("linkWifiVehicleId"));
-                        maps.put("linkFaceVehicleId", job.getString("linkFaceVehicleId"));
-                        maps.put("luggageRack", job.getString("luggageRack"));
-                        maps.put("luggageRackName", job.getString("luggageRackName"));
-                        maps.put("mobileDeviceLatitude", job.getString("mobileDeviceLatitude"));
-                        maps.put("mobileDeviceLongitude", job.getString("mobileDeviceLongitude"));
-                        maps.put("muckTruck", job.getString("muckTruck"));
-                        maps.put("muckTruckName", job.getString("muckTruckName"));
-                        maps.put("pdvs", job.getString("pdvs"));
-                        maps.put("pdvsName", job.getString("pdvsName"));
-                        maps.put("pendant", job.getString("pendant"));
-                        maps.put("pendantName", job.getString("pendantName"));
-                        maps.put("picUrlNum", job.getString("picUrlNum"));
-                        maps.put("pilotSafebelt", job.getString("pilotSafebelt"));
-                        maps.put("pliotSafebeltName", job.getString("pliotSafebeltName"));
-                        maps.put("pilotSunvisor", job.getString("pilotSunvisor"));
-                        maps.put("pilotSunvisorName", job.getString("pilotSunvisorName"));
-                        maps.put("plateColor", job.getString("plateColor"));
-                        maps.put("plateColorName", job.getString("plateColorName"));
-                        String plateImagePath = job.getString("plateImagePath");
-                        if (null != plateImagePath   && !plateImagePath.equals("")){
-                            maps.put("plateImagePath", httpsDownloadUtils.downloadFileHttps(plateImagePath));
-                        }
-                        maps.put("plateNo", job.getString("plateNo"));
-                        maps.put("plateState", job.getString("plateState"));
-                        maps.put("plateStateName", job.getString("plateStateName"));
-                        maps.put("plateType", job.getString("plateType"));
-                        maps.put("plateTypeName", job.getString("plateTypeName"));
-                        maps.put("rect", job.getString("rect"));
-                        maps.put("spareTire", job.getString("spareTire"));
-                        maps.put("spareTireName", job.getString("spareTireName"));
-                        maps.put("sunroof", job.getString("sunroof"));
-                        maps.put("sunroofName", job.getString("sunroofName"));
-                        String targetPicUrl = job.getString("targetPicUrl");
-                        if (null != targetPicUrl  && !targetPicUrl.equals("")){
-                            maps.put("targetPicUrl", httpsDownloadUtils.downloadFileHttps(targetPicUrl));
-                        }
-                        maps.put("tempPlateNo", job.getString("tempPlateNo"));
-                        maps.put("tempPlateNoName", job.getString("tempPlateNoName"));
-                        maps.put("tissueBox", job.getString("tissueBox"));
-                        maps.put("tissueBoxName", job.getString("tissueBoxName"));
-                        maps.put("tricycleCanopy", job.getString("tricycleCanopy"));
-                        maps.put("tricycleCanopyName", job.getString("tricycleCanopyName"));
-                        maps.put("uphone", job.getString("uphone"));
-                        maps.put("ecolabel", job.getString("ecolabel"));
-                        maps.put("ecolabelName", job.getString("ecolabelName"));
-                        maps.put("usePhoneName", job.getString("usePhoneName"));
-                        maps.put("vehicleColor", job.getString("vehicleColor"));
-                        maps.put("vehicleColorName", job.getString("vehicleColorName"));
-                        maps.put("vehicleColorDepth", job.getString("vehicleColorDepth"));
-                        maps.put("vehicleColorDepthName", job.getString("vehicleColorDepthName"));
-                        maps.put("vehicleHead", job.getString("vehicleHead"));
-                        maps.put("vehicleHeadName", job.getString("vehicleHeadName"));
-                        maps.put("vehicleLogo", job.getString("vehicleLogo"));
-                        maps.put("vehicleModel", job.getString("vehicleModel"));
-                        maps.put("vehicleLamp", job.getString("vehicleLamp"));
-                        maps.put("vehicleLampName", job.getString("vehicleLampName"));
-                        maps.put("vehicleSpeed", job.getString("vehicleSpeed"));
-                        maps.put("vehicleSprayPainted", job.getString("vehicleSprayPainted"));
-                        maps.put("vehicleSprayPaintedName", job.getString("vehicleSprayPaintedName"));
-                        maps.put("vehicleSubLogo", job.getString("vehicleSubLogo"));
-                        maps.put("vehicleType", job.getString("vehicleType"));
-                        maps.put("vehicleTypeName", job.getString("vehicleTypeName"));
-                        maps.put("vicePilotSafebelt", job.getString("vicePilotSafebelt"));
-                        maps.put("vicePilotSafebeltName", job.getString("vicePilotSafebeltName"));
-                        maps.put("vicePilotSunvisor", job.getString("vicePilotSunvisor"));
-                        maps.put("vicePilotSunvisorName", job.getString("vicePilotSunvisorName"));
-                        maps.put("imagePath1", job.getString("imagePath1"));
-                        maps.put("imagePath2", job.getString("imagePath2"));
-                        maps.put("imagePath3", job.getString("imagePath3"));
-                        maps.put("imagePath4", job.getString("imagePath4"));
-                        maps.put("imagePath5", job.getString("imagePath5"));
-                        maps.put("imagePath6", job.getString("imagePath6"));
-                        maps.put("direction", job.getString("direction"));
-                        bulkRequest.add(new IndexRequest(INDEX_SEAT_HIK_CAPTURE_CAR_TRACKS).source(maps));
-                    }
-                }
-            }
-        });
-        try {
-            BulkResponse bulk = client.bulk(bulkRequest, RequestOptions.DEFAULT);
-        } catch (IOException e) {
-            e.printStackTrace();
-        }
-
-    }
-
-}
+//package cn.com.taiji.esshipservice.listener.hlx.fusion;
+//
+//import cn.com.taiji.esshipservice.utils.HttpsDownloadUtils;
+//import com.alibaba.fastjson.JSONArray;
+//import com.alibaba.fastjson.JSONObject;
+//import lombok.extern.slf4j.Slf4j;
+//import org.apache.kafka.clients.consumer.ConsumerRecord;
+//import org.elasticsearch.action.bulk.BulkRequest;
+//import org.elasticsearch.action.bulk.BulkResponse;
+//import org.elasticsearch.action.index.IndexRequest;
+//import org.elasticsearch.client.RequestOptions;
+//import org.elasticsearch.client.RestHighLevelClient;
+//import org.springframework.beans.factory.annotation.Autowired;
+//import org.springframework.kafka.annotation.KafkaListener;
+//import org.springframework.kafka.annotation.TopicPartition;
+//import org.springframework.kafka.support.Acknowledgment;
+//import org.springframework.stereotype.Component;
+//
+//import java.io.IOException;
+//import java.util.*;
+//import java.util.concurrent.*;
+//
+//import static cn.com.taiji.esshipservice.constant.ShipHisTrackIndexConstants.INDEX_SEAT_HIK_CAPTURE_CAR_TRACKS;
+//
+//
+////海康
+//
+///**
+// * @author xhl
+// */
+//@Component
+//@Slf4j
+//public class DynamicCaptureCarTrackConsumer {
+//
+//    @Autowired
+//    private RestHighLevelClient client;
+//
+//
+//    @Autowired
+//    private HttpsDownloadUtils httpsDownloadUtils;
+//
+//    ExecutorService threadPool = new ThreadPoolExecutor( 10,25,10L, TimeUnit.SECONDS, new LinkedBlockingDeque<>(10), Executors.defaultThreadFactory(), new ThreadPoolExecutor.DiscardPolicy());
+//
+//    /**
+//     * 海康车辆抓拍数据-「分区」消费
+//     * es场景
+//     */
+//
+//    @KafkaListener(
+//            groupId = "${taiji.kafka.consumer.groupId}",
+//            topicPartitions = {
+//                    @TopicPartition(
+//                            topic = "${taiji.kafka.consumer.hik-capture-car.topic}",
+//                            partitions = {"#{'${taiji.kafka.consumer.hik-capture-car.partitions0}'.split(',')}"}
+//                    )
+//            }
+//    )
+//    public void dynamicCaptureFaceTrack0(List<ConsumerRecord<?, ?>> records, Acknowledgment ack) {
+//        threadPool.execute(()-> {
+//            insertEs(records);
+//        });
+//        ack.acknowledge();
+//    }
+//
+//
+//    @KafkaListener(
+//            groupId = "${taiji.kafka.consumer.groupId}",
+//            topicPartitions = {
+//                    @TopicPartition(
+//                            topic = "${taiji.kafka.consumer.hik-capture-car.topic}",
+//                            partitions = {"#{'${taiji.kafka.consumer.hik-capture-car.partitions1}'.split(',')}"}
+//                    )
+//            }
+//    )
+//    public void dynamicCaptureFaceTrack1(List<ConsumerRecord<?, ?>> records, Acknowledgment ack) {
+//        threadPool.execute(()-> {
+//            insertEs(records);
+//        });
+//        ack.acknowledge();
+//
+//    }
+//
+//
+//    @KafkaListener(
+//            groupId = "${taiji.kafka.consumer.groupId}",
+//            topicPartitions = {
+//                    @TopicPartition(
+//                            topic = "${taiji.kafka.consumer.hik-capture-car.topic}",
+//                            partitions = {"#{'${taiji.kafka.consumer.hik-capture-car.partitions2}'.split(',')}"}
+//                    )
+//            }
+//    )
+//    public void dynamicCaptureFaceTrack2(List<ConsumerRecord<?, ?>> records, Acknowledgment ack) {
+//        threadPool.execute(()-> {
+//            insertEs(records);
+//        });
+//        ack.acknowledge();
+//    }
+//
+//
+//    @KafkaListener(
+//            groupId = "${taiji.kafka.consumer.groupId}",
+//            topicPartitions = {
+//                    @TopicPartition(
+//                            topic = "${taiji.kafka.consumer.hik-capture-car.topic}",
+//                            partitions = {"#{'${taiji.kafka.consumer.hik-capture-car.partitions3}'.split(',')}"}
+//                    )
+//            }
+//    )
+//    public void dynamicCaptureFaceTrack3(List<ConsumerRecord<?, ?>> records, Acknowledgment ack) {
+//        threadPool.execute(()-> {
+//            insertEs(records);
+//        });
+//        ack.acknowledge();
+//    }
+//
+//
+//    @KafkaListener(
+//            groupId = "${taiji.kafka.consumer.groupId}",
+//            topicPartitions = {
+//                    @TopicPartition(
+//                            topic = "${taiji.kafka.consumer.hik-capture-car.topic}",
+//                            partitions = {"#{'${taiji.kafka.consumer.hik-capture-car.partitions4}'.split(',')}"}
+//                    )
+//            }
+//    )
+//    public void dynamicCaptureFaceTrack4(List<ConsumerRecord<?, ?>> records, Acknowledgment ack) {
+//        threadPool.execute(()-> {
+//            insertEs(records);
+//        });
+//        ack.acknowledge();
+//
+//    }
+//
+//    public void insertEs(List<ConsumerRecord<?, ?>> records) {
+//        BulkRequest bulkRequest = new BulkRequest();
+//        records.forEach(item -> {
+//            Optional<?> message = Optional.ofNullable(item.value());
+//            if (message.isPresent()) {
+//                Object msg = message.get();
+//                JSONObject map = JSONObject.parseObject(msg.toString());
+//                JSONArray jsonArray = JSONObject.parseObject(map.getString("vehiclePassRecogList"),JSONArray.class);
+//                if (jsonArray.size()>0){
+//                    for (int i = 0; i < jsonArray.size(); i++) {
+//                        Map<String, Object> maps = Collections.synchronizedMap(new HashMap<>());
+//                        JSONObject job = jsonArray.getJSONObject(i);
+//                        maps.put("cameraIndexCode", job.getString("cameraIndexCode"));
+//                        maps.put("captureTime", job.getString("captureTime"));
+//                        maps.put("card", job.getString("card"));
+//                        maps.put("cardName", job.getString("cardName"));
+//                        maps.put("cardNum", job.getString("cardNum"));
+//                        maps.put("cardType", job.getString("cardType"));
+//                        maps.put("cardTypeName", job.getString("cardTypeName"));
+//                        maps.put("copilot", job.getString("copilot"));
+//                        maps.put("copilotName", job.getString("copilotName"));
+//                        maps.put("coverPlate", job.getString("coverPlate"));
+//                        maps.put("coverPlateName", job.getString("coverPlateName"));
+//                        maps.put("crossingIndexCode", job.getString("crossingIndexCode"));
+//                        maps.put("dangMark", job.getString("dangMark"));
+//                        maps.put("dangMarkName", job.getString("dangMarkName"));
+//                        maps.put("decoration", job.getString("decoration"));
+//                        maps.put("decorationName", job.getString("decorationName"));
+//                        maps.put("directionIndex", job.getString("directionIndex"));
+//                        maps.put("directionName", job.getString("directionName"));
+//                        maps.put("envproSign", job.getString("envproSign"));
+//                        maps.put("envproSignName", job.getString("envproSignName"));
+//                        maps.put("frontChild", job.getString("frontChild"));
+//                        maps.put("frontChildName", job.getString("frontChildName"));
+//                        maps.put("id", job.getString("id"));
+//                        maps.put("label", job.getString("label"));
+//                        maps.put("labelName", job.getString("labelName"));
+//                        maps.put("labelNum", job.getString("labelNum"));
+//                        maps.put("laneNo", job.getString("laneNo"));
+//                        maps.put("linkWifiVehicleId", job.getString("linkWifiVehicleId"));
+//                        maps.put("linkFaceVehicleId", job.getString("linkFaceVehicleId"));
+//                        maps.put("luggageRack", job.getString("luggageRack"));
+//                        maps.put("luggageRackName", job.getString("luggageRackName"));
+//                        maps.put("mobileDeviceLatitude", job.getString("mobileDeviceLatitude"));
+//                        maps.put("mobileDeviceLongitude", job.getString("mobileDeviceLongitude"));
+//                        maps.put("location", job.getString("mobileDeviceLatitude")+" ,"+job.getString("mobileDeviceLongitude"));
+//                        maps.put("muckTruck", job.getString("muckTruck"));
+//                        maps.put("muckTruckName", job.getString("muckTruckName"));
+//                        maps.put("pdvs", job.getString("pdvs"));
+//                        maps.put("pdvsName", job.getString("pdvsName"));
+//                        maps.put("pendant", job.getString("pendant"));
+//                        maps.put("pendantName", job.getString("pendantName"));
+//                        maps.put("picUrlNum", job.getString("picUrlNum"));
+//                        maps.put("pilotSafebelt", job.getString("pilotSafebelt"));
+//                        maps.put("pliotSafebeltName", job.getString("pliotSafebeltName"));
+//                        maps.put("pilotSunvisor", job.getString("pilotSunvisor"));
+//                        maps.put("pilotSunvisorName", job.getString("pilotSunvisorName"));
+//                        maps.put("plateColor", job.getString("plateColor"));
+//                        maps.put("plateColorName", job.getString("plateColorName"));
+////                        String plateImagePath = job.getString("plateImagePath");
+////                        if (null != plateImagePath   && !plateImagePath.equals("")){
+////                            maps.put("plateImagePath", httpsDownloadUtils.downloadFileHttps(plateImagePath));
+////                        }
+//                        maps.put("plateImagePath",job.getString("plateImagePath"));
+//                        maps.put("plateNo", job.getString("plateNo"));
+//                        maps.put("plateState", job.getString("plateState"));
+//                        maps.put("plateStateName", job.getString("plateStateName"));
+//                        maps.put("plateType", job.getString("plateType"));
+//                        maps.put("plateTypeName", job.getString("plateTypeName"));
+//                        maps.put("rect", job.getString("rect"));
+//                        maps.put("spareTire", job.getString("spareTire"));
+//                        maps.put("spareTireName", job.getString("spareTireName"));
+//                        maps.put("sunroof", job.getString("sunroof"));
+//                        maps.put("sunroofName", job.getString("sunroofName"));
+////                        String targetPicUrl = job.getString("targetPicUrl");
+////                        if (null != targetPicUrl  && !targetPicUrl.equals("")){
+////                            maps.put("targetPicUrl", httpsDownloadUtils.downloadFileHttps(targetPicUrl));
+////                        }
+//                        maps.put("targetPicUrl",job.getString("targetPicUrl"));
+//                        maps.put("tempPlateNo", job.getString("tempPlateNo"));
+//                        maps.put("tempPlateNoName", job.getString("tempPlateNoName"));
+//                        maps.put("tissueBox", job.getString("tissueBox"));
+//                        maps.put("tissueBoxName", job.getString("tissueBoxName"));
+//                        maps.put("tricycleCanopy", job.getString("tricycleCanopy"));
+//                        maps.put("tricycleCanopyName", job.getString("tricycleCanopyName"));
+//                        maps.put("uphone", job.getString("uphone"));
+//                        maps.put("ecolabel", job.getString("ecolabel"));
+//                        maps.put("ecolabelName", job.getString("ecolabelName"));
+//                        maps.put("usePhoneName", job.getString("usePhoneName"));
+//                        maps.put("vehicleColor", job.getString("vehicleColor"));
+//                        maps.put("vehicleColorName", job.getString("vehicleColorName"));
+//                        maps.put("vehicleColorDepth", job.getString("vehicleColorDepth"));
+//                        maps.put("vehicleColorDepthName", job.getString("vehicleColorDepthName"));
+//                        maps.put("vehicleHead", job.getString("vehicleHead"));
+//                        maps.put("vehicleHeadName", job.getString("vehicleHeadName"));
+//                        maps.put("vehicleLogo", job.getString("vehicleLogo"));
+//                        maps.put("vehicleModel", job.getString("vehicleModel"));
+//                        maps.put("vehicleLamp", job.getString("vehicleLamp"));
+//                        maps.put("vehicleLampName", job.getString("vehicleLampName"));
+//                        maps.put("vehicleSpeed", job.getString("vehicleSpeed"));
+//                        maps.put("vehicleSprayPainted", job.getString("vehicleSprayPainted"));
+//                        maps.put("vehicleSprayPaintedName", job.getString("vehicleSprayPaintedName"));
+//                        maps.put("vehicleSubLogo", job.getString("vehicleSubLogo"));
+//                        maps.put("vehicleType", job.getString("vehicleType"));
+//                        maps.put("vehicleTypeName", job.getString("vehicleTypeName"));
+//                        maps.put("vicePilotSafebelt", job.getString("vicePilotSafebelt"));
+//                        maps.put("vicePilotSafebeltName", job.getString("vicePilotSafebeltName"));
+//                        maps.put("vicePilotSunvisor", job.getString("vicePilotSunvisor"));
+//                        maps.put("vicePilotSunvisorName", job.getString("vicePilotSunvisorName"));
+//                        maps.put("imagePath1", job.getString("imagePath1"));
+//                        maps.put("imagePath2", job.getString("imagePath2"));
+//                        maps.put("imagePath3", job.getString("imagePath3"));
+//                        maps.put("imagePath4", job.getString("imagePath4"));
+//                        maps.put("imagePath5", job.getString("imagePath5"));
+//                        maps.put("imagePath6", job.getString("imagePath6"));
+//                        maps.put("direction", job.getString("direction"));
+//                        bulkRequest.add(new IndexRequest(INDEX_SEAT_HIK_CAPTURE_CAR_TRACKS).source(maps));
+//                    }
+//                }
+//            }
+//        });
+//        try {
+//            BulkResponse bulk = client.bulk(bulkRequest, RequestOptions.DEFAULT);
+//        } catch (IOException e) {
+//            e.printStackTrace();
+//        }
+//
+//    }
+//
+//}

+ 230 - 228
src/main/java/cn/com/taiji/esshipservice/listener/hlx/fusion/DynamicCaptureFaceTrackConsumer.java

@@ -1,237 +1,239 @@
-package cn.com.taiji.esshipservice.listener.hlx.fusion;
-
-import cn.com.taiji.esshipservice.utils.HttpsDownloadUtils;
-import com.alibaba.fastjson.JSONArray;
-import com.alibaba.fastjson.JSONObject;
-import lombok.extern.slf4j.Slf4j;
-import org.apache.kafka.clients.consumer.ConsumerRecord;
-import org.elasticsearch.action.bulk.BulkRequest;
-import org.elasticsearch.action.bulk.BulkResponse;
-import org.elasticsearch.action.index.IndexRequest;
-import org.elasticsearch.client.RequestOptions;
-import org.elasticsearch.client.RestHighLevelClient;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.kafka.annotation.KafkaListener;
-import org.springframework.kafka.annotation.TopicPartition;
-import org.springframework.kafka.support.Acknowledgment;
-import org.springframework.stereotype.Component;
-
-import java.io.IOException;
-import java.util.*;
-import java.util.concurrent.*;
-
-import static cn.com.taiji.esshipservice.constant.ShipHisTrackIndexConstants.INDEX_SEAT_HIK_CAPTURE_FACE_TRACKS;
-
-
-//海康
-
-/**
- * @author xhl
- */
-@Component
-@Slf4j
-public class DynamicCaptureFaceTrackConsumer {
-
-    @Autowired
-    private RestHighLevelClient client;
-
-    @Autowired
-    private HttpsDownloadUtils httpsDownloadUtils;
-
-    ExecutorService threadPool = new ThreadPoolExecutor( 10,25,10L, TimeUnit.SECONDS, new LinkedBlockingDeque<>(10), Executors.defaultThreadFactory(), new ThreadPoolExecutor.DiscardPolicy());
-
-    /**
-     * 海康人员抓拍数据-「分区」消费
-     * es场景
-     */
-
-    @KafkaListener(
-            groupId = "${taiji.kafka.consumer.hik-capture-face.group}",
-            topicPartitions = {
-                    @TopicPartition(
-                            topic = "${taiji.kafka.consumer.hik-capture-face.topic}",
-                            partitions = {"#{'${taiji.kafka.consumer.hik-capture-face.partitions0}'.split(',')}"}
-                    )
-            }
-    )
-    public void dynamicCaptureFaceTrack0(List<ConsumerRecord<?, ?>> records, Acknowledgment ack) {
-        threadPool.execute(()-> {
-            insertEs(records);
-        });
-        ack.acknowledge();
-    }
-
-
-    @KafkaListener(
-            groupId = "${taiji.kafka.consumer.hik-capture-face.group}",
-            topicPartitions = {
-                    @TopicPartition(
-                            topic = "${taiji.kafka.consumer.hik-capture-face.topic}",
-                            partitions = {"#{'${taiji.kafka.consumer.hik-capture-face.partitions1}'.split(',')}"}
-                    )
-            }
-    )
-    public void dynamicCaptureFaceTrack1(List<ConsumerRecord<?, ?>> records, Acknowledgment ack) {
-        threadPool.execute(()-> {
-            insertEs(records);
-        });
-        ack.acknowledge();
-
-    }
-
-
-    @KafkaListener(
-            groupId = "${taiji.kafka.consumer.hik-capture-face.group}",
-            topicPartitions = {
-                    @TopicPartition(
-                            topic = "${taiji.kafka.consumer.hik-capture-face.topic}",
-                            partitions = {"#{'${taiji.kafka.consumer.hik-capture-face.partitions2}'.split(',')}"}
-                    )
-            }
-    )
-    public void dynamicCaptureFaceTrack2(List<ConsumerRecord<?, ?>> records, Acknowledgment ack) {
-        threadPool.execute(()-> {
-            insertEs(records);
-        });
-        ack.acknowledge();
-    }
-
-
-    @KafkaListener(
-            groupId = "${taiji.kafka.consumer.hik-capture-face.group}",
-            topicPartitions = {
-                    @TopicPartition(
-                            topic = "${taiji.kafka.consumer.hik-capture-face.topic}",
-                            partitions = {"#{'${taiji.kafka.consumer.hik-capture-face.partitions3}'.split(',')}"}
-                    )
-            }
-    )
-    public void dynamicCaptureFaceTrack3(List<ConsumerRecord<?, ?>> records, Acknowledgment ack) {
-        threadPool.execute(()-> {
-            insertEs(records);
-        });
-        ack.acknowledge();
-    }
-
-
-    @KafkaListener(
-            groupId = "${taiji.kafka.consumer.hik-capture-face.group}",
-            topicPartitions = {
-                    @TopicPartition(
-                            topic = "${taiji.kafka.consumer.hik-capture-face.topic}",
-                            partitions = {"#{'${taiji.kafka.consumer.hik-capture-face.partitions4}'.split(',')}"}
-                    )
-            }
-    )
-    public void dynamicCaptureFaceTrack4(List<ConsumerRecord<?, ?>> records, Acknowledgment ack) {
-        threadPool.execute(()-> {
-            insertEs(records);
-        });
-        ack.acknowledge();
-
-    }
-
-//    @Scheduled(cron = "0 30 18 * * ?")
-//    public void creatIndex(){
+//package cn.com.taiji.esshipservice.listener.hlx.fusion;
+//
+//import cn.com.taiji.esshipservice.utils.HttpsDownloadUtils;
+//import com.alibaba.fastjson.JSONArray;
+//import com.alibaba.fastjson.JSONObject;
+//import lombok.extern.slf4j.Slf4j;
+//import org.apache.kafka.clients.consumer.ConsumerRecord;
+//import org.elasticsearch.action.bulk.BulkRequest;
+//import org.elasticsearch.action.bulk.BulkResponse;
+//import org.elasticsearch.action.index.IndexRequest;
+//import org.elasticsearch.client.RequestOptions;
+//import org.elasticsearch.client.RestHighLevelClient;
+//import org.springframework.beans.factory.annotation.Autowired;
+//import org.springframework.kafka.annotation.KafkaListener;
+//import org.springframework.kafka.annotation.TopicPartition;
+//import org.springframework.kafka.support.Acknowledgment;
+//import org.springframework.stereotype.Component;
+//
+//import java.io.IOException;
+//import java.util.*;
+//import java.util.concurrent.*;
+//
+//import static cn.com.taiji.esshipservice.constant.ShipHisTrackIndexConstants.INDEX_SEAT_HIK_CAPTURE_FACE_TRACKS;
+//
+//
+////海康
+//
+///**
+// * @author xhl
+// */
+//@Component
+//@Slf4j
+//public class DynamicCaptureFaceTrackConsumer {
+//
+//    @Autowired
+//    private RestHighLevelClient client;
+//
+//    @Autowired
+//    private HttpsDownloadUtils httpsDownloadUtils;
+//
+//    ExecutorService threadPool = new ThreadPoolExecutor( 10,25,10L, TimeUnit.SECONDS, new LinkedBlockingDeque<>(10), Executors.defaultThreadFactory(), new ThreadPoolExecutor.DiscardPolicy());
+//
+//    /**
+//     * 海康人员抓拍数据-「分区」消费
+//     * es场景
+//     */
+//
+//    @KafkaListener(
+//            groupId = "${taiji.kafka.consumer.groupId}",
+//            topicPartitions = {
+//                    @TopicPartition(
+//                            topic = "${taiji.kafka.consumer.hik-capture-face.topic}",
+//                            partitions = {"#{'${taiji.kafka.consumer.hik-capture-face.partitions0}'.split(',')}"}
+//                    )
+//            }
+//    )
+//    public void dynamicCaptureFaceTrack0(List<ConsumerRecord<?, ?>> records, Acknowledgment ack) {
 //        threadPool.execute(()-> {
-//            try {
-//                TrackDaily();
-//            } catch (IOException e) {
-//                e.printStackTrace();
+//            insertEs(records);
+//        });
+//        ack.acknowledge();
+//    }
+//
+//
+//    @KafkaListener(
+//            groupId = "${taiji.kafka.consumer.groupId}",
+//            topicPartitions = {
+//                    @TopicPartition(
+//                            topic = "${taiji.kafka.consumer.hik-capture-face.topic}",
+//                            partitions = {"#{'${taiji.kafka.consumer.hik-capture-face.partitions1}'.split(',')}"}
+//                    )
 //            }
+//    )
+//    public void dynamicCaptureFaceTrack1(List<ConsumerRecord<?, ?>> records, Acknowledgment ack) {
+//        threadPool.execute(()-> {
+//            insertEs(records);
 //        });
+//        ack.acknowledge();
+//
 //    }
 //
-//    public void TrackDaily() throws IOException {
-//        //获取明日零时时间
-//        Calendar cal = Calendar.getInstance();
-//        cal.add(Calendar.DATE,1);
-//        cal.set(cal.get(Calendar.YEAR),cal.get(Calendar.MONTH),cal.get(Calendar.DAY_OF_MONTH),0,0,0);
-//        Date d = cal.getTime();
-//        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
-//        String name = INDEX_SEAT_HIK_CAPTURE_FACE_TRACKS + sdf.format(d);
-//        if (isExistsIndex(name)) {
-//            return;
-//        }
-//        CreateIndexRequest request = new CreateIndexRequest(name);
-//        // 2.准备请求参数
-//        request.source(MAPPING_HIK_CAPTURE_FACE, XContentType.JSON);
-//        client.indices().create(request, RequestOptions.DEFAULT);
+//
+//    @KafkaListener(
+//            groupId = "${taiji.kafka.consumer.groupId}",
+//            topicPartitions = {
+//                    @TopicPartition(
+//                            topic = "${taiji.kafka.consumer.hik-capture-face.topic}",
+//                            partitions = {"#{'${taiji.kafka.consumer.hik-capture-face.partitions2}'.split(',')}"}
+//                    )
+//            }
+//    )
+//    public void dynamicCaptureFaceTrack2(List<ConsumerRecord<?, ?>> records, Acknowledgment ack) {
+//        threadPool.execute(()-> {
+//            insertEs(records);
+//        });
+//        ack.acknowledge();
 //    }
 //
-//    /**
-//     * 判断指定的索引名是否存在
-//     *
-//     * @param indexName 索引名
-//     * @return 存在:true; 不存在:false;
-//     */
-//    public boolean isExistsIndex(String indexName) throws IOException {
 //
-//        GetIndexRequest getIndexRequest = new GetIndexRequest(indexName);
-//        boolean flag = client.indices().exists(getIndexRequest, RequestOptions.DEFAULT);
-//        return flag;
+//    @KafkaListener(
+//            groupId = "${taiji.kafka.consumer.groupId}",
+//            topicPartitions = {
+//                    @TopicPartition(
+//                            topic = "${taiji.kafka.consumer.hik-capture-face.topic}",
+//                            partitions = {"#{'${taiji.kafka.consumer.hik-capture-face.partitions3}'.split(',')}"}
+//                    )
+//            }
+//    )
+//    public void dynamicCaptureFaceTrack3(List<ConsumerRecord<?, ?>> records, Acknowledgment ack) {
+//        threadPool.execute(()-> {
+//            insertEs(records);
+//        });
+//        ack.acknowledge();
+//    }
+//
+//
+//    @KafkaListener(
+//            groupId = "${taiji.kafka.consumer.groupId}",
+//            topicPartitions = {
+//                    @TopicPartition(
+//                            topic = "${taiji.kafka.consumer.hik-capture-face.topic}",
+//                            partitions = {"#{'${taiji.kafka.consumer.hik-capture-face.partitions4}'.split(',')}"}
+//                    )
+//            }
+//    )
+//    public void dynamicCaptureFaceTrack4(List<ConsumerRecord<?, ?>> records, Acknowledgment ack) {
+//        threadPool.execute(()-> {
+//            insertEs(records);
+//        });
+//        ack.acknowledge();
+//
 //    }
-
-    public void insertEs(List<ConsumerRecord<?, ?>> records) {
-        BulkRequest bulkRequest = new BulkRequest();
-        records.forEach(item -> {
-            Optional<?> message = Optional.ofNullable(item.value());
-            if (message.isPresent()) {
-                Object msg = message.get();
-                JSONObject map = JSONObject.parseObject(msg.toString());
-                JSONArray jsonArray = JSONObject.parseObject(map.getString("faceLibRecogList"),JSONArray.class);
-                if (jsonArray.size()>0){
-                    for (int i = 0; i < jsonArray.size(); i++) {
-                        JSONObject job = jsonArray.getJSONObject(i);
-                        Map<String, Object> maps = Collections.synchronizedMap(new HashMap<>());
-                        String id = job.getString("traceUuid")+job.getString("traceIdx");
-                        maps.put("traceUuid", job.getString("traceUuid"));
-                        maps.put("traceIdx", job.getString("traceIdx"));
-                        maps.put("cameraIndexCode", job.getString("cameraIndexCode"));
-                        maps.put("captureTime", job.getString("captureTime"));
-                        maps.put("deviceIndexCode", job.getString("deviceIndexCode"));
-                        maps.put("deviceName", job.getString("deviceName"));
-                        String bkgUrl = job.getString("bkgUrl");
-                        if (null != bkgUrl && !bkgUrl.equals("")){
-                            maps.put("bkgUrl", httpsDownloadUtils.downloadFileHttps(bkgUrl));
-                        }
-                        maps.put("bornTime", job.getString("bornTime"));
-                        maps.put("name", job.getString("name"));
-                        maps.put("certificateNumber", job.getString("certificateNumber"));
-                        String facePicUrl = job.getString("facePicUrl");
-                        if (null != facePicUrl && !facePicUrl.equals("")){
-                            maps.put("facePicUrl", httpsDownloadUtils.downloadFileHttps(facePicUrl));
-                        }
-                        maps.put("faceRect", job.getString("faceRect"));
-                        maps.put("linkFaceBodyId", job.getString("linkFaceBodyId"));
-                        maps.put("gender", job.getString("gender"));
-                        maps.put("genderName", job.getString("genderName"));
-                        maps.put("glass", job.getString("glass"));
-                        maps.put("glassName", job.getString("glassName"));
-                        maps.put("latitude", job.getString("latitude"));
-                        maps.put("longitude", job.getString("longitude"));
-                        maps.put("linkFaceVehicleId", job.getString("linkFaceVehicleId"));
-                        maps.put("modelData", job.getString("modelData"));
-                        maps.put("plateNo", job.getString("plateNo"));
-                        maps.put("humanId", job.getString("humanId"));
-                        maps.put("smile", job.getString("smile"));
-                        maps.put("smileName", job.getString("smileName"));
-                        maps.put("age", job.getString("age"));
-                        maps.put("ageGroup", job.getString("ageGroup"));
-                        maps.put("ageGroupName", job.getString("ageGroupName"));
-                        maps.put("rect", job.getString("rect"));
-                        maps.put("address", job.getString("address"));
-                        bulkRequest.add(new IndexRequest(INDEX_SEAT_HIK_CAPTURE_FACE_TRACKS).source(maps).id(id));
-                    }
-                }
-            }
-        });
-        try {
-            BulkResponse bulk = client.bulk(bulkRequest, RequestOptions.DEFAULT);
-        } catch (IOException e) {
-            e.printStackTrace();
-        }
-
-    }
-
-}
+//
+////    @Scheduled(cron = "0 30 18 * * ?")
+////    public void creatIndex(){
+////        threadPool.execute(()-> {
+////            try {
+////                TrackDaily();
+////            } catch (IOException e) {
+////                e.printStackTrace();
+////            }
+////        });
+////    }
+////
+////    public void TrackDaily() throws IOException {
+////        //获取明日零时时间
+////        Calendar cal = Calendar.getInstance();
+////        cal.add(Calendar.DATE,1);
+////        cal.set(cal.get(Calendar.YEAR),cal.get(Calendar.MONTH),cal.get(Calendar.DAY_OF_MONTH),0,0,0);
+////        Date d = cal.getTime();
+////        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+////        String name = INDEX_SEAT_HIK_CAPTURE_FACE_TRACKS + sdf.format(d);
+////        if (isExistsIndex(name)) {
+////            return;
+////        }
+////        CreateIndexRequest request = new CreateIndexRequest(name);
+////        // 2.准备请求参数
+////        request.source(MAPPING_HIK_CAPTURE_FACE, XContentType.JSON);
+////        client.indices().create(request, RequestOptions.DEFAULT);
+////    }
+////
+////    /**
+////     * 判断指定的索引名是否存在
+////     *
+////     * @param indexName 索引名
+////     * @return 存在:true; 不存在:false;
+////     */
+////    public boolean isExistsIndex(String indexName) throws IOException {
+////
+////        GetIndexRequest getIndexRequest = new GetIndexRequest(indexName);
+////        boolean flag = client.indices().exists(getIndexRequest, RequestOptions.DEFAULT);
+////        return flag;
+////    }
+//
+//    public void insertEs(List<ConsumerRecord<?, ?>> records) {
+//        BulkRequest bulkRequest = new BulkRequest();
+//        records.forEach(item -> {
+//            Optional<?> message = Optional.ofNullable(item.value());
+//            if (message.isPresent()) {
+//                Object msg = message.get();
+//                JSONObject map = JSONObject.parseObject(msg.toString());
+//                JSONArray jsonArray = JSONObject.parseObject(map.getString("faceLibRecogList"),JSONArray.class);
+//                if (jsonArray.size()>0){
+//                    for (int i = 0; i < jsonArray.size(); i++) {
+//                        JSONObject job = jsonArray.getJSONObject(i);
+//                        Map<String, Object> maps = Collections.synchronizedMap(new HashMap<>());
+//                        String id = job.getString("traceUuid")+job.getString("traceIdx");
+//                        maps.put("traceUuid", job.getString("traceUuid"));
+//                        maps.put("traceIdx", job.getString("traceIdx"));
+//                        maps.put("cameraIndexCode", job.getString("cameraIndexCode"));
+//                        maps.put("captureTime", job.getString("captureTime"));
+//                        maps.put("deviceIndexCode", job.getString("deviceIndexCode"));
+//                        maps.put("deviceName", job.getString("deviceName"));
+////                        String bkgUrl = job.getString("bkgUrl");
+////                        if (null != bkgUrl && !bkgUrl.equals("")){
+////                            maps.put("bkgUrl", httpsDownloadUtils.downloadFileHttps(bkgUrl));
+////                        }
+//                        maps.put("bkgUrl", job.getString("bkgUrl"));
+//                        maps.put("bornTime", job.getString("bornTime"));
+//                        maps.put("name", job.getString("name"));
+//                        maps.put("certificateNumber", job.getString("certificateNumber"));
+////                        String facePicUrl = job.getString("facePicUrl");
+////                        if (null != facePicUrl && !facePicUrl.equals("")){
+////                            maps.put("facePicUrl", httpsDownloadUtils.downloadFileHttps(facePicUrl));
+////                        }
+//                        maps.put("facePicUrl",job.getString("facePicUrl"));
+//                        maps.put("faceRect", job.getString("faceRect"));
+//                        maps.put("linkFaceBodyId", job.getString("linkFaceBodyId"));
+//                        maps.put("gender", job.getString("gender"));
+//                        maps.put("genderName", job.getString("genderName"));
+//                        maps.put("glass", job.getString("glass"));
+//                        maps.put("glassName", job.getString("glassName"));
+//                        maps.put("latitude", job.getString("latitude"));
+//                        maps.put("longitude", job.getString("longitude"));
+//                        maps.put("linkFaceVehicleId", job.getString("linkFaceVehicleId"));
+//                        maps.put("modelData", job.getString("modelData"));
+//                        maps.put("plateNo", job.getString("plateNo"));
+//                        maps.put("humanId", job.getString("humanId"));
+//                        maps.put("smile", job.getString("smile"));
+//                        maps.put("smileName", job.getString("smileName"));
+//                        maps.put("age", job.getString("age"));
+//                        maps.put("ageGroup", job.getString("ageGroup"));
+//                        maps.put("ageGroupName", job.getString("ageGroupName"));
+//                        maps.put("rect", job.getString("rect"));
+//                        maps.put("address", job.getString("address"));
+//                        bulkRequest.add(new IndexRequest(INDEX_SEAT_HIK_CAPTURE_FACE_TRACKS).source(maps).id(id));
+//                    }
+//                }
+//            }
+//        });
+//        try {
+//            BulkResponse bulk = client.bulk(bulkRequest, RequestOptions.DEFAULT);
+//        } catch (IOException e) {
+//            e.printStackTrace();
+//        }
+//
+//    }
+//
+//}

+ 167 - 167
src/main/java/cn/com/taiji/esshipservice/listener/hlx/fusion/DynamicCaptureShipTrackConsumer.java

@@ -1,167 +1,167 @@
-package cn.com.taiji.esshipservice.listener.hlx.fusion;
-
-import cn.com.taiji.esshipservice.utils.HttpsDownloadUtils;
-import com.alibaba.fastjson.JSONObject;
-import lombok.extern.slf4j.Slf4j;
-import org.apache.kafka.clients.consumer.ConsumerRecord;
-import org.elasticsearch.action.bulk.BulkRequest;
-import org.elasticsearch.action.bulk.BulkResponse;
-import org.elasticsearch.action.index.IndexRequest;
-import org.elasticsearch.client.RequestOptions;
-import org.elasticsearch.client.RestHighLevelClient;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.kafka.annotation.KafkaListener;
-import org.springframework.kafka.annotation.TopicPartition;
-import org.springframework.kafka.support.Acknowledgment;
-import org.springframework.stereotype.Component;
-
-import java.io.IOException;
-import java.util.*;
-import java.util.concurrent.*;
-
-import static cn.com.taiji.esshipservice.constant.ShipHisTrackIndexConstants.INDEX_SEAT_HIK_CAPTURE_SHIP_TRACKS;
-
-
-//海康
-
-/**
- * @author xhl
- */
-@Component
-@Slf4j
-public class DynamicCaptureShipTrackConsumer {
-
-    @Autowired
-    private RestHighLevelClient client;
-
-    @Autowired
-    private HttpsDownloadUtils httpsDownloadUtils;
-
-    ExecutorService threadPool = new ThreadPoolExecutor( 10,25,10L, TimeUnit.SECONDS, new LinkedBlockingDeque<>(10), Executors.defaultThreadFactory(), new ThreadPoolExecutor.DiscardPolicy());
-
-    /**
-     * 海康船舶抓拍数据-「分区」消费
-     * es场景
-     */
-
-    @KafkaListener(
-            groupId = "${taiji.kafka.consumer.hik-capture-ship.group}",
-            topicPartitions = {
-                    @TopicPartition(
-                            topic = "${taiji.kafka.consumer.hik-capture-ship.topic}",
-                            partitions = {"#{'${taiji.kafka.consumer.hik-capture-ship.partitions0}'.split(',')}"}
-                    )
-            }
-    )
-    public void dynamicCaptureFaceTrack0(List<ConsumerRecord<?, ?>> records, Acknowledgment ack) {
-        threadPool.execute(()-> {
-            insertEs(records);
-        });
-        ack.acknowledge();
-    }
-
-
-    @KafkaListener(
-            groupId = "${taiji.kafka.consumer.hik-capture-ship.group}",
-            topicPartitions = {
-                    @TopicPartition(
-                            topic = "${taiji.kafka.consumer.hik-capture-ship.topic}",
-                            partitions = {"#{'${taiji.kafka.consumer.hik-capture-ship.partitions1}'.split(',')}"}
-                    )
-            }
-    )
-    public void dynamicCaptureFaceTrack1(List<ConsumerRecord<?, ?>> records, Acknowledgment ack) {
-        threadPool.execute(()-> {
-            insertEs(records);
-        });
-        ack.acknowledge();
-
-    }
-
-
-    @KafkaListener(
-            groupId = "${taiji.kafka.consumer.hik-capture-ship.group}",
-            topicPartitions = {
-                    @TopicPartition(
-                            topic = "${taiji.kafka.consumer.hik-capture-ship.topic}",
-                            partitions = {"#{'${taiji.kafka.consumer.hik-capture-ship.partitions2}'.split(',')}"}
-                    )
-            }
-    )
-    public void dynamicCaptureFaceTrack2(List<ConsumerRecord<?, ?>> records, Acknowledgment ack) {
-        threadPool.execute(()-> {
-            insertEs(records);
-        });
-        ack.acknowledge();
-    }
-
-
-    @KafkaListener(
-            groupId = "${taiji.kafka.consumer.hik-capture-ship.group}",
-            topicPartitions = {
-                    @TopicPartition(
-                            topic = "${taiji.kafka.consumer.hik-capture-ship.topic}",
-                            partitions = {"#{'${taiji.kafka.consumer.hik-capture-ship.partitions3}'.split(',')}"}
-                    )
-            }
-    )
-    public void dynamicCaptureFaceTrack3(List<ConsumerRecord<?, ?>> records, Acknowledgment ack) {
-        threadPool.execute(()-> {
-            insertEs(records);
-        });
-        ack.acknowledge();
-    }
-
-
-    @KafkaListener(
-            groupId = "${taiji.kafka.consumer.hik-capture-ship.group}",
-            topicPartitions = {
-                    @TopicPartition(
-                            topic = "${taiji.kafka.consumer.hik-capture-ship.topic}",
-                            partitions = {"#{'${taiji.kafka.consumer.hik-capture-ship.partitions4}'.split(',')}"}
-                    )
-            }
-    )
-    public void dynamicCaptureFaceTrack4(List<ConsumerRecord<?, ?>> records, Acknowledgment ack) {
-        threadPool.execute(()-> {
-            insertEs(records);
-        });
-        ack.acknowledge();
-
-    }
-
-    public void insertEs(List<ConsumerRecord<?, ?>> records) {
-        BulkRequest bulkRequest = new BulkRequest();
-        records.forEach(item -> {
-            Optional<?> message = Optional.ofNullable(item.value());
-            if (message.isPresent()) {
-                Object msg = message.get();
-                JSONObject map = JSONObject.parseObject(msg.toString());
-                Map<String, Object> maps = Collections.synchronizedMap(new HashMap<>());
-                maps.put("sourceType", map.getString("sourceType"));
-                maps.put("indexCode", map.getString("indexCode"));
-                maps.put("captureTime", map.getString("captureTime"));
-                maps.put("targetName", map.getString("targetName"));
-                maps.put("targetShipClassify", map.getString("targetShipClassify"));
-                maps.put("targetShipType", map.getString("targetShipType"));
-                maps.put("targetImageUrl", map.getString("targetImageUrl"));
-                maps.put("targetConfidence", map.getString("targetConfidence"));
-                maps.put("targetLength", map.getString("targetLength"));
-                maps.put("targetWidth", map.getString("targetWidth"));
-                maps.put("targetSpeed", map.getString("targetSpeed"));
-                maps.put("targetPicRect", map.getString("targetPicRect"));
-                maps.put("targetDirection", map.getString("targetDirection"));
-                maps.put("targetImages", map.getString("targetImages"));
-                maps.put("hik", map.getString("hik"));
-                bulkRequest.add(new IndexRequest(INDEX_SEAT_HIK_CAPTURE_SHIP_TRACKS).source(maps));
-            }
-        });
-        try {
-            BulkResponse bulk = client.bulk(bulkRequest, RequestOptions.DEFAULT);
-        } catch (IOException e) {
-            e.printStackTrace();
-        }
-
-    }
-
-}
+//package cn.com.taiji.esshipservice.listener.hlx.fusion;
+//
+//import cn.com.taiji.esshipservice.utils.HttpsDownloadUtils;
+//import com.alibaba.fastjson.JSONObject;
+//import lombok.extern.slf4j.Slf4j;
+//import org.apache.kafka.clients.consumer.ConsumerRecord;
+//import org.elasticsearch.action.bulk.BulkRequest;
+//import org.elasticsearch.action.bulk.BulkResponse;
+//import org.elasticsearch.action.index.IndexRequest;
+//import org.elasticsearch.client.RequestOptions;
+//import org.elasticsearch.client.RestHighLevelClient;
+//import org.springframework.beans.factory.annotation.Autowired;
+//import org.springframework.kafka.annotation.KafkaListener;
+//import org.springframework.kafka.annotation.TopicPartition;
+//import org.springframework.kafka.support.Acknowledgment;
+//import org.springframework.stereotype.Component;
+//
+//import java.io.IOException;
+//import java.util.*;
+//import java.util.concurrent.*;
+//
+//import static cn.com.taiji.esshipservice.constant.ShipHisTrackIndexConstants.INDEX_SEAT_HIK_CAPTURE_SHIP_TRACKS;
+//
+//
+////海康
+//
+///**
+// * @author xhl
+// */
+//@Component
+//@Slf4j
+//public class DynamicCaptureShipTrackConsumer {
+//
+//    @Autowired
+//    private RestHighLevelClient client;
+//
+//    @Autowired
+//    private HttpsDownloadUtils httpsDownloadUtils;
+//
+//    ExecutorService threadPool = new ThreadPoolExecutor( 10,25,10L, TimeUnit.SECONDS, new LinkedBlockingDeque<>(10), Executors.defaultThreadFactory(), new ThreadPoolExecutor.DiscardPolicy());
+//
+//    /**
+//     * 海康船舶抓拍数据-「分区」消费
+//     * es场景
+//     */
+//
+//    @KafkaListener(
+//            groupId = "${taiji.kafka.consumer.groupId}",
+//            topicPartitions = {
+//                    @TopicPartition(
+//                            topic = "${taiji.kafka.consumer.hik-capture-ship.topic}",
+//                            partitions = {"#{'${taiji.kafka.consumer.hik-capture-ship.partitions0}'.split(',')}"}
+//                    )
+//            }
+//    )
+//    public void dynamicCaptureFaceTrack0(List<ConsumerRecord<?, ?>> records, Acknowledgment ack) {
+//        threadPool.execute(()-> {
+//            insertEs(records);
+//        });
+//        ack.acknowledge();
+//    }
+//
+//
+//    @KafkaListener(
+//            groupId = "${taiji.kafka.consumer.groupId}",
+//            topicPartitions = {
+//                    @TopicPartition(
+//                            topic = "${taiji.kafka.consumer.hik-capture-ship.topic}",
+//                            partitions = {"#{'${taiji.kafka.consumer.hik-capture-ship.partitions1}'.split(',')}"}
+//                    )
+//            }
+//    )
+//    public void dynamicCaptureFaceTrack1(List<ConsumerRecord<?, ?>> records, Acknowledgment ack) {
+//        threadPool.execute(()-> {
+//            insertEs(records);
+//        });
+//        ack.acknowledge();
+//
+//    }
+//
+//
+//    @KafkaListener(
+//            groupId = "${taiji.kafka.consumer.groupId}",
+//            topicPartitions = {
+//                    @TopicPartition(
+//                            topic = "${taiji.kafka.consumer.hik-capture-ship.topic}",
+//                            partitions = {"#{'${taiji.kafka.consumer.hik-capture-ship.partitions2}'.split(',')}"}
+//                    )
+//            }
+//    )
+//    public void dynamicCaptureFaceTrack2(List<ConsumerRecord<?, ?>> records, Acknowledgment ack) {
+//        threadPool.execute(()-> {
+//            insertEs(records);
+//        });
+//        ack.acknowledge();
+//    }
+//
+//
+//    @KafkaListener(
+//            groupId = "${taiji.kafka.consumer.groupId}",
+//            topicPartitions = {
+//                    @TopicPartition(
+//                            topic = "${taiji.kafka.consumer.hik-capture-ship.topic}",
+//                            partitions = {"#{'${taiji.kafka.consumer.hik-capture-ship.partitions3}'.split(',')}"}
+//                    )
+//            }
+//    )
+//    public void dynamicCaptureFaceTrack3(List<ConsumerRecord<?, ?>> records, Acknowledgment ack) {
+//        threadPool.execute(()-> {
+//            insertEs(records);
+//        });
+//        ack.acknowledge();
+//    }
+//
+//
+//    @KafkaListener(
+//            groupId = "${taiji.kafka.consumer.groupId}",
+//            topicPartitions = {
+//                    @TopicPartition(
+//                            topic = "${taiji.kafka.consumer.hik-capture-ship.topic}",
+//                            partitions = {"#{'${taiji.kafka.consumer.hik-capture-ship.partitions4}'.split(',')}"}
+//                    )
+//            }
+//    )
+//    public void dynamicCaptureFaceTrack4(List<ConsumerRecord<?, ?>> records, Acknowledgment ack) {
+//        threadPool.execute(()-> {
+//            insertEs(records);
+//        });
+//        ack.acknowledge();
+//
+//    }
+//
+//    public void insertEs(List<ConsumerRecord<?, ?>> records) {
+//        BulkRequest bulkRequest = new BulkRequest();
+//        records.forEach(item -> {
+//            Optional<?> message = Optional.ofNullable(item.value());
+//            if (message.isPresent()) {
+//                Object msg = message.get();
+//                JSONObject map = JSONObject.parseObject(msg.toString());
+//                Map<String, Object> maps = Collections.synchronizedMap(new HashMap<>());
+//                maps.put("sourceType", map.getString("sourceType"));
+//                maps.put("indexCode", map.getString("indexCode"));
+//                maps.put("captureTime", map.getString("captureTime"));
+//                maps.put("targetName", map.getString("targetName"));
+//                maps.put("targetShipClassify", map.getString("targetShipClassify"));
+//                maps.put("targetShipType", map.getString("targetShipType"));
+//                maps.put("targetImageUrl", map.getString("targetImageUrl"));
+//                maps.put("targetConfidence", map.getString("targetConfidence"));
+//                maps.put("targetLength", map.getString("targetLength"));
+//                maps.put("targetWidth", map.getString("targetWidth"));
+//                maps.put("targetSpeed", map.getString("targetSpeed"));
+//                maps.put("targetPicRect", map.getString("targetPicRect"));
+//                maps.put("targetDirection", map.getString("targetDirection"));
+//                maps.put("targetImages", map.getString("targetImages"));
+//                maps.put("hik", map.getString("hik"));
+//                bulkRequest.add(new IndexRequest(INDEX_SEAT_HIK_CAPTURE_SHIP_TRACKS).source(maps));
+//            }
+//        });
+//        try {
+//            BulkResponse bulk = client.bulk(bulkRequest, RequestOptions.DEFAULT);
+//        } catch (IOException e) {
+//            e.printStackTrace();
+//        }
+//
+//    }
+//
+//}

+ 254 - 254
src/main/java/cn/com/taiji/esshipservice/listener/hlx/fusion/EsHkImagesDumpS3.java

@@ -1,258 +1,258 @@
-//package cn.com.taiji.esshipservice.listener.hlx.fusion;
-//
-//import com.alibaba.fastjson.JSON;
-//import com.alibaba.fastjson.JSONArray;
-//import cn.com.taiji.esshipservice.utils.HttpsDownloadUtils;
-//import lombok.extern.slf4j.Slf4j;
-//import org.apache.http.client.config.RequestConfig;
-//import org.elasticsearch.action.DocWriteResponse;
-//import org.elasticsearch.action.bulk.BulkItemResponse;
-//import org.elasticsearch.action.bulk.BulkRequest;
-//import org.elasticsearch.action.bulk.BulkResponse;
-//import org.elasticsearch.action.delete.DeleteResponse;
-//import org.elasticsearch.action.index.IndexResponse;
-//import org.elasticsearch.action.search.SearchRequest;
-//import org.elasticsearch.action.search.SearchResponse;
-//import org.elasticsearch.action.update.UpdateRequest;
-//import org.elasticsearch.action.update.UpdateResponse;
-//import org.elasticsearch.client.HttpAsyncResponseConsumerFactory;
-//import org.elasticsearch.client.RequestOptions;
-//import org.elasticsearch.client.RestHighLevelClient;
-//import org.elasticsearch.core.TimeValue;
-//import org.elasticsearch.index.query.BoolQueryBuilder;
-//import org.elasticsearch.index.query.QueryBuilders;
-//import org.elasticsearch.search.SearchHit;
-//import org.elasticsearch.search.SearchHits;
-//import org.elasticsearch.search.builder.SearchSourceBuilder;
-//import org.springframework.beans.factory.annotation.Autowired;
-//import org.springframework.scheduling.annotation.Scheduled;
-//import org.springframework.stereotype.Component;
-//
-//import java.io.IOException;
-//import java.text.SimpleDateFormat;
-//import java.util.*;
-//import java.util.concurrent.*;
-//
-//import static cn.com.taiji.esshipservice.constant.ShipHisTrackIndexConstants.*;
-//
-///**
-// * @author xhl
-// * @date 2023/2/24
-// */
-//@Component
-//@Slf4j
-//public class EsHkImagesDumpS3 {
-//
-//    @Autowired
-//    private RestHighLevelClient client;
-//
-//    private static final RequestOptions COMMON_OPTIONS;
-//
-//    @Autowired
-//    private HttpsDownloadUtils httpsDownloadUtils;
-//
-//    static {
-//        RequestConfig requestConfig = RequestConfig.custom()
-//                .setConnectTimeout(5000)
-//                .setSocketTimeout(6000)
-//                .build();
-//        RequestOptions.Builder builder = RequestOptions.DEFAULT.toBuilder();
-//        builder.setRequestConfig(requestConfig).setHttpAsyncResponseConsumerFactory(
-//                // 设置查询内容大小限制,默认100 * 1024 * 1024
-//                new HttpAsyncResponseConsumerFactory.HeapBufferedResponseConsumerFactory(5*1024 * 1024 * 1024)
-//        );
-//        COMMON_OPTIONS = builder.build();
-//    }
-//
-////    ExecutorService threadPool = new ThreadPoolExecutor( 15,35,10L, TimeUnit.SECONDS, new LinkedBlockingDeque<>(10), Executors.defaultThreadFactory(), new ThreadPoolExecutor.DiscardPolicy());
-//
-////    @Scheduled(fixedRate=60*60*1000)
-//    public void scheduled() throws IOException {
-//        Calendar calendar = Calendar.getInstance();
-//        calendar.set(Calendar.HOUR_OF_DAY, calendar.get(Calendar.HOUR_OF_DAY) -2);
-//        Date time1 = calendar.getTime();
-//        Calendar calendar2 = Calendar.getInstance();
-//        calendar2.set(Calendar.HOUR_OF_DAY, calendar2.get(Calendar.HOUR_OF_DAY) -1);
-//        Date time2 = calendar2.getTime();
-//        SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSXXX");
-//        String startTime = sdf1.format(time1);
-//        String endTime = sdf1.format(time2);
+package cn.com.taiji.esshipservice.listener.hlx.fusion;
+
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONArray;
+import cn.com.taiji.esshipservice.utils.HttpsDownloadUtils;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.http.client.config.RequestConfig;
+import org.elasticsearch.action.DocWriteResponse;
+import org.elasticsearch.action.bulk.BulkItemResponse;
+import org.elasticsearch.action.bulk.BulkRequest;
+import org.elasticsearch.action.bulk.BulkResponse;
+import org.elasticsearch.action.delete.DeleteResponse;
+import org.elasticsearch.action.index.IndexResponse;
+import org.elasticsearch.action.search.SearchRequest;
+import org.elasticsearch.action.search.SearchResponse;
+import org.elasticsearch.action.update.UpdateRequest;
+import org.elasticsearch.action.update.UpdateResponse;
+import org.elasticsearch.client.HttpAsyncResponseConsumerFactory;
+import org.elasticsearch.client.RequestOptions;
+import org.elasticsearch.client.RestHighLevelClient;
+import org.elasticsearch.core.TimeValue;
+import org.elasticsearch.index.query.BoolQueryBuilder;
+import org.elasticsearch.index.query.QueryBuilders;
+import org.elasticsearch.search.SearchHit;
+import org.elasticsearch.search.SearchHits;
+import org.elasticsearch.search.builder.SearchSourceBuilder;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.scheduling.annotation.Scheduled;
+import org.springframework.stereotype.Component;
+
+import java.io.IOException;
+import java.text.SimpleDateFormat;
+import java.util.*;
+import java.util.concurrent.*;
+
+import static cn.com.taiji.esshipservice.constant.ShipHisTrackIndexConstants.*;
+
+/**
+ * @author xhl
+ * @date 2023/2/24
+ */
+@Component
+@Slf4j
+public class EsHkImagesDumpS3 {
+
+    @Autowired
+    private RestHighLevelClient client;
+
+    private static final RequestOptions COMMON_OPTIONS;
+
+    @Autowired
+    private HttpsDownloadUtils httpsDownloadUtils;
+
+    static {
+        RequestConfig requestConfig = RequestConfig.custom()
+                .setConnectTimeout(5000)
+                .setSocketTimeout(6000)
+                .build();
+        RequestOptions.Builder builder = RequestOptions.DEFAULT.toBuilder();
+        builder.setRequestConfig(requestConfig).setHttpAsyncResponseConsumerFactory(
+                // 设置查询内容大小限制,默认100 * 1024 * 1024
+                new HttpAsyncResponseConsumerFactory.HeapBufferedResponseConsumerFactory(5*1024 * 1024 * 1024)
+        );
+        COMMON_OPTIONS = builder.build();
+    }
+
+    ExecutorService threadPool = new ThreadPoolExecutor( 15,35,10L, TimeUnit.SECONDS, new LinkedBlockingDeque<>(10), Executors.defaultThreadFactory(), new ThreadPoolExecutor.DiscardPolicy());
+
+    @Scheduled(fixedRate=60*60*1000)
+    public void scheduled() {
+        Calendar calendar = Calendar.getInstance();
+        calendar.set(Calendar.HOUR_OF_DAY, calendar.get(Calendar.HOUR_OF_DAY) -2);
+        Date time1 = calendar.getTime();
+        Calendar calendar2 = Calendar.getInstance();
+        calendar2.set(Calendar.HOUR_OF_DAY, calendar2.get(Calendar.HOUR_OF_DAY) -1);
+        Date time2 = calendar2.getTime();
+        SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSXXX");
+        String startTime = sdf1.format(time1);
+        String endTime = sdf1.format(time2);
+        threadPool.execute(()->{
+            try {
+                imagesDumpS3Car(startTime,endTime);
+            } catch (IOException e) {
+                e.printStackTrace();
+            }
+        });
+        threadPool.execute(()->{
+            try {
+                imagesDumpS3Face(startTime,endTime);
+            } catch (IOException e) {
+                e.printStackTrace();
+            }
+        });
 //        imagesDumpS3Car(startTime,endTime);
 //        imagesDumpS3Face(startTime,endTime);
-//    }
-//
-//    public void imagesDumpS3Car(String startTime,String endTime) throws IOException {
-//        //设置查询索引
-//        SearchRequest searchRequest = new SearchRequest(INDEX_SEAT_HIK_CAPTURE_CAR_TRACKS);
-//        SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder();
-//        BoolQueryBuilder boolQueryBuilder= QueryBuilders.boolQuery();
-//        boolQueryBuilder.filter(QueryBuilders.rangeQuery("captureTime").gte(startTime).lte(endTime));
-//        searchSourceBuilder.query(boolQueryBuilder);
-//        searchSourceBuilder
-//                .trackTotalHits(true)
-//                .size(1000000);
-////                .timeout(TimeValue.timeValueHours(1L))
-////                .timeout(TimeValue.timeValueMinutes(30L))
-////                .timeout(TimeValue.timeValueSeconds(500L));
-//        searchRequest.source(searchSourceBuilder);
-//        SearchResponse search = null;
-//        try {
-//            search = client.search(searchRequest, COMMON_OPTIONS);
-//        } catch (IOException e) {
-//            e.printStackTrace();
-//        }
-//        SearchHits searchHits = search.getHits();
-//        SearchHit[] hits = searchHits.getHits();
-//        BulkRequest bulkRequest = new BulkRequest();
-//        Integer num = 0;
-//        for (SearchHit hit : hits) {
-//            Map<String, Object> map = hit.getSourceAsMap();
-//            Map<String, Object> maps = new HashMap<>();
-//            Object plateImagePath = map.get("plateImagePath");
-//            String s3plateImagePath = null;
-//            if (null != plateImagePath   && !plateImagePath.equals("")){
-////                Boolean num = false;
-////                StringTokenizer tokenizer = new StringTokenizer(plateImagePath.toString(),"/");
-////                /** 判断枚举对象中是否还有数据 **/
-////                while (tokenizer.hasMoreElements()){
-////                    /** 返回从当前位置到下一个分隔符的字符串 **/
-////                    if (tokenizer.nextToken().equals("74.10.28.62:81")){
-////                        num =true;
-////                        return;
-////                    }
-////                }
-////                if (num == false) {
-//                s3plateImagePath = httpsDownloadUtils.downloadFileHttps(plateImagePath.toString());
-//                maps.put("plateImagePath", s3plateImagePath);
-////                }
-//            }
-//            String s3targetPicUrl = null;
-//            Object targetPicUrl = map.get("targetPicUrl");
-//            if (null != targetPicUrl  && !targetPicUrl.equals("")){
-////                Boolean num = false;
-////                StringTokenizer tokenizer = new StringTokenizer(targetPicUrl.toString(),"/");
-////                /** 判断枚举对象中是否还有数据 **/
-////                while (tokenizer.hasMoreElements()){
-////                    /** 返回从当前位置到下一个分隔符的字符串 **/
-////                    if (tokenizer.nextToken().equals("74.10.28.62:81")){
-////                        num =true;
-////                        return;
-////                    }
-////                }
-////                if (num == false) {
-//                s3targetPicUrl = httpsDownloadUtils.downloadFileHttps(targetPicUrl.toString());
-//                maps.put("targetPicUrl", s3targetPicUrl);
-////                }
-//
-//            }
-//            if (!maps.isEmpty()) {
-//                bulkRequest.add(new UpdateRequest(INDEX_SEAT_HIK_CAPTURE_CAR_TRACKS, hit.getId()).doc(maps));
-//                num++;
-//            }
-//            if (num == 100){
-//                try {
-//                    BulkResponse bulk = client.bulk(bulkRequest, RequestOptions.DEFAULT);
-//                    num = 0;
-//                    bulkRequest.requests().clear();
-//                } catch (IOException e) {
-//                    e.printStackTrace();
+    }
+
+    public void imagesDumpS3Car(String startTime,String endTime) throws IOException {
+        //设置查询索引
+        SearchRequest searchRequest = new SearchRequest(INDEX_SEAT_HIK_CAPTURE_CAR_TRACKS);
+        SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder();
+        BoolQueryBuilder boolQueryBuilder= QueryBuilders.boolQuery();
+        boolQueryBuilder.filter(QueryBuilders.rangeQuery("captureTime").gte(startTime).lte(endTime));
+        searchSourceBuilder.query(boolQueryBuilder);
+        searchSourceBuilder
+                .trackTotalHits(true)
+                .size(1000000);
+        searchRequest.source(searchSourceBuilder);
+        SearchResponse search = null;
+        try {
+            search = client.search(searchRequest, COMMON_OPTIONS);
+        } catch (IOException e) {
+            e.printStackTrace();
+        }
+        SearchHits searchHits = search.getHits();
+        SearchHit[] hits = searchHits.getHits();
+        BulkRequest bulkRequest = new BulkRequest();
+        for (SearchHit hit : hits) {
+            Map<String, Object> map = hit.getSourceAsMap();
+            Map<String, Object> maps = Collections.synchronizedMap(new HashMap<>());
+            Object plateImagePath = map.get("plateImagePath");
+            if (null != plateImagePath   && !plateImagePath.equals("")){
+                maps.put("plateImagePath", httpsDownloadUtils.downloadCarFileHttps(plateImagePath.toString()));
+            }
+            Object targetPicUrl = map.get("targetPicUrl");
+            if (null != targetPicUrl  && !targetPicUrl.equals("")){
+                maps.put("targetPicUrl", httpsDownloadUtils.downloadCarFileHttps(targetPicUrl.toString()));
+            }
+            if (!maps.isEmpty()) {
+                bulkRequest.add(new UpdateRequest(INDEX_SEAT_HIK_CAPTURE_CAR_TRACKS, hit.getId()).doc(maps));
+            }
+            if (bulkRequest.requests().size() > 1000){
+                try {
+                    BulkResponse bulk = client.bulk(bulkRequest, RequestOptions.DEFAULT);
+                    log.info("车辆执行修改::破千修改");
+//                    for (BulkItemResponse bulkItemResponse : bulk) {
+//                        DocWriteResponse response = bulkItemResponse.getResponse();
+//                        switch (bulkItemResponse.getOpType()){
+//                            case UPDATE:
+//                                UpdateResponse updateResponse = (UpdateResponse)response;
+//                                log.info("车辆修改"+updateResponse.getResult());
+//                                break;
+//                        }
+//                    }
+                    bulkRequest.requests().clear();
+                } catch (IOException e) {
+                    e.printStackTrace();
+                }
+            }
+        }
+        try {
+            if (bulkRequest.requests().size()>0){
+                BulkResponse bulk = client.bulk(bulkRequest, RequestOptions.DEFAULT);
+                log.info("车辆执行修改:最终修改");
+//                for (BulkItemResponse bulkItemResponse : bulk) {
+//                    DocWriteResponse response = bulkItemResponse.getResponse();
+//                    switch (bulkItemResponse.getOpType()){
+//                        case UPDATE:
+//                            UpdateResponse updateResponse = (UpdateResponse)response;
+//                            log.info("车辆修改"+updateResponse.getResult());
+//                            break;
+//                    }
 //                }
-//            }
-//        }
-//        try {
-//            if (bulkRequest.requests().size()>0){
-//                BulkResponse bulk = client.bulk(bulkRequest, RequestOptions.DEFAULT);
-//            }
-//        } catch (IOException e) {
-//            e.printStackTrace();
-//        }
-//    }
-//
-//    public void imagesDumpS3Face(String startTime,String endTime) throws IOException {
-//        //设置查询索引
-//        SearchRequest searchRequest = new SearchRequest(INDEX_SEAT_HIK_CAPTURE_FACE_TRACKS);
-//        SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder();
-//        BoolQueryBuilder boolQueryBuilder= QueryBuilders.boolQuery();
-//        boolQueryBuilder.filter(QueryBuilders.rangeQuery("captureTime").gte(startTime).lte(endTime));
-//        searchSourceBuilder.query(boolQueryBuilder);
-//        searchSourceBuilder
-//                .trackTotalHits(true)
-//                .size(1000000);
-////                .timeout(TimeValue.timeValueHours(1L))
-////                .timeout(TimeValue.timeValueMinutes(30L))
-////                .timeout(TimeValue.timeValueSeconds(500L));
-//        searchRequest.source(searchSourceBuilder);
-//        SearchResponse search = null;
-//        try {
-//            search = client.search(searchRequest, COMMON_OPTIONS);
-//        } catch (IOException e) {
-//            e.printStackTrace();
-//        }
-//        SearchHits searchHits = search.getHits();
-//        SearchHit[] hits = searchHits.getHits();
-//        BulkRequest bulkRequest = new BulkRequest();
-//        Integer num = 0;
-//        for (SearchHit hit : hits) {
-//            Map<String, Object> map = hit.getSourceAsMap();
-//            Map<String, Object> maps = new HashMap<>();
-//            String s3bkgUrl = null;
-//            Object bkgUrl = map.get("bkgUrl");
-//            if (null != bkgUrl && !bkgUrl.equals("")){
-////                Boolean num = false;
-////                StringTokenizer tokenizer = new StringTokenizer(bkgUrl.toString(),"/");
-////                /** 判断枚举对象中是否还有数据 **/
-////                while (tokenizer.hasMoreElements()){
-////                    /** 返回从当前位置到下一个分隔符的字符串 **/
-////                    if (tokenizer.nextToken().equals("74.10.28.62:81")){
-////                        num =true;
-////                        return;
-////                    }
-////                }
-////                if (num == false){
-//                s3bkgUrl = httpsDownloadUtils.downloadFileHttps(bkgUrl.toString());
-//                maps.put("bkgUrl", s3bkgUrl);
-////                }
-//            }
-//            String s3facePicUrl = null;
-//            Object facePicUrl = map.get("facePicUrl");
-//            if (null != facePicUrl && !facePicUrl.equals("")){
-////                Boolean num = false;
-////                StringTokenizer tokenizer = new StringTokenizer(facePicUrl.toString(),"/");
-////                /** 判断枚举对象中是否还有数据 **/
-////                while (tokenizer.hasMoreElements()){
-////                    /** 返回从当前位置到下一个分隔符的字符串 **/
-////                    if (tokenizer.nextToken().equals("74.10.28.62:81")){
-////                        num =true;
-////                        return;
-////                    }
-////                }
-////                if (num == false){
-//                s3facePicUrl = httpsDownloadUtils.downloadFileHttps(facePicUrl.toString());
-//                maps.put("facePicUrl", s3facePicUrl);
-////                }
-//            }
-//            if (!maps.isEmpty()) {
-//                bulkRequest.add(new UpdateRequest(INDEX_SEAT_HIK_CAPTURE_FACE_TRACKS, hit.getId()).doc(maps));
-//                num++;
-//            }
-//            if (num == 100){
-//                try {
-//                    BulkResponse bulk = client.bulk(bulkRequest, RequestOptions.DEFAULT);
-//                    num = 0;
-//                    bulkRequest.requests().clear();
-//                } catch (IOException e) {
-//                    e.printStackTrace();
+            }
+        } catch (IOException e) {
+            e.printStackTrace();
+        }
+    }
+
+    public void imagesDumpS3Face(String startTime,String endTime) throws IOException {
+        //设置查询索引
+        SearchRequest searchRequest = new SearchRequest(INDEX_SEAT_HIK_CAPTURE_FACE_TRACKS);
+        SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder();
+        BoolQueryBuilder boolQueryBuilder= QueryBuilders.boolQuery();
+        boolQueryBuilder.filter(QueryBuilders.rangeQuery("captureTime").gte(startTime).lte(endTime));
+        searchSourceBuilder.query(boolQueryBuilder);
+        searchSourceBuilder
+                .trackTotalHits(true)
+                .size(1000000);
+//                .timeout(TimeValue.timeValueHours(1L))
+//                .timeout(TimeValue.timeValueMinutes(30L))
+//                .timeout(TimeValue.timeValueSeconds(500L));
+        searchRequest.source(searchSourceBuilder);
+        SearchResponse search = null;
+        try {
+            search = client.search(searchRequest, COMMON_OPTIONS);
+        } catch (IOException e) {
+            e.printStackTrace();
+        }
+        SearchHits searchHits = search.getHits();
+        SearchHit[] hits = searchHits.getHits();
+        BulkRequest bulkRequest = new BulkRequest();
+        for (SearchHit hit : hits) {
+            Map<String, Object> map = hit.getSourceAsMap();
+            Map<String, Object> maps = Collections.synchronizedMap(new HashMap<>());
+            Object bkgUrl = map.get("bkgUrl");
+            if (null != bkgUrl && !bkgUrl.equals("")){
+                maps.put("bkgUrl", httpsDownloadUtils.downloadFaceFileHttps(bkgUrl.toString()));
+            }
+            Object facePicUrl = map.get("facePicUrl");
+            if (null != facePicUrl && !facePicUrl.equals("")){
+//                Boolean num = false;
+//                StringTokenizer tokenizer = new StringTokenizer(facePicUrl.toString(),"/");
+//                /** 判断枚举对象中是否还有数据 **/
+//                while (tokenizer.hasMoreElements()){
+//                    /** 返回从当前位置到下一个分隔符的字符串 **/
+//                    if (tokenizer.nextToken().equals("74.10.28.62:81")){
+//                        num =true;
+//                        return;
+//                    }
 //                }
-//            }
-//        }
-//        try {
-//            if (bulkRequest.requests().size()>0){
-//                BulkResponse bulk = client.bulk(bulkRequest, RequestOptions.DEFAULT);
-//            }
-//        } catch (IOException e) {
-//            e.printStackTrace();
-//        }
-//    }
-//
-//}
-//
+//                if (num == false){
+                maps.put("facePicUrl", httpsDownloadUtils.downloadFaceFileHttps(facePicUrl.toString()));
+//                }
+            }
+            if (!maps.isEmpty()) {
+                bulkRequest.add(new UpdateRequest(INDEX_SEAT_HIK_CAPTURE_FACE_TRACKS, hit.getId()).doc(maps));
+            }
+            if (bulkRequest.requests().size() > 100){
+                try {
+                    BulkResponse bulk = client.bulk(bulkRequest, RequestOptions.DEFAULT);
+                    log.info("人员执行修改:破百修改");
+//                    for (BulkItemResponse bulkItemResponse : bulk) {
+//                        DocWriteResponse response = bulkItemResponse.getResponse();
+//                        switch (bulkItemResponse.getOpType()){
+//                            case UPDATE:
+//                                UpdateResponse updateResponse = (UpdateResponse)response;
+//                                log.info("人员修改"+updateResponse.getResult());
+//                                break;
+//                        }
+//                    }
+                    bulkRequest.requests().clear();
+                } catch (IOException e) {
+                    e.printStackTrace();
+                }
+            }
+        }
+        try {
+            if (bulkRequest.requests().size()>0){
+                BulkResponse bulk = client.bulk(bulkRequest, RequestOptions.DEFAULT);
+                log.info("人员执行修改:最终修改");
+//                for (BulkItemResponse bulkItemResponse : bulk) {
+//                    DocWriteResponse response = bulkItemResponse.getResponse();
+//                    switch (bulkItemResponse.getOpType()){
+//                        case UPDATE:
+//                            UpdateResponse updateResponse = (UpdateResponse)response;
+//                            log.info("人员修改"+updateResponse.getResult());
+//                            break;
+//                    }
+//                }
+            }
+        } catch (IOException e) {
+            e.printStackTrace();
+        }
+    }
+
+}
+

+ 43 - 7
src/main/java/cn/com/taiji/esshipservice/utils/HttpsDownloadUtils.java

@@ -37,10 +37,7 @@ public class HttpsDownloadUtils extends MinioFileSystem{
      * @param fileUrl   https 远程路径
      * @throws Exception
      */
-    public synchronized String downloadFileHttps(String fileUrl) {
-        String key = "";
-        String data = "";
-        AmazonS3Client amazonS3Client = null;
+    public synchronized String downloadCarFileHttps(String fileUrl) {
         try{
             SSLContext sslcontext = SSLContext.getInstance("SSL", "SunJSSE");
             sslcontext.init(null, new TrustManager[]{new X509TrustUtiil()}, new java.security.SecureRandom());
@@ -50,16 +47,55 @@ public class HttpsDownloadUtils extends MinioFileSystem{
             HttpsURLConnection connection = (HttpsURLConnection) url.openConnection();
             connection.setConnectTimeout(6000);
             connection.setReadTimeout(6000);
+            connection.setRequestProperty("Content-Type", "image/jpeg");
             int code = connection.getResponseCode();
             if (code == HttpURLConnection.HTTP_OK) {
                 InputStream inputStream = connection.getInputStream();
-                amazonS3Client = getAmazonS3Client(daasioClient);
+                AmazonS3Client amazonS3Client = getAmazonS3Client(daasioClient);
                 List<Bucket> buckets = amazonS3Client.listBuckets();
-                key = UUID.randomUUID().toString();
+                String key = UUID.randomUUID().toString();
+                PutObjectResult putObjectResult = amazonS3Client.putObject(new PutObjectRequest(buckets.get(2).getName(), preFix + key + postFix, inputStream, new ObjectMetadata()));
+                copyAclFromParent(buckets.get(2).getName(),preFix + key + postFix);
+                amazonS3Client.shutdown();
+                String data = httpUrl + preFix + key +postFix;
+                return data;
+            }else {
+//                throw new RuntimeException("文件读取失败");
+                log.info("文件读取失败");
+                return null;
+            }
+        }catch (Exception e){
+            e.printStackTrace();
+        }
+        return null;
+    }
+
+
+    /**
+     * @param fileUrl   https 远程路径
+     * @throws Exception
+     */
+    public synchronized String downloadFaceFileHttps(String fileUrl) {
+        try{
+            SSLContext sslcontext = SSLContext.getInstance("SSL", "SunJSSE");
+            sslcontext.init(null, new TrustManager[]{new X509TrustUtiil()}, new java.security.SecureRandom());
+            URL url = new URL(fileUrl);
+            HttpsURLConnection.setDefaultHostnameVerifier((urlHostName, session) -> true);
+            HttpsURLConnection.setDefaultSSLSocketFactory(sslcontext.getSocketFactory());
+            HttpsURLConnection connection = (HttpsURLConnection) url.openConnection();
+            connection.setConnectTimeout(6000);
+            connection.setReadTimeout(6000);
+            connection.setRequestProperty("Content-Type", "image/jpeg");
+            int code = connection.getResponseCode();
+            if (code == HttpURLConnection.HTTP_OK) {
+                InputStream inputStream = connection.getInputStream();
+                AmazonS3Client amazonS3Client = getAmazonS3Client(daasioClient);
+                List<Bucket> buckets = amazonS3Client.listBuckets();
+                String key = UUID.randomUUID().toString();
                 PutObjectResult putObjectResult = amazonS3Client.putObject(new PutObjectRequest(buckets.get(2).getName(), preFix + key + postFix, inputStream, new ObjectMetadata()));
                 copyAclFromParent(buckets.get(2).getName(),preFix + key + postFix);
-                data = httpUrl + preFix + key +postFix;
                 amazonS3Client.shutdown();
+                String data = httpUrl + preFix + key +postFix;
                 return data;
             }else {
 //                throw new RuntimeException("文件读取失败");

+ 2 - 188
src/main/resources/application-prod.yml

@@ -61,7 +61,7 @@ taiji:
     enable: true
     url: http://74.10.28.87:9002
   elasticsearch.rest:
-    uris: 74.10.28.65:9200,74.10.28.66:9200,74.10.28.67:9200,74.10.28.68:9200,74.10.28.69:9200
+    uris: 74.10.28.65:9200,74.10.28.65:9201,74.10.28.65:9202,74.10.28.66:9200,74.10.28.66:9201,74.10.28.66:9202,74.10.28.67:9200,74.10.28.67:9201,74.10.28.67:9202,74.10.28.68:9200,74.10.28.68:9201,74.10.28.68:9202,74.10.28.69:9200,74.10.28.69:9201,74.10.28.69:9202
     username: ax_seat       #如果你设置了基于x-pack的验证就要填写账号和密码
     password: ax_seat       #没有则不用配置
     connection-timeout: 100 #连接超时
@@ -71,169 +71,7 @@ taiji:
     znode_parent: /hbase-unsecure
   kafka:
     consumer:
-      groupId: 202206150922_118_es
-      ship_warning_record:
-        topic: 'taiji_ax_ship_warning_record'
-        group: ${random.uuid}
-        partitions0: 0
-        partitions1: 1
-        partitions2: 2
-        partitions3: 3
-        partitions4: 4
-      multiple_warning_record:
-        topic: 'taiji_ax_multiple_warning_record'
-        group: ${random.uuid}
-        partitions0: 0
-        partitions1: 1
-        partitions2: 2
-        partitions3: 3
-        partitions4: 4
-      car_warning_record:
-        topic: 'taiji_ax_car_warning_record'
-        group: ${random.uuid}
-        partitions0: 0
-        partitions1: 1
-        partitions2: 2
-        partitions3: 3
-        partitions4: 4
-      person_warning_record:
-        topic: 'taiji_ax_person_warning_record'
-        group: ${random.uuid}
-        partitions0: 0
-        partitions1: 1
-        partitions2: 2
-        partitions3: 3
-        partitions4: 4
-      ztpt_dynamic_ais:
-        group: ${random.uuid}
-        partitions0: 0
-        partitions1: 1
-        partitions2: 2
-        partitions3: 3
-        partitions4: 4
-        topic: 'taiji_ax_ztpt_dynamic_ais'
-        id-key: 'userid'
-        longitude-key: 'longitude'
-        latitude-key: 'latitude'
-      hlx_ax_dynamic_target_ais:
-        group: ${random.uuid}
-        topic: 'hlx_ax_dynamic_target_ais'
-        partitions0: 0
-        partitions1: 1
-        partitions2: 2
-        partitions3: 3
-        partitions4: 4
-      hlx_ax_dynamic_target_radar:
-        group: ${random.uuid}
-        topic: 'hlx_ax_dynamic_target_radar'
-        partitions0: 0
-        partitions1: 1
-        partitions2: 2
-        partitions3: 3
-        partitions4: 4
-      hlx_ax_dynamic_target_zyh_radar:
-        group: ${random.uuid}
-        topic: 'hlx_ax_dynamic_target_zyh_radar'
-        partitions0: 0
-        partitions1: 1
-        partitions2: 2
-        partitions3: 3
-        partitions4: 4
-      beidou-dynamic-ship:
-        group: ${random.uuid}
-        topic: 'taiji_ax_beidou_dynamic_ship'
-        partitions0: 0
-        partitions1: 1
-        partitions2: 2
-        partitions3: 3
-        partitions4: 4
-      tianao_radar_fusion:
-        group: ${random.uuid}
-        topic: 'taiji_ax_tianao_radar_fusion'
-        latitude-key: 'latitude'
-        longitude-key: 'longitude'
-        id-key: 'fusionBatchNum'
-        partitions0: 0
-        partitions1: 1
-        partitions2: 2
-        partitions3: 3
-        partitions4: 4
-      pdt_data_track:
-        topic: 't_pdt_data_receive'
-        group: ${random.uuid}
-        partitions0: 0
-        partitions1: 1
-        partitions2: 2
-        partitions3: 3
-        partitions4: 4
-      dynamic-mobile-track:
-        group: ${random.uuid}
-        topic: 'ax_mobile_dynamic_track'
-        partitions0: 0
-        partitions1: 1
-        partitions2: 2
-        partitions3: 3
-        partitions4: 4
-      dvr_track:
-        group: ${random.uuid}
-        topic: 'taiji_ax_dvr_track'
-        partitions0: 0
-        partitions1: 1
-        partitions2: 2
-        partitions3: 3
-        partitions4: 4
-      dynamic-ship-track:
-        topic: 'taiji_ax_ship_dynamic_fusion'
-        id-key: 'merge_target'
-        longitude-key: 'target_longitude'
-        latitude-key: 'target_latitude'
-        group: ${random.uuid}
-        partitions0: 0
-        partitions1: 1
-        partitions2: 2
-        partitions3: 3
-        partitions4: 4
-      dynamic-ship-track-gis:
-        topic: 'taiji_ax_ship_dynamic_fusion_gis'
-        id-key: 'merge_target'
-        longitude-key: 'target_longitude'
-        latitude-key: 'target_latitude'
-        group: ${random.uuid}
-        partitions0: 0
-        partitions1: 1
-        partitions2: 2
-        partitions3: 3
-        partitions4: 4
-      dynamic-fk-ship-track-gis:
-        topic: 'taiji_ax_fk_ship_dynamic_fusion_gis'
-        id-key: 'merge_target'
-        longitude-key: 'target_longitude'
-        latitude-key: 'target_latitude'
-        group: ${random.uuid}
-        partitions0: 0
-        partitions1: 1
-        partitions2: 2
-        partitions3: 3
-        partitions4: 4
-      dynamic-fk-track-ship-partition:
-        topic: 'taiji_ax_fk_dynamic_fusion_ship'
-        group: ${random.uuid}
-        partitions0: 0
-        partitions1: 1
-        partitions2: 2
-        partitions3: 3
-        partitions4: 4
-      dynamic-ship-track-partition:
-        topic: 'taiji_ax_ship_dynamic_fusion'
-        group: ${random.uuid}
-        partitions0: 0
-        partitions1: 1
-        partitions2: 2
-        partitions3: 3
-        partitions4: 4
-        id-key: merge_id
-        longitude-key: target_longitude
-        latitude-key: target_latitude
+      groupId: 202303261619_xhl_es
       hik-capture-face:
         group: ${random.uuid}
         topic: 'taiji_ax_hik_capture_face'
@@ -258,30 +96,6 @@ taiji:
         partitions2: 2
         partitions3: 3
         partitions4: 4
-      taiji_hik_face:
-        group: ${random.uuid}
-        topic: 'ax_taiji_hik_face'
-        partitions0: 0
-        partitions1: 1
-        partitions2: 2
-        partitions3: 3
-        partitions4: 4
-      taiji_ax_hlx_zww_dynamic_fusion_ship:
-        group: ${random.uuid}
-        topic: 'taiji_ax_hlx_zww_dynamic_fusion_ship'
-        partitions0: 0
-        partitions1: 1
-        partitions2: 2
-        partitions3: 3
-        partitions4: 4
-      taiji_ax_hlx_zww_dynamic_fusion_ship_gis:
-        group: ${random.uuid}
-        topic: 'taiji_ax_hlx_zww_dynamic_fusion_ship_gis'
-        partitions0: 0
-        partitions1: 1
-        partitions2: 2
-        partitions3: 3
-        partitions4: 4
       tile: false
       prefix:
         ztpt_dynamic_ais_key_prefix: ZTPT_DYNAMIC_AIS_118_

BIN
target/EsHkImagesDumpS3.jar


BIN
target/EsHkImagesDumpS3.jar.original


+ 0 - 277
target/classes/application-dev.yml

@@ -1,277 +0,0 @@
-# 数据源配置
-spring:
-  datasource:
-    druid:
-      # 主库数据源
-      master:
-        type: com.alibaba.druid.pool.DruidDataSource
-        driverClassName: com.mysql.cj.jdbc.Driver
-        # url: jdbc:mysql://h386t1c.nat.ipyingshe.com:58951/shoreline_seats_db?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
-        url: jdbc:mysql://120.25.74.229:8006/ax_seat_show?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&allowMultiQueries=true
-        username: root
-        password: ROOT@taiji2022!
-      # 从库数据源
-      slave:
-        type: com.alibaba.druid.pool.DruidDataSource
-        driverClassName: com.mysql.cj.jdbc.Driver
-        # 从数据源开关/默认关闭
-        enabled: true
-        url: jdbc:mysql://120.25.74.229:8006/ax_seat_db1?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
-        username: root
-        password: ROOT@taiji2022!
-      slave1:
-        type: com.alibaba.druid.pool.DruidDataSource
-        driverClassName: com.mysql.cj.jdbc.Driver
-        url: jdbc:mysql://120.25.74.229:8006/ax_seat_db1?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
-        username: root
-        password: ROOT@taiji2022!
-      screen:
-        type: com.alibaba.druid.pool.DruidDataSource
-        driverClassName: com.mysql.cj.jdbc.Driver
-        url: jdbc:mysql://120.25.74.229:8006/ax_seat_show?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
-        username: axdb
-        password: Mysql@2022!
-        enabled: false
-      # 初始连接数
-      initialSize: 5
-      # 最小连接池数量
-      minIdle: 10
-      # 最大连接池数量
-      maxActive: 20
-      # 配置获取连接等待超时的时间
-      maxWait: 60000
-      # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
-      timeBetweenEvictionRunsMillis: 60000
-      # 配置一个连接在池中最小生存的时间,单位是毫秒
-      minEvictableIdleTimeMillis: 300000
-      # 配置一个连接在池中最大生存的时间,单位是毫秒
-      maxEvictableIdleTimeMillis: 900000
-      # 配置检测连接是否有效
-      validationQuery: SELECT 1
-      testWhileIdle: true
-      testOnBorrow: false
-      testOnReturn: false
-      webStatFilter:
-        enabled: true
-      statViewServlet:
-        enabled: true
-        # 设置白名单,不填则允许所有访问
-        allow:
-        url-pattern: /druid/*
-        # 控制台管理用户名和密码
-        login-username: seat
-        login-password: 123456
-      filter:
-        stat:
-          enabled: true
-          # 慢SQL记录
-          log-slow-sql: true
-          slow-sql-millis: 1000
-          merge-sql: true
-        wall:
-          config:
-            multi-statement-allow: true
-  rabbitmq:
-    host: 47.111.231.31
-    port: 5672
-    username: rabbitmq
-    password: root
-  # redis 配置
-  redis:
-    # 地址
-    host: 127.0.0.1
-    #host: 192.168.1.107
-    # 端口,默认为6379
-    port: 6379
-    # 数据库索引
-    database: 0
-    # 密码
-    password:
-    # 连接超时时间
-    timeout: 10s
-    lettuce:
-      pool:
-        # 连接池中的最小空闲连接
-        min-idle: 0
-        # 连接池中的最大空闲连接
-        max-idle: 8
-        # 连接池的最大数据库连接数
-        max-active: 8
-        # #连接池最大阻塞等待时间(使用负值表示没有限制)
-        max-wait: -1ms
-  ##kafka
-  kafka:
-    bootstrap-servers: 120.25.232.213:9092
-    consumer:
-      auto-commit-interval: 1S
-      # 该属性指定了消费者在读取一个没有偏移量的分区或者偏移量无效的情况下该作何处理:
-      # latest(默认值)在偏移量无效的情况下,消费者将从最新的记录开始读取数据(在消费者启动之后生成的记录)
-      # earliest :在偏移量无效的情况下,消费者将从起始位置读取分区的记录
-        # 自动提交的时间间隔 在spring boot 2.X 版本中这里采用的是值的类型为Duration 需要符合特定的格式,如1S,1M,2H,5D
-        # 该属性指定了消费者在读取一个没有偏移量的分区或者偏移量无效的情况下该作何处理:
-        # latest(默认值)在偏移量无效的情况下,消费者将从最新的记录开始读取数据(在消费者启动之后生成的记录)
-        # earliest :在偏移量无效的情况下,消费者将从起始位置读取分区的记录
-      auto-offset-reset: latest
-        # 是否自动提交偏移量,默认值是true,为了避免出现重复数据和数据丢失,可以把它设置为false,然后手动提交偏移量
-      enable-auto-commit: false
-      key-deserializer: org.apache.kafka.common.serialization.StringDeserializer
-      value-deserializer: org.apache.kafka.common.serialization.StringDeserializer
-    producer:
-      retries: 3
-      batch-size: 16384
-      buffer-memory: 33554432
-      key-serializer: org.apache.kafka.common.serialization.StringSerializer
-      value-serializer:  org.apache.kafka.common.serialization.StringSerializer
-      # acks=0 : 生产者在成功写入消息之前不会等待任何来自服务器的响应。
-      # acks=1 : 只要集群的首领节点收到消息,生产者就会收到一个来自服务器成功响应。
-      # acks=all :只有当所有参与复制的节点全部收到消息时,生产者才会收到一个来自服务器的成功响应。
-      acks: 1
-    properties:
-          security:
-            protocol: SASL_PLAINTEXT
-          sasl:
-            mechanism: SCRAM-SHA-512
-            jaas:
-              config: 'org.apache.kafka.common.security.scram.ScramLoginModule required username="user01" password="user01";'
-    listener:
-          # 在侦听器容器中运行的线程数。
-          concurrency: 5
-          #listner负责ack,每调用一次,就立即commit
-          ack-mode: manual_immediate
-          missing-topics-fatal: false
-taiji:
-  openservice:
-    enable: false
-    url: http://127.0.0.1:8080
-  elasticsearch.rest:
-    uris: 120.25.233.10:9200
-    username: elastic       #如果你设置了基于x-pack的验证就要填写账号和密码
-    password: root@2022!       #没有则不用配置
-    connection-timeout: 100 #连接超时
-    max-connection: 100  #最大连接数
-  kafka:
-    consumer:
-      groupId: 202112301442_116
-      taiji_ax_person_warning_record:
-        group: ${random.uuid}
-        topic: taiji_ax_person_warning_record
-      ship_warning_record:
-        topic: taiji_ax_ship_warning_record
-      car_warning_record:
-        topic: taiji_ax_car_warning_record
-      multiple_warning_record:
-        topic: taiji_ax_multiple_warning_record
-      dynamic-ship-track-partition:
-        topic: 'taiji_ax_ship_dynamic_fusion'
-        group: ${random.uuid}
-        partitions0: 0
-        partitions1: 1
-        partitions2: 2
-        partitions3: 3
-        partitions4: 4
-        id-key: merge_id
-        longitude-key: target_longitude
-        latitude-key: target_latitude
-      hlx_ax_ship_camera_structured_info:
-          topic: 'hlx_ax_ship_camera_structured_info'
-    producer:
-      taiji_ax_warning_biz_data_sync_message:
-          topic: 'taiji_ax_warning_biz_data_sync_message'
-  esindex:
-    state: 0
-    ship_warning_record_index: index_seat_warning_ship_record
-
-shop:
-  warning:
-    record:
-      ship: warningcode:ship:prod118
-      car: warningcode:car:prod118
-      person: warningcode:person:prod118
-      multiple: warningcode:multiple:prod118
-
-#netty的配置信息
-webSocket:
-  netty:
-    port: 6999
-    path: /webSocket
-    readerIdleTime: 120  #读空闲超时时间设置(Netty心跳检测配置)
-    writerIdleTime: 120  #写空闲超时时间设置(Netty心跳检测配置)
-    allIdleTime: 120     #读写空闲超时时间设置(Netty心跳检测配置)
-
-# 海康威视kafka密钥
-infovision-kafka:
-  ip: 74.10.28.97  #host
-  port: 443       #port
-  appkey: 20938619 #key
-  secret: 2028DRKPt0ZzGocgCNJd #secret
-  groupId:
-    face: ${random.uuid}
-    car: ${random.uuid}
-
-infovision-rabbit:
-  groupId: ${random.uuid}
-
-# 海康威视全量密钥
-infovision:
-  ip: 74.10.28.97  #host
-  port: 443       #port
-  appkey: 26491753 #key
-  secret: nSWbgqChFBSdGPSnb59i #secret
-
-#海康
-#重点人员人脸库唯一标识
-key-personlibid: 1634291086413
-# 岸线-人脸布控库id
-face-personlibid: 16345463113275
-# 岸线-人员布控库id
-control-personlibid: 1634547649335
-# 岸线-重点车辆库id
-key-vehiclelibid: 1634546401514
-# 岸线-车辆布控库id
-control-vehiclelibid: 16345463664888
-
-
-# 巡逻防控 —— 轨迹查询开关
-patrolinfoboolean: false
-
-
-# 重点对象同步海康请求开关
-key-boolean: false
-
-
-# MQTT Config 开发环境默认关闭 mqtt协议已弃用,请勿开启
-mqtt:
-  #  host: tcp://74.10.28.97:1883
-  host: tcp://localhost:1883
-  userName: mqtt
-  passWord: mqtt
-  keepLiveTime: 100
-  enabled: false
-  cilentId: ${random.uuid}
-  face:
-    topic: artemis/event_face/3187675137/admin
-  car:
-    topic: artemis/event_veh/3204452353/admin
-
-workflow:
-  auditRole:
-    watchman: '派出所值班用户'
-    policeRole: '派出所民警'
-    detachmentPoliceRole: '支队民警'
-    shipPoliceRole: '派出所船管民警'
-    directorRole: '派出所所长'
-    policeLeaderRole: '派出所领导'
-    brigadeRole: '大队领导'
-    detachmentRole: '支队领导'
-    teamRole: '总队领导'
-    commandAndDispatchRole: '指挥调度'
-  auditModel:
-    one: ${workflow.auditRole.policeRole}_${workflow.auditRole.policeLeaderRole}_${workflow.auditRole.detachmentRole}_${workflow.auditRole.teamRole}
-    two: ${workflow.auditRole.policeRole}_${workflow.auditRole.policeLeaderRole}_${workflow.auditRole.brigadeRole}
-    three: ${workflow.auditRole.policeRole}_${workflow.auditRole.policeLeaderRole}_${workflow.auditRole.detachmentRole}
-    four: ${workflow.auditRole.policeRole}_${workflow.auditRole.policeLeaderRole}
-    five: ${workflow.auditRole.policeRole}_${workflow.auditRole.policeLeaderRole}_${workflow.auditRole.detachmentRole}
-    six: ${workflow.auditRole.policeRole}_${workflow.auditRole.policeLeaderRole}_${workflow.auditRole.detachmentRole}_${workflow.auditRole.teamRole}
-    seven: ${workflow.auditRole.detachmentPoliceRole}_${workflow.auditRole.detachmentRole}
-    eight: ${workflow.auditRole.detachmentPoliceRole}_${workflow.auditRole.detachmentRole}_${workflow.auditRole.teamRole}
-    nine: ${workflow.auditRole.policeRole}_${workflow.auditRole.policeLeaderRole}_${workflow.auditRole.brigadeRole}

+ 0 - 345
target/classes/application-prod.yml

@@ -1,345 +0,0 @@
-#118
-server:
-  port: 8070
-spring:
-  devtools.restart.enabled: true
-  kafka:
-    bootstrap-servers: app2833:9094,app2834:9094,app2835:9094,app2836:9094,app2837:9094
-    #bootstrap-servers: localhost:9092
-    producer:
-      # 发生错误后,消息重发的次数。
-      retries: 1
-      #当有多个消息需要被发送到同一个分区时,生产者会把它们放在同一个批次里。该参数指定了一个批次可以使用的内存大小,按照字节数计算。
-      batch-size: 16384
-      # 设置生产者内存缓冲区的大小。
-      buffer-memory: 33554432
-      # 键的序列化方式
-      key-serializer: org.springframework.kafka.support.serializer.JsonSerializer
-      # 值的序列化方式
-      value-serializer: org.springframework.kafka.support.serializer.JsonSerializer
-      # acks=0 : 生产者在成功写入消息之前不会等待任何来自服务器的响应。
-      # acks=1 : 只要集群的首领节点收到消息,生产者就会收到一个来自服务器成功响应。
-      # acks=all :只有当所有参与复制的节点全部收到消息时,生产者才会收到一个来自服务器的成功响应。
-      acks: all
-    consumer:
-      # 自动提交的时间间隔 在spring boot 2.X 版本中这里采用的是值的类型为Duration 需要符合特定的格式,如1S,1M,2H,5D
-      auto-commit-interval: 1S
-      # 该属性指定了消费者在读取一个没有偏移量的分区或者偏移量无效的情况下该作何处理:
-      # latest(默认值)在偏移量无效的情况下,消费者将从最新的记录开始读取数据(在消费者启动之后生成的记录)
-      # earliest :在偏移量无效的情况下,消费者将从起始位置读取分区的记录
-      auto-offset-reset: latest
-      # 是否自动提交偏移量,默认值是true,为了避免出现重复数据和数据丢失,可以把它设置为false,然后手动提交偏移量
-      enable-auto-commit: false
-      key-deserializer: org.apache.kafka.common.serialization.StringDeserializer
-      value-deserializer: org.apache.kafka.common.serialization.StringDeserializer
-      # 批量消费一次最大拉取的数据量
-      max-poll-records: 1000
-    properties:
-      security:
-        protocol: SASL_PLAINTEXT
-      sasl:
-        mechanism: SCRAM-SHA-512
-        jaas:
-          config: 'org.apache.kafka.common.security.scram.ScramLoginModule required username="user01" password="8b9dcf43";'
-    listener:
-      # 在侦听器容器中运行的线程数。
-      concurrency: 5
-      #listner负责ack,每调用一次,就立即commit
-      ack-mode: manual_immediate
-      missing-topics-fatal: false
-      type: batch
-  datasource:
-    driver-class-name: com.mysql.cj.jdbc.Driver
-    url: jdbc:mysql://74.10.28.86:3389/ax_seat_1?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
-    username: ax_tj_seat
-    password: Taiji@2022#seat
-#    streams:
-#      auto-startup: false
-
-taiji:
-  openservice:
-    enable: true
-    url: http://74.10.28.87:9002
-  elasticsearch.rest:
-    uris: 74.10.28.65:9200,74.10.28.66:9200,74.10.28.67:9200,74.10.28.68:9200,74.10.28.69:9200
-    username: ax_seat       #如果你设置了基于x-pack的验证就要填写账号和密码
-    password: ax_seat       #没有则不用配置
-    connection-timeout: 100 #连接超时
-    max-connection: 100  #最大连接数
-  hbase.zookeeper:
-    quorum: hadoop7:2181,hadoop8:2181,hadoop9:2181,hadoop16:2181,hadoop17:2181
-    znode_parent: /hbase-unsecure
-  kafka:
-    consumer:
-      groupId: 202206150922_118_es
-      ship_warning_record:
-        topic: 'taiji_ax_ship_warning_record'
-        group: ${random.uuid}
-        partitions0: 0
-        partitions1: 1
-        partitions2: 2
-        partitions3: 3
-        partitions4: 4
-      multiple_warning_record:
-        topic: 'taiji_ax_multiple_warning_record'
-        group: ${random.uuid}
-        partitions0: 0
-        partitions1: 1
-        partitions2: 2
-        partitions3: 3
-        partitions4: 4
-      car_warning_record:
-        topic: 'taiji_ax_car_warning_record'
-        group: ${random.uuid}
-        partitions0: 0
-        partitions1: 1
-        partitions2: 2
-        partitions3: 3
-        partitions4: 4
-      person_warning_record:
-        topic: 'taiji_ax_person_warning_record'
-        group: ${random.uuid}
-        partitions0: 0
-        partitions1: 1
-        partitions2: 2
-        partitions3: 3
-        partitions4: 4
-      ztpt_dynamic_ais:
-        group: ${random.uuid}
-        partitions0: 0
-        partitions1: 1
-        partitions2: 2
-        partitions3: 3
-        partitions4: 4
-        topic: 'taiji_ax_ztpt_dynamic_ais'
-        id-key: 'userid'
-        longitude-key: 'longitude'
-        latitude-key: 'latitude'
-      hlx_ax_dynamic_target_ais:
-        group: ${random.uuid}
-        topic: 'hlx_ax_dynamic_target_ais'
-        partitions0: 0
-        partitions1: 1
-        partitions2: 2
-        partitions3: 3
-        partitions4: 4
-      hlx_ax_dynamic_target_radar:
-        group: ${random.uuid}
-        topic: 'hlx_ax_dynamic_target_radar'
-        partitions0: 0
-        partitions1: 1
-        partitions2: 2
-        partitions3: 3
-        partitions4: 4
-      hlx_ax_dynamic_target_zyh_radar:
-        group: ${random.uuid}
-        topic: 'hlx_ax_dynamic_target_zyh_radar'
-        partitions0: 0
-        partitions1: 1
-        partitions2: 2
-        partitions3: 3
-        partitions4: 4
-      beidou-dynamic-ship:
-        group: ${random.uuid}
-        topic: 'taiji_ax_beidou_dynamic_ship'
-        partitions0: 0
-        partitions1: 1
-        partitions2: 2
-        partitions3: 3
-        partitions4: 4
-      tianao_radar_fusion:
-        group: ${random.uuid}
-        topic: 'taiji_ax_tianao_radar_fusion'
-        latitude-key: 'latitude'
-        longitude-key: 'longitude'
-        id-key: 'fusionBatchNum'
-        partitions0: 0
-        partitions1: 1
-        partitions2: 2
-        partitions3: 3
-        partitions4: 4
-      pdt_data_track:
-        topic: 't_pdt_data_receive'
-        group: ${random.uuid}
-        partitions0: 0
-        partitions1: 1
-        partitions2: 2
-        partitions3: 3
-        partitions4: 4
-      dynamic-mobile-track:
-        group: ${random.uuid}
-        topic: 'ax_mobile_dynamic_track'
-        partitions0: 0
-        partitions1: 1
-        partitions2: 2
-        partitions3: 3
-        partitions4: 4
-      dvr_track:
-        group: ${random.uuid}
-        topic: 'taiji_ax_dvr_track'
-        partitions0: 0
-        partitions1: 1
-        partitions2: 2
-        partitions3: 3
-        partitions4: 4
-      dynamic-ship-track:
-        topic: 'taiji_ax_ship_dynamic_fusion'
-        id-key: 'merge_target'
-        longitude-key: 'target_longitude'
-        latitude-key: 'target_latitude'
-        group: ${random.uuid}
-        partitions0: 0
-        partitions1: 1
-        partitions2: 2
-        partitions3: 3
-        partitions4: 4
-      dynamic-ship-track-gis:
-        topic: 'taiji_ax_ship_dynamic_fusion_gis'
-        id-key: 'merge_target'
-        longitude-key: 'target_longitude'
-        latitude-key: 'target_latitude'
-        group: ${random.uuid}
-        partitions0: 0
-        partitions1: 1
-        partitions2: 2
-        partitions3: 3
-        partitions4: 4
-      dynamic-fk-ship-track-gis:
-        topic: 'taiji_ax_fk_ship_dynamic_fusion_gis'
-        id-key: 'merge_target'
-        longitude-key: 'target_longitude'
-        latitude-key: 'target_latitude'
-        group: ${random.uuid}
-        partitions0: 0
-        partitions1: 1
-        partitions2: 2
-        partitions3: 3
-        partitions4: 4
-      dynamic-fk-track-ship-partition:
-        topic: 'taiji_ax_fk_dynamic_fusion_ship'
-        group: ${random.uuid}
-        partitions0: 0
-        partitions1: 1
-        partitions2: 2
-        partitions3: 3
-        partitions4: 4
-      dynamic-ship-track-partition:
-        topic: 'taiji_ax_ship_dynamic_fusion'
-        group: ${random.uuid}
-        partitions0: 0
-        partitions1: 1
-        partitions2: 2
-        partitions3: 3
-        partitions4: 4
-        id-key: merge_id
-        longitude-key: target_longitude
-        latitude-key: target_latitude
-      hik-capture-face:
-        group: ${random.uuid}
-        topic: 'taiji_ax_hik_capture_face'
-        partitions0: 0
-        partitions1: 1
-        partitions2: 2
-        partitions3: 3
-        partitions4: 4
-      hik-capture-car:
-        group: ${random.uuid}
-        topic: 'taiji_ax_hik_capture_car'
-        partitions0: 0
-        partitions1: 1
-        partitions2: 2
-        partitions3: 3
-        partitions4: 4
-      hik-capture-ship:
-        group: ${random.uuid}
-        topic: 'ship_camera_structured_info'
-        partitions0: 0
-        partitions1: 1
-        partitions2: 2
-        partitions3: 3
-        partitions4: 4
-      taiji_hik_face:
-        group: ${random.uuid}
-        topic: 'ax_taiji_hik_face'
-        partitions0: 0
-        partitions1: 1
-        partitions2: 2
-        partitions3: 3
-        partitions4: 4
-      taiji_ax_hlx_zww_dynamic_fusion_ship:
-        group: ${random.uuid}
-        topic: 'taiji_ax_hlx_zww_dynamic_fusion_ship'
-        partitions0: 0
-        partitions1: 1
-        partitions2: 2
-        partitions3: 3
-        partitions4: 4
-      taiji_ax_hlx_zww_dynamic_fusion_ship_gis:
-        group: ${random.uuid}
-        topic: 'taiji_ax_hlx_zww_dynamic_fusion_ship_gis'
-        partitions0: 0
-        partitions1: 1
-        partitions2: 2
-        partitions3: 3
-        partitions4: 4
-      tile: false
-      prefix:
-        ztpt_dynamic_ais_key_prefix: ZTPT_DYNAMIC_AIS_118_
-        tianao_radar_fusion_key_prefix: TIANAO_RADAR_FUSION_118_
-        dynamic_ship_track_geo_name_key: DYNAMIC_SHIP_TRACK_GEO_NAME_KEY_118_
-        dynamic_ship_track_geo_key: dynamic_ship_track_geo_key_118_
-        trake_user_prefix: trake_user_prefix_118_
-        trake_dept_prefix: trake_dept_prefix_118_
-        ship_borne_terminal_redis_key_prefix: ship_borne_terminal_118_
-        static_beidou_law_enforcement_ship_redis_key_prefix: STATIC_BEIDOU_LAW_ENFORCEMENT_SHIP_118_
-        static_police_man_track_redis_key_prefix: STATIC_POLICE_MAN_TRACK_REDIS_118_
-        static_law_enforcement_car_redis_key_prefix: STATIC_LAW_ENFORCEMENT_CAR_118_;
-        hlx_ais_redis_key_prefix: hlx_ais_redis_key_prefix_116_
-        hlx_dynamic_radar_redis_key_prefix: hlx_dynamic_radar_redis_key_prefix_116_
-        hlx_zyh_redis_key_prefix: hlx_zyh_redis_key_prefix_116_
-    producer:
-      police_ship_fusion_track:
-        topic: taiji_ax_police_ship_fusion_track
-        group: ${random.uuid}
-        partitions0: 0
-        partitions1: 1
-        partitions2: 2
-        partitions3: 3
-        partitions4: 4
-      police_car_fusion_track:
-        topic: taiji_ax_police_car_fusion_track
-        group: ${random.uuid}
-        partitions0: 0
-        partitions1: 1
-        partitions2: 2
-        partitions3: 3
-        partitions4: 4
-      police_man_fusion_track:
-        topic: taiji_ax_police_man_fusion_track
-        group: ${random.uuid}
-        partitions0: 0
-        partitions1: 1
-        partitions2: 2
-        partitions3: 3
-        partitions4: 4
-logging:
-  basePath: /app/dynamicTrackEs59/logs
-  config: classpath:log-config/logback-spring.xml
-  # 本地开发环境通过level控制
-  level:
-    root: info
-    cn.com.taiji: trace
-    org.springframework.web: debug
-
-##amazon-s3
-file:
-  store:
-    endpoint: http://74.10.28.62:81
-    access-key: ax_seat_acc
-    secret-key: ax_seat_AxSeatPW
-    bucket: ax_es_hik_images
-    prefix: ax_es_hik_images
-    domain: http://74.10.28.62:81/
-    ip: 74.10.28.62
-    port: 81
-    httpOnly: 0

+ 0 - 34
target/classes/application.yml

@@ -1,34 +0,0 @@
-server:
-  tomcat:
-    uri-encoding: UTF-8
-    max-threads: 800
-    min-spare-threads: 30
-spring:
-  application.name: images
-  profiles.active: prod
-
-# MyBatis配置
-mybatis-plus:
-  # 搜索指定包别名
-  typeAliasesPackage: cn.com.taiji.**.domain
-  # 配置mapper的扫描,找到所有的mapper.xml映射文件
-  mapperLocations: classpath*:mapper/**/*Mapper.xml
-  # 加载全局的配置文件
-  #    configLocation: classpath:mybatis/mybatis-config.xml
-  # 打印日志
-  # configuration:
-  #  log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
-  configuration:
-    #    # 这个配置会将执行的sql打印出来,在开发或测试的时候可以用
-    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
-    #    # 返回类型为Map,显示null对应的字段
-    call-setters-on-nulls: true
-    # 开启mybatis的二级缓存
-    cache-enabled: true
-  global-config:
-    db-config:
-      logic-delete-field: delFlag  # 全局逻辑删除的实体字段名(since 3.3.0,配置后可以忽略不配置步骤2)
-      logic-delete-value: 1 # 逻辑已删除值(默认为 )
-      logic-not-delete-value: 0 # 逻辑未删除值(默认为 0)
-    banner: false   # 不打印banner
-

BIN
target/classes/cn/com/taiji/esshipservice/AxShipTrackEsServiceApplication.class


BIN
target/classes/cn/com/taiji/esshipservice/config/BingoFileConfig.class


BIN
target/classes/cn/com/taiji/esshipservice/config/DassIoClientConfig.class


BIN
target/classes/cn/com/taiji/esshipservice/config/EsClientConfiguration.class


BIN
target/classes/cn/com/taiji/esshipservice/constant/BeiDouIdConstants.class


BIN
target/classes/cn/com/taiji/esshipservice/constant/ShipHisTrackIndexConstants.class


BIN
target/classes/cn/com/taiji/esshipservice/domain/ANotOnline.class


BIN
target/classes/cn/com/taiji/esshipservice/domain/ApiResult.class


BIN
target/classes/cn/com/taiji/esshipservice/domain/BeiDouDTO.class


BIN
target/classes/cn/com/taiji/esshipservice/domain/Beidou.class


BIN
target/classes/cn/com/taiji/esshipservice/domain/CbgkShip$CbgkShipBuilder.class


BIN
target/classes/cn/com/taiji/esshipservice/domain/CbgkShip.class


BIN
target/classes/cn/com/taiji/esshipservice/domain/EsLocationDict.class


BIN
target/classes/cn/com/taiji/esshipservice/domain/HainanAreaOut.class


BIN
target/classes/cn/com/taiji/esshipservice/domain/HlxRadar.class


BIN
target/classes/cn/com/taiji/esshipservice/domain/ImportShipTable.class


BIN
target/classes/cn/com/taiji/esshipservice/domain/ImportShipTable2.class


BIN
target/classes/cn/com/taiji/esshipservice/domain/ShipTrackHistoryDTO.class


BIN
target/classes/cn/com/taiji/esshipservice/domain/SmallRadar.class


BIN
target/classes/cn/com/taiji/esshipservice/domain/TestQuery.class


BIN
target/classes/cn/com/taiji/esshipservice/domain/YzPortShip.class


BIN
target/classes/cn/com/taiji/esshipservice/domain/dto/BaseTrackQueryInputDTO.class


BIN
target/classes/cn/com/taiji/esshipservice/domain/dto/CommonHistoryTrack.class


BIN
target/classes/cn/com/taiji/esshipservice/domain/dto/EsHistoryTrack.class


BIN
target/classes/cn/com/taiji/esshipservice/domain/dto/FuseShipTrack.class


BIN
target/classes/cn/com/taiji/esshipservice/domain/dto/HisTrackQueryDto.class


BIN
target/classes/cn/com/taiji/esshipservice/domain/dto/HistoryTrack.class


BIN
target/classes/cn/com/taiji/esshipservice/domain/dto/TempTrack.class


BIN
target/classes/cn/com/taiji/esshipservice/domain/dto/TrackQueryCircleInputDTO.class


BIN
target/classes/cn/com/taiji/esshipservice/domain/dto/TrackQueryInputDTO.class


BIN
target/classes/cn/com/taiji/esshipservice/domain/dto/TrackQueryPolygonInputDTO.class


BIN
target/classes/cn/com/taiji/esshipservice/domain/dto/TrackQueryShipInputDTO.class


BIN
target/classes/cn/com/taiji/esshipservice/enums/HisQueryCmdEnum.class


BIN
target/classes/cn/com/taiji/esshipservice/enums/HisTrackSrcTypeEnum.class


BIN
target/classes/cn/com/taiji/esshipservice/exception/CustomException.class


BIN
target/classes/cn/com/taiji/esshipservice/listener/hlx/fusion/DynamicCaptureCarTrackConsumer.class


BIN
target/classes/cn/com/taiji/esshipservice/listener/hlx/fusion/DynamicCaptureFaceTrackConsumer.class


BIN
target/classes/cn/com/taiji/esshipservice/listener/hlx/fusion/DynamicCaptureShipTrackConsumer.class


BIN
target/classes/cn/com/taiji/esshipservice/utils/DateUtils.class


BIN
target/classes/cn/com/taiji/esshipservice/utils/GraphUtils.class


BIN
target/classes/cn/com/taiji/esshipservice/utils/HttpsDownloadUtils$1.class


BIN
target/classes/cn/com/taiji/esshipservice/utils/HttpsDownloadUtils$X509TrustUtiil.class


BIN
target/classes/cn/com/taiji/esshipservice/utils/HttpsDownloadUtils.class


BIN
target/classes/cn/com/taiji/esshipservice/utils/JsonParser.class


BIN
target/classes/cn/com/taiji/esshipservice/utils/MapPoint.class


+ 0 - 108
target/classes/log-config/logback-spring.xml

@@ -1,108 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<configuration>
-    <springProperty scope="context" name="logPath" source="logging.file.path" defaultValue="logs"/>
-    <!-- 日志存放路径 -->
-    <property name="log.path" value="${logPath}" />
-
-    <!--0. 日志格式和颜色渲染 -->
-    <!-- 彩色日志依赖的渲染类 -->
-    <conversionRule conversionWord="clr" converterClass="org.springframework.boot.logging.logback.ColorConverter" />
-    <conversionRule conversionWord="wex" converterClass="org.springframework.boot.logging.logback.WhitespaceThrowableProxyConverter" />
-    <conversionRule conversionWord="wEx" converterClass="org.springframework.boot.logging.logback.ExtendedWhitespaceThrowableProxyConverter" />
-    <!-- 彩色日志格式 -->
-    <property name="CONSOLE_LOG_PATTERN" value="${CONSOLE_LOG_PATTERN:-%clr(%d{yyyy-MM-dd HH:mm:ss.SSS}){faint} %clr(${LOG_LEVEL_PATTERN:-%5p}) %clr(${PID:- }){magenta} %clr(---){faint} %clr([%15.15t]){faint} %clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}}" />
-    <!-- 日志输出格式 -->
-    <property name="log.pattern" value="%d{HH:mm:ss.SSS} [%thread] %-5level %logger{20} - [%method,%line] - %msg%n" />
-
-    <!-- 控制台输出 -->
-    <appender name="console" class="ch.qos.logback.core.ConsoleAppender">
-        <!-- 此日志appender是为开发使用,只配置最底级别,控制台输出的日志级别是大于或等于此级别的日志信息 -->
-        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
-            <level>debug</level>
-        </filter>
-        <encoder>
-            <Pattern>${CONSOLE_LOG_PATTERN}</Pattern>
-            <!-- 设置字符集 -->
-            <charset>UTF-8</charset>
-        </encoder>
-    </appender>
-
-    <!-- 系统日志输出 -->
-    <appender name="file_info" class="ch.qos.logback.core.rolling.RollingFileAppender">
-        <file>${log.path}/sys-info.log</file>
-        <!-- 循环政策:基于时间创建日志文件 -->
-        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
-            <!-- 日志文件名格式 -->
-            <fileNamePattern>${log.path}/sys-info.%d{yyyy-MM-dd}.log</fileNamePattern>
-            <!-- 日志最大的历史 60天 -->
-            <maxHistory>60</maxHistory>
-        </rollingPolicy>
-        <encoder>
-            <pattern>${log.pattern}</pattern>
-        </encoder>
-        <filter class="ch.qos.logback.classic.filter.LevelFilter">
-            <!-- 过滤的级别 -->
-            <level>INFO</level>
-            <!-- 匹配时的操作:接收(记录) -->
-            <onMatch>ACCEPT</onMatch>
-            <!-- 不匹配时的操作:拒绝(不记录) -->
-            <onMismatch>DENY</onMismatch>
-        </filter>
-    </appender>
-
-    <appender name="file_error" class="ch.qos.logback.core.rolling.RollingFileAppender">
-        <file>${log.path}/sys-error.log</file>
-        <!-- 循环政策:基于时间创建日志文件 -->
-        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
-            <!-- 日志文件名格式 -->
-            <fileNamePattern>${log.path}/sys-error.%d{yyyy-MM-dd}.log</fileNamePattern>
-            <!-- 日志最大的历史 60天 -->
-            <maxHistory>60</maxHistory>
-        </rollingPolicy>
-        <encoder>
-            <pattern>${log.pattern}</pattern>
-        </encoder>
-        <filter class="ch.qos.logback.classic.filter.LevelFilter">
-            <!-- 过滤的级别 -->
-            <level>ERROR</level>
-            <!-- 匹配时的操作:接收(记录) -->
-            <onMatch>ACCEPT</onMatch>
-            <!-- 不匹配时的操作:拒绝(不记录) -->
-            <onMismatch>DENY</onMismatch>
-        </filter>
-    </appender>
-
-    <!-- 用户访问日志输出  -->
-    <appender name="sys-user" class="ch.qos.logback.core.rolling.RollingFileAppender">
-        <file>${log.path}/sys-user.log</file>
-        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
-            <!-- 按天回滚 daily -->
-            <fileNamePattern>${log.path}/sys-user.%d{yyyy-MM-dd}.log</fileNamePattern>
-            <!-- 日志最大的历史 60天 -->
-            <maxHistory>60</maxHistory>
-        </rollingPolicy>
-        <encoder>
-            <pattern>${log.pattern}</pattern>
-        </encoder>
-    </appender>
-
-    <!-- 系统模块日志级别控制  -->
-    <logger name="com.hc" level="error" />
-    <!-- Spring日志级别控制  -->
-    <logger name="org.springframework" level="warn" />
-
-    <root level="error">
-        <appender-ref ref="console" />
-    </root>
-
-    <!--系统操作日志-->
-    <root level="error">
-        <appender-ref ref="file_info" />
-        <appender-ref ref="file_error" />
-    </root>
-
-    <!--系统用户操作日志-->
-    <logger name="sys-user" level="error">
-        <appender-ref ref="sys-user"/>
-    </logger>
-</configuration>

+ 0 - 3
target/maven-archiver/pom.properties

@@ -1,3 +0,0 @@
-version=1.0-SNAPSHOT
-groupId=org.example
-artifactId=EsHkImagesDumpS3

+ 0 - 45
target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst

@@ -1,45 +0,0 @@
-cn\com\taiji\esshipservice\listener\hlx\fusion\DynamicCaptureShipTrackConsumer.class
-cn\com\taiji\esshipservice\utils\JsonParser.class
-cn\com\taiji\esshipservice\domain\SmallRadar.class
-cn\com\taiji\esshipservice\enums\HisQueryCmdEnum.class
-cn\com\taiji\esshipservice\utils\DateUtils.class
-cn\com\taiji\esshipservice\constant\ShipHisTrackIndexConstants.class
-cn\com\taiji\esshipservice\listener\hlx\fusion\DynamicCaptureFaceTrackConsumer.class
-cn\com\taiji\esshipservice\domain\dto\HisTrackQueryDto.class
-cn\com\taiji\esshipservice\config\BingoFileConfig.class
-cn\com\taiji\esshipservice\domain\dto\TempTrack.class
-cn\com\taiji\esshipservice\domain\BeiDouDTO.class
-cn\com\taiji\esshipservice\domain\dto\HistoryTrack.class
-cn\com\taiji\esshipservice\domain\YzPortShip.class
-cn\com\taiji\esshipservice\config\DassIoClientConfig.class
-cn\com\taiji\esshipservice\domain\HlxRadar.class
-cn\com\taiji\esshipservice\config\EsClientConfiguration.class
-cn\com\taiji\esshipservice\domain\ImportShipTable2.class
-cn\com\taiji\esshipservice\domain\dto\BaseTrackQueryInputDTO.class
-cn\com\taiji\esshipservice\domain\dto\EsHistoryTrack.class
-cn\com\taiji\esshipservice\exception\CustomException.class
-cn\com\taiji\esshipservice\domain\dto\TrackQueryCircleInputDTO.class
-cn\com\taiji\esshipservice\domain\ANotOnline.class
-cn\com\taiji\esshipservice\domain\dto\TrackQueryShipInputDTO.class
-cn\com\taiji\esshipservice\domain\Beidou.class
-cn\com\taiji\esshipservice\domain\HainanAreaOut.class
-cn\com\taiji\esshipservice\domain\dto\TrackQueryPolygonInputDTO.class
-cn\com\taiji\esshipservice\domain\CbgkShip$CbgkShipBuilder.class
-cn\com\taiji\esshipservice\listener\hlx\fusion\DynamicCaptureCarTrackConsumer.class
-cn\com\taiji\esshipservice\constant\BeiDouIdConstants.class
-cn\com\taiji\esshipservice\domain\dto\FuseShipTrack.class
-cn\com\taiji\esshipservice\utils\HttpsDownloadUtils$X509TrustUtiil.class
-cn\com\taiji\esshipservice\domain\CbgkShip.class
-cn\com\taiji\esshipservice\AxShipTrackEsServiceApplication.class
-cn\com\taiji\esshipservice\domain\ShipTrackHistoryDTO.class
-cn\com\taiji\esshipservice\domain\dto\TrackQueryInputDTO.class
-cn\com\taiji\esshipservice\domain\TestQuery.class
-cn\com\taiji\esshipservice\utils\HttpsDownloadUtils.class
-cn\com\taiji\esshipservice\domain\dto\CommonHistoryTrack.class
-cn\com\taiji\esshipservice\domain\ImportShipTable.class
-cn\com\taiji\esshipservice\utils\HttpsDownloadUtils$1.class
-cn\com\taiji\esshipservice\utils\MapPoint.class
-cn\com\taiji\esshipservice\domain\EsLocationDict.class
-cn\com\taiji\esshipservice\enums\HisTrackSrcTypeEnum.class
-cn\com\taiji\esshipservice\utils\GraphUtils.class
-cn\com\taiji\esshipservice\domain\ApiResult.class

+ 0 - 43
target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst

@@ -1,43 +0,0 @@
-D:\EsHkImagesDumpS3\src\main\java\cn\com\taiji\esshipservice\config\EsClientConfiguration.java
-D:\EsHkImagesDumpS3\src\main\java\cn\com\taiji\esshipservice\enums\HisTrackSrcTypeEnum.java
-D:\EsHkImagesDumpS3\src\main\java\cn\com\taiji\esshipservice\AxShipTrackEsServiceApplication.java
-D:\EsHkImagesDumpS3\src\main\java\cn\com\taiji\esshipservice\domain\HainanAreaOut.java
-D:\EsHkImagesDumpS3\src\main\java\cn\com\taiji\esshipservice\listener\hlx\fusion\DynamicCaptureFaceTrackConsumer.java
-D:\EsHkImagesDumpS3\src\main\java\cn\com\taiji\esshipservice\listener\hlx\fusion\EsHkImagesDumpS3.java
-D:\EsHkImagesDumpS3\src\main\java\cn\com\taiji\esshipservice\config\BingoFileConfig.java
-D:\EsHkImagesDumpS3\src\main\java\cn\com\taiji\esshipservice\domain\dto\HistoryTrack.java
-D:\EsHkImagesDumpS3\src\main\java\cn\com\taiji\esshipservice\domain\ANotOnline.java
-D:\EsHkImagesDumpS3\src\main\java\cn\com\taiji\esshipservice\domain\dto\TrackQueryCircleInputDTO.java
-D:\EsHkImagesDumpS3\src\main\java\cn\com\taiji\esshipservice\constant\ShipHisTrackIndexConstants.java
-D:\EsHkImagesDumpS3\src\main\java\cn\com\taiji\esshipservice\domain\Beidou.java
-D:\EsHkImagesDumpS3\src\main\java\cn\com\taiji\esshipservice\domain\dto\EsHistoryTrack.java
-D:\EsHkImagesDumpS3\src\main\java\cn\com\taiji\esshipservice\domain\EsLocationDict.java
-D:\EsHkImagesDumpS3\src\main\java\cn\com\taiji\esshipservice\utils\JsonParser.java
-D:\EsHkImagesDumpS3\src\main\java\cn\com\taiji\esshipservice\utils\DateUtils.java
-D:\EsHkImagesDumpS3\src\main\java\cn\com\taiji\esshipservice\domain\dto\HisTrackQueryDto.java
-D:\EsHkImagesDumpS3\src\main\java\cn\com\taiji\esshipservice\domain\dto\TempTrack.java
-D:\EsHkImagesDumpS3\src\main\java\cn\com\taiji\esshipservice\utils\GraphUtils.java
-D:\EsHkImagesDumpS3\src\main\java\cn\com\taiji\esshipservice\domain\dto\FuseShipTrack.java
-D:\EsHkImagesDumpS3\src\main\java\cn\com\taiji\esshipservice\domain\HlxRadar.java
-D:\EsHkImagesDumpS3\src\main\java\cn\com\taiji\esshipservice\domain\YzPortShip.java
-D:\EsHkImagesDumpS3\src\main\java\cn\com\taiji\esshipservice\listener\hlx\fusion\DynamicCaptureShipTrackConsumer.java
-D:\EsHkImagesDumpS3\src\main\java\cn\com\taiji\esshipservice\constant\BeiDouIdConstants.java
-D:\EsHkImagesDumpS3\src\main\java\cn\com\taiji\esshipservice\domain\dto\TrackQueryInputDTO.java
-D:\EsHkImagesDumpS3\src\main\java\cn\com\taiji\esshipservice\domain\CbgkShip.java
-D:\EsHkImagesDumpS3\src\main\java\cn\com\taiji\esshipservice\domain\ImportShipTable2.java
-D:\EsHkImagesDumpS3\src\main\java\cn\com\taiji\esshipservice\enums\HisQueryCmdEnum.java
-D:\EsHkImagesDumpS3\src\main\java\cn\com\taiji\esshipservice\domain\dto\TrackQueryShipInputDTO.java
-D:\EsHkImagesDumpS3\src\main\java\cn\com\taiji\esshipservice\domain\dto\BaseTrackQueryInputDTO.java
-D:\EsHkImagesDumpS3\src\main\java\cn\com\taiji\esshipservice\domain\dto\TrackQueryPolygonInputDTO.java
-D:\EsHkImagesDumpS3\src\main\java\cn\com\taiji\esshipservice\domain\ImportShipTable.java
-D:\EsHkImagesDumpS3\src\main\java\cn\com\taiji\esshipservice\domain\ShipTrackHistoryDTO.java
-D:\EsHkImagesDumpS3\src\main\java\cn\com\taiji\esshipservice\config\DassIoClientConfig.java
-D:\EsHkImagesDumpS3\src\main\java\cn\com\taiji\esshipservice\utils\MapPoint.java
-D:\EsHkImagesDumpS3\src\main\java\cn\com\taiji\esshipservice\domain\TestQuery.java
-D:\EsHkImagesDumpS3\src\main\java\cn\com\taiji\esshipservice\domain\ApiResult.java
-D:\EsHkImagesDumpS3\src\main\java\cn\com\taiji\esshipservice\exception\CustomException.java
-D:\EsHkImagesDumpS3\src\main\java\cn\com\taiji\esshipservice\domain\BeiDouDTO.java
-D:\EsHkImagesDumpS3\src\main\java\cn\com\taiji\esshipservice\listener\hlx\fusion\DynamicCaptureCarTrackConsumer.java
-D:\EsHkImagesDumpS3\src\main\java\cn\com\taiji\esshipservice\domain\SmallRadar.java
-D:\EsHkImagesDumpS3\src\main\java\cn\com\taiji\esshipservice\domain\dto\CommonHistoryTrack.java
-D:\EsHkImagesDumpS3\src\main\java\cn\com\taiji\esshipservice\utils\HttpsDownloadUtils.java

+ 0 - 0
target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/createdFiles.lst


+ 0 - 0
target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst