From d6811336d546e4963a9af3bd7cd8654d14193bce Mon Sep 17 00:00:00 2001
From: liujie <liujie>
Date: 星期四, 31 八月 2023 11:58:57 +0800
Subject: [PATCH] broker 卡车公司端  49码头

---
 src/main/java/com/stylefeng/guns/modular/system/utils/PortUtil/APMStrategy.java |   93 +++++++++++++++++++++++++++-------------------
 1 files changed, 55 insertions(+), 38 deletions(-)

diff --git a/src/main/java/com/stylefeng/guns/modular/system/utils/TerminalInterfaceAcquisitionUtil.java b/src/main/java/com/stylefeng/guns/modular/system/utils/PortUtil/APMStrategy.java
similarity index 61%
rename from src/main/java/com/stylefeng/guns/modular/system/utils/TerminalInterfaceAcquisitionUtil.java
rename to src/main/java/com/stylefeng/guns/modular/system/utils/PortUtil/APMStrategy.java
index 478c5c1..f7076eb 100644
--- a/src/main/java/com/stylefeng/guns/modular/system/utils/TerminalInterfaceAcquisitionUtil.java
+++ b/src/main/java/com/stylefeng/guns/modular/system/utils/PortUtil/APMStrategy.java
@@ -1,10 +1,12 @@
-package com.stylefeng.guns.modular.system.utils;
+package com.stylefeng.guns.modular.system.utils.PortUtil;
 
 import cn.hutool.http.HttpRequest;
 import cn.hutool.http.HttpResponse;
 import com.alibaba.fastjson.JSONObject;
 import com.fasterxml.jackson.databind.JsonNode;
 import com.fasterxml.jackson.databind.ObjectMapper;
+import com.stylefeng.guns.core.common.exception.BizExceptionEnum;
+import com.stylefeng.guns.core.exception.GunsException;
 import com.stylefeng.guns.core.util.ToolUtil;
 import com.stylefeng.guns.modular.system.warpper.TerminaleDataWarpper;
 
@@ -14,49 +16,58 @@
 import java.util.List;
 import java.util.stream.Collectors;
 
-/**
- * <p>
- *   码头-车场-客户 运输状态 第三方接口获取数据 APM码头——Import Availability
- *
- * </p>
- *
- * @Author: lisy
- * @date: 2023-05-18 16:52
- * @Description:
- */
-
-public class TerminalInterfaceAcquisitionUtil {
+public class APMStrategy implements WharfStrategy{
 
     //Sandbox Interface
     private static final String url  = "https://api-sandbox.apmterminals.com/import-availability";
 
     //Production Interface
-    private static final String proUrl  = "https://api.apmterminals.com/import-availability";
+//    private static final String url  = "https://api.apmterminals.com/import-availability";
+
     private static final String auth_url  = "https://api.apmterminals.com/oauth/client_credential/accesstoken";
 
     private static final String KEY  = "di3RgCcM9zlgb5BG1UiYSIxwYdmYUxTo";
     private static final String SECRET  = "AIJczPxBeocsEjtI";
+
     private static String bearerToken  = "5dDHq3LwPW3EYZ6rtPGK0zqWsRA5";
 
 
-    /**
-     *
-     * @param containerId 容器id
-     * @param enums 设施编码
-     * @return
-     */
-    public static TerminaleDataWarpper getTerminalStatus(String containerId,String enums){
+    public static void main(String[] args) {
+        getAuth();
+        String us = auth_url+ "?assetId="+"EITU1509974"+"&facilityCode="+"USLAX";
+        HttpResponse execute = HttpRequest.get(us).header("user-agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/105.0.0.0 Safari/537.36")
+                .header("cookie", "_ga=GA1.2.1226281326.1675309614; _gid=GA1.2.1467106222.1675309614; _ga=GA1.4.1226281326.1675309614; _gid=GA1.4.1467106222.1675309614; AWSALB=1bWqINVI+LJP87FTEXfEw1Ob1nkbr+I4baSbUGUmu5+/LdiqL9ic04Nj7F0Vz3rvharAG7a8dVe3MX6YMNEbUINVr++CCv/UBw6JeCRS0PcbRLxK7wVHb1lPT8Jl; AWSALBCORS=1bWqINVI+LJP87FTEXfEw1Ob1nkbr+I4baSbUGUmu5+/LdiqL9ic04Nj7F0Vz3rvharAG7a8dVe3MX6YMNEbUINVr++CCv/UBw6JeCRS0PcbRLxK7wVHb1lPT8Jl")
+                .header("path", "?assetId=" + "EITU1509974" + "&facilityCode=" + "USLAX")
+                .header("Authorization", "Bearer " + bearerToken)
+                .execute();
+        int status = execute.getStatus();
+        System.out.println(status);
+        System.out.println(execute.body());
+    }
+
+    @Override
+    public TerminaleDataWarpper executeLogic(String... params) {
+        String containerId = "";
+        String enums = "";
+        if (params.length == 0) {
+            throw new GunsException(BizExceptionEnum.REQUEST_EMPTY_ERROR);
+        } else {
+            containerId = params[0];
+            enums = params[1];
+        }
+
         String us = url+ "?assetId="+containerId+"&facilityCode="+enums;
         HttpResponse execute = HttpRequest.get(us).header("user-agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/105.0.0.0 Safari/537.36")
                 .header("cookie", "_ga=GA1.2.1226281326.1675309614; _gid=GA1.2.1467106222.1675309614; _ga=GA1.4.1226281326.1675309614; _gid=GA1.4.1467106222.1675309614; AWSALB=1bWqINVI+LJP87FTEXfEw1Ob1nkbr+I4baSbUGUmu5+/LdiqL9ic04Nj7F0Vz3rvharAG7a8dVe3MX6YMNEbUINVr++CCv/UBw6JeCRS0PcbRLxK7wVHb1lPT8Jl; AWSALBCORS=1bWqINVI+LJP87FTEXfEw1Ob1nkbr+I4baSbUGUmu5+/LdiqL9ic04Nj7F0Vz3rvharAG7a8dVe3MX6YMNEbUINVr++CCv/UBw6JeCRS0PcbRLxK7wVHb1lPT8Jl")
                 .header("path", "?assetId=" + containerId + "&facilityCode=" + enums)
                 .header("Authorization", "Bearer " + bearerToken)
                 .execute();
+
         String body = execute.body();
         int status = execute.getStatus();
         if (status != 200){
             getAuth();
-            getTerminalStatus(containerId,enums);
+            return executeLogic();
         }
         ObjectMapper objectMapper = new ObjectMapper();
         JsonNode jsonArray = null;
@@ -68,7 +79,17 @@
                 warpper.setLfd(appointmentDateTimeLocal);
                 String appointmentNumber = jsonNode.get("containerId").asText();
                 warpper.setAppointmentNumber(appointmentNumber);
+
+                String readyForDelivery = jsonNode.get("readyForDelivery").asText();
+                if (ToolUtil.isNotEmpty(readyForDelivery)) {
+                    warpper.setAvailability(readyForDelivery);
+                }
+
                 String containerHolds = jsonNode.get("containerHolds").asText();
+                String location = jsonNode.get("location").asText();
+                if (ToolUtil.isNotEmpty(location)){
+                    warpper.setClosedArea(location);
+                }
                 List<String> collect = new ArrayList<>();
                 if (ToolUtil.isEmpty(containerHolds)){
                     return warpper;
@@ -77,43 +98,41 @@
                     String[] split = containerHolds.split(",");
                     collect =  Arrays.stream(split).collect(Collectors.toList());
                     if (collect.contains("LINE")){
-                        warpper.setLineHold(1);
+                        warpper.setLineHold("1");
                     }
                     if (collect.contains("TMF")){
-                        warpper.setCustomHold(1);
+                        warpper.setCustomHold("1");
                     }
                     if (collect.contains("PIER")){
-                        warpper.setPierpass(1);
+                        warpper.setPierpass("1");
                     }
                     if (collect.contains("CTF")){
-                        warpper.setCtf(1);
+                        warpper.setCtf("1");
                     }
-                    if (collect.contains("AREA")){
-                        warpper.setClosedArea(1);
-                    }
+
                 }else {
                     if (containerHolds.equals("LINE")){
-                        warpper.setLineHold(1);
+                        warpper.setLineHold("1");
                     }
                     if (containerHolds.equals("TMF")){
-                        warpper.setCustomHold(1);
+                        warpper.setCustomHold("1");
                     }
                     if (containerHolds.equals("PIER")){
-                        warpper.setPierpass(1);
+                        warpper.setPierpass("1");
                     }
                     if (containerHolds.equals("CTF")){
-                        warpper.setCtf(1);
+                        warpper.setCtf("1");
                     }
                     if (containerHolds.equals("AREA")){
-                        warpper.setClosedArea(1);
+                        warpper.setClosedArea("1");
                     }
                 }
+                break;
             }
-
-
         } catch (IOException e) {
             throw new RuntimeException(e);
         }
+
         return warpper;
     }
 
@@ -130,6 +149,4 @@
             bearerToken = (String) o;
         }
     }
-
-
 }

--
Gitblit v1.7.1