Pu Zhibing
2024-09-29 adf2ede692b76cf95d0cec80f4087e52d760b219
ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/GoogleMap/FleetEngineUtil.java
@@ -62,6 +62,18 @@
//
//   private final String CONSUMER_ACCOUNT = "odrd-fleetengine-consumersdkus@i-go-gcp.iam.gserviceaccount.com";
//
//   private final String serverPrivateKeyId = "56d803e4689659cf087c0864d6216bb36b7c0740";
//
//   private final String serverPrivateKey = "MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQDSS/aiWM1SybXt9EJx8ulLU5HJ7y1QVmUozcFypOehH3mTW7gJ1UGwHZxMpMaO3N2iRclWBHsMd4t6zYPn2Ao/leIOB2RQGcrWYu527gLrr+nXlfXkAXBBnsV55O1cbdnGK+CIF5UYGvpDkQTD3+7hATBl9kug8D5XpYfKFqnP2a5fEeJaXhPyc5z9eJjOWjJ9DfxGxf9M8Z2+/DAPxNqsML7IKw69jcmWpUoN9sJEx55jke8e4dbRFRcrRSHReThT5UW7HDkHeVtgMSh2b3MnrVYqBHLahJCXiiUdFwlwqaJWwTbXtZJVpvL4dpRbFiCrkEieerBaYajLmxlOJSvhAgMBAAECggEALyTgcZy+yuR1aJbtnmX6buyZLk/0NKJpozAdQfo+AxzvQF27cFjilPzOYVA/Qx+4f/xtGl9+xli2aB1SiNMh2Qdc2hBGKL7ffhhHpVnORc/1+GKh8S9xXwSc+Kqdm670tzx25YuD3RePKz6DdvXos4B0vSbt5XJ2R2fQfTl/cBzQju6u5QI2bVutxm+eaLXUfTVRi5N8EqW6deRAJxgn6VWOEOqBBAxgLaB90hJ9zjcDBDGurUXVumBQX4OVE6+4F1wyMNrjpFosSChJnCZ+ngSulPHHNUVnTeoXzTkp8EXb5o4B7sGoHGxFMGC8f7e5cfPPYtKmtv9s6WzZOshx0QKBgQD0+25fN1lLJxRJlBY+WymcRueEV0JKNGTgGVX0Yc6/1abyUO6mJD7yzhdvgm3/3CwWMOsnIG/+7gv7MAfwmVcs9UoebFl8z6VLzMD5GiuwCHoTRHsr9hTS38dSOr9l0/5s6n1LI4A6StWvolsVvwdM76nEBvNlRkfG3OV1crhaIwKBgQDbwS+2Xrr79cgYwktWnGCEmEDWAxTk3xZf6P/33/+9jnH49ahoEQZHltkRNpEx6axyd0qpEPmzo+xqZPirRdl+LYioF0Mt+mSaX5K5bJJ49FkqnQtUkdV9Zg0FotSxCeOFf5upaHQ7JrCdyvUBkFhEr1U+kcccEs8rB9b6oyZYKwKBgQDaEl7Df1+LGHRkst/CDiBSLoO0OICX0V/iZGsxKUeDWEpN9WEan7UxKeeOqYoFchYEgvMwVx2azof3x1+p+rWxHYAm6MgX5Db97HvywisVfdY9BH6oOVt8AxtIxWbO3BDlHy79DdL9ENR6jYmLKAr1n3l9N7q98fu+t6/CBqa4BQKBgQDOyb2CGSZPDntagQqv17sjSrpIKOIydJLzcafcstZOo4owQcpVEyAboaFlhzmeBEuX8xU4fpbaKji/7X/qe3IsP+DGfA1laKfedGz3O2mhlB2L8ffFfu2scKl0UkNezPVinC/4fChTuRadhWyEKjZFe8/1buw0SKbV0SzE8V2VvQKBgQCC0Vor+pLLkDVwlkg4fc0QNudepiEa61dRxdlWxy3BFfW/zUuP2x3y0jQYW/IAs7Z3xUqC4nHeOjJwELHgsc41YAP6kvyfAtwTddE3n03HmnlHqDKQ4uMCdJe2BQLBxmugL+yzV+YCW5sFTcRfGbEOI4OFRYoGm7Y6IiEyZGYDag==";
//
//   private final String driverPrivateKeyId = "95f1c08fd235d43abe7350fc860120f930467815";
//
//   private final String driverPrivateKey = "MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDZY/0BY/9RaTNrNxPnjbMVWl6RSGqYt+cJmAAcX3CEo276mNGGFNwzzsvsaSm2uspC8kelf1x+R0IEEfVKu7SoX2nso2C392iL3Z/lwH92r6LFD8l8IlNJ7g9fBxO6qa+v94a8BsYsj1bVDjS2Jw4PzQ5uwlTSawDlk6cQnOBCnXhDHSw4Zv51hGdYibv1LS7on9SF//0YBrfuL50lGVBgBkbjLv73eO4RRMv12YWeYntxuRqRjnD26VGcSWU2dQBlag17bioFPbd2NrpJWzDSAUTeOvu1Z5RX7QzrnICv/onz1vSJL/bzuuhBqJXt0KxdoDuoBc0AFq+tTxMcuc+DAgMBAAECggEABs9YDKQaSm2WO8SU7gsFUiTrk3eGR1Rze1x0nG7s8mrAPj9tSNr8bu8KelRtBxlg3qoCTo/n0Njgm4oIehfZN/ENO2l+zSSF9OOzb5oRJCGqYqv07tuQal93wc1R8+X+5+9EHD3GFX1EBhaU1iPxD9OnoRabW6AYfhibAi035T5ExtSZKF0eiiOgWQF7fljkcUoZliD3FXckK8qYhjgFLzyu0MXqDl49HfjaraQWL9dfuJq083hjivqBHdeY0krBa4VsWaaepwcnOGiHm2x7fJIpBYTrmToQGPB1MClXgeEhBCvP2DY2Hj3sqqwFKJcjgnCeTBA5/pO8V0O+6MAtcQKBgQD8YZnnw5KXg+s2vxYSEC0qXde1tMN6BziFCpp0hy02LcRLcsni7h+31++d9bPscuENadz2Lts4jTNwnc162B/TJHtP+VRBs1oVbpkAdouOXNU1mLRyy7NfuHbLfOtXDXE7J4Los63GeBt0AX4YNPuYQ3mBhW3mUHHNPs7AhIs4uQKBgQDcgfL/AXOmgZnglzp9phr6a0pxVlerSeNRUrcpQ3M41t9XaFLM8b6HX94DqsJ8n6bknnBV/gdDdwwIGvNKhcoNa/jbTRv9UAsBef49Ak8Vq3VudEsqQCkBP4B2+WmBBNuBQy9CUrIn8nPScjU8bhpFqKmQxqCfYn29hY8jxY90GwKBgQCw+a/2uUmePb8+0JglanqBbvTIUk2Q0Gdtw5WziObHSyiOz5uKKfjL7fv1BEp6z8PIqCdt6kWHTlx35/Ai6FLIuJhP6EKRH7dXuApKLNaHqclIoCBJL1ZFFREYeCx/CsoP9RDzJKwCtE5r9m/5gY27o/UcQfhivJ5Qkm5gyZDm4QKBgB1erZfrgJTn5C/21JKRwjwieDraTjkBUWauhrjXRAyJChxhR84GUONFEJQadWcV+KuwsrOxbxQ8UfzuYgNGCKB7Bh1nitfVhnG+5u8HVLNFMBHzKWPKQevpolm2ZKgLlpUD9tJ1o0cQ0v5vucl/vL4UdelTm2c/PhI1LNiN4sqLAoGATpugMjecjHvJwHG1Qk5dSIFt1ndc3MmYkLP+bAYMLDZmYbGlCv4Q+YuIyeoCpQNguWO9GqtquqM+yj0zoWn0BNTGhygqInBrLTwxzkfRQGGru0h9GsdhedkE7KJuJgOMYZIk7mZUKONK68CehQR6hYSHZ9a7VfljPpC5F1uuRCM=";
//
//   private final String consumerPrivateKeyId = "37eb9db5c3821cb8a13a15f86b2da194f4cb0959";
//
//   private final String consumerPrivateKey = "MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQCeBruAMii4e7LrGNwSWMbeztzjJV9lUS9CIhWi142G/Ed9b58oa1CAM3ym794PRqtHRvdzLSWRKf3SFJjzYl7CMmkpTgsQoV8tCp/G/vITZcrD9BxYfocysnSDy9d/nleomC1PeUV6coZpGPIjwuxkXyQbH1CnTyGK5RAU2siCw4plLMz6WQyXXyCZOdCijsvSPgytDWveO8DGPIBO1VlHHIJIfrfgVCYgpaXd63GSPQEJ81GYfy5VtnuLHpc3kowq5blLqMFUU6eAzA20Jg3mCovv2idSNN6R5K1kNT3Eu5fsQWuthDqK0H2IeNulb8cCPnri62AH03kxl6xFwC6pAgMBAAECggEAETkH88TZDfeNXHTCfM1oKfMUZ+fe1HAGB93Ryy8ATGyabgqy/KNq4U4QkTEmBowxMVIuuJgnDAHY7q3dWElUV93z+tMiqZas2iqE7MSZ0DtmifdvpMVwKWUBsIuQL7yA2UMcom4ZKxXoSElhD+diqYh6VZUSzpP1QpS3LU6wTm/4IzN+kjfn7sAENk9+ff04VZjBC4yPANWO6gXmNZlGvFvbp6ChBb9PnPlB6dUUiLCGkb/B0jagfqP7ARrDArMcRpJZyYbPDEfxEqqADV28N4k2qOYUZYVmXBXf+Zip7G+rikXmgxn/G1nHLJgUAmc42TUos8P0YsZiVyboQYtU8QKBgQDRcLK70zIZOhMRmr9gTC2khSBA37ZVVtCiJb6G4TtFfH7KLdn8r8aNLauH90WCzQvk2m/KKFlt/q2UJyFatJx5LB4mYKAS7BPfoHYqsoqDMuMXtNpe6PO5/rx8h90pl60gouG2iw1QcOq5NKNVr2INYkItJhc8u99Lhw675hVVOwKBgQDBKA2e1KERO3cOn7muaJjWubMJ6mK0XtOLmTL8maILwJVO2H6rMOxoYum3txZjc+oTdFcyfv5TJZrihm3F2XoZ6Xe1F0OhiX97OgA/uDygQSDsiFdhJ90svbpGxDxtQtamhuu+8Wp1TpNu8ORdG+3gmsCkxivrPTs/MnJnfiu9awKBgGJ1QYDsyvtzAq3e+qKxjS9vafc1dAjwVAo2BjhwP6Xt3cj7/yM8GvIZiy7S/rl73WCLk8wMZeZAuKcSMirrBzgrlkziVb4vfzQ8wfBWmKkOzhVB7vp5NsK0TzWXxU+dP0U9bTCcc/jh7GZ+qV5JoaW7EHMbGgdyJoniBvosMtErAoGAKVRvraejmzNVI0zsBzScV32+oIWFf0C3FSy/qysYcFlR2WAbonfCbgeUKNpFMRyRXn5LViO0OYhXXtcSz/3b0YWSNq52qy7nly9u9DNwzX2CFPqLb99+xN8H57J/l4VwtosyEFZJyDX6+AcVZhLe0GtsgxVgOmKMtdYOgrSNmWcCgYBu3KiRwYPfQgyEYOwfQBOjoMmPUB8H/vtvFLRlHXxZF7hPAyKs4e9dQRW7vb61epVgMVz5t4E4pKHqxpZu+j7Tby+Z5fAgSPiniZUyVH9AYGCTyAYZogr5r21vhpcAZJ0P8hoE5R2jhnzu/mhr6CkWz8nCHsZ7+KBjcVILUYIS9g==";
//
//   private final String provider = "i-go-gcp";
   
   @Autowired
@@ -77,22 +89,22 @@
   public Map<String, Object> fleetEngineAuth(int type, String id) {
      try {
         //谷歌云服务器使用这部分代码
         AuthTokenMinter minter = AuthTokenMinter.builder()
               //服务端签名
               .setServerSigner(ImpersonatedSigner.create(SERVICE_ACCOUNT))
               //司机端签名
               .setDriverSigner(ImpersonatedSigner.create(DRIVER_ACCOUNT))
               //乘客端签名
               .setConsumerSigner(ImpersonatedSigner.create(CONSUMER_ACCOUNT))
               .build();
//         AuthTokenMinter minter = AuthTokenMinter.builder()
//               //服务端签名
//               .setServerSigner(LocalSigner.create(SERVICE_ACCOUNT, serverPrivateKeyId, serverPrivateKey))
//               .setServerSigner(ImpersonatedSigner.create(SERVICE_ACCOUNT))
//               //司机端签名
//               .setDriverSigner(LocalSigner.create(DRIVER_ACCOUNT, driverPrivateKeyId, driverPrivateKey))
//               .setDriverSigner(ImpersonatedSigner.create(DRIVER_ACCOUNT))
//               //乘客端签名
//               .setConsumerSigner(LocalSigner.create(CONSUMER_ACCOUNT, consumerPrivateKeyId, consumerPrivateKey))
//               .setConsumerSigner(ImpersonatedSigner.create(CONSUMER_ACCOUNT))
//               .build();
         AuthTokenMinter minter = AuthTokenMinter.builder()
               //服务端签名
               .setServerSigner(LocalSigner.create(SERVICE_ACCOUNT, serverPrivateKeyId, serverPrivateKey))
               //司机端签名
               .setDriverSigner(LocalSigner.create(DRIVER_ACCOUNT, driverPrivateKeyId, driverPrivateKey))
               //乘客端签名
               .setConsumerSigner(LocalSigner.create(CONSUMER_ACCOUNT, consumerPrivateKeyId, consumerPrivateKey))
               .build();
         
         String jwt = "";
         Long expirationTimestamp = 0L;
@@ -115,9 +127,7 @@
         map.put("token", jwt);
         map.put("expirationTimestamp", expirationTimestamp);
         return map;
      } catch (SigningTokenException e) {
         throw new RuntimeException(e);
      } catch (SignerInitializationException e) {
      } catch (Exception e) {
         throw new RuntimeException(e);
      }
   }
@@ -161,7 +171,7 @@
      
      JSONObject body = new JSONObject();
      body.put("vehicleState", "OFFLINE");
      body.put("supportedTripTypes", Arrays.asList("SHARED", "EXCLUSIVE"));
      body.put("supportedTripTypes", "EXCLUSIVE");
      body.put("maximumCapacity", maximumCapacity);
      
      JSONObject category = new JSONObject();
@@ -292,7 +302,7 @@
         licensePlate1.put("lastCharacter", getLastNumber(licensePlate));
         body.put("licensePlate", licensePlate1);
      }
      body.put("supportedTripTypes", Arrays.asList("SHARED", "EXCLUSIVE"));
      body.put("supportedTripTypes", "EXCLUSIVE");
      
      JSONObject category = new JSONObject();
      category.put("category", "TAXI");
@@ -473,7 +483,7 @@
         body.put("vehicleId", vehicleId);
      }
      body.put("tripStatus", "NEW");
      body.put("tripType", "SHARED");
      body.put("tripType", "EXCLUSIVE");
      body.put("numberOfPassengers", numberOfPassengers);
      
      JSONObject pickupPoint = new JSONObject();