Browse Source

feat : 解决支付宝H5支付短链获取不到的问题

bilingfeng 2 years ago
parent
commit
ecdec7667d

+ 15 - 0
game-module/game-sdk/src/main/java/com/zanxiang/sdk/config/RestTemplateConfig.java

@@ -15,5 +15,20 @@ public class RestTemplateConfig {
     @Bean
     public RestTemplate restTemplate() {
         return new RestTemplate();
+//        SimpleClientHttpRequestFactory httpRequestFactory = new SimpleClientHttpRequestFactory();
+//        SocketAddress address = new InetSocketAddress("localhost", 8888);
+//        Proxy proxy = new Proxy(Proxy.Type.HTTP, address);
+//        httpRequestFactory.setProxy(proxy);
+//        RestTemplate restTemplate = new RestTemplate(httpRequestFactory);
+
+
+        // 实体类序列化化 java.time包的问题
+        /*List<HttpMessageConverter<?>> messageConverters = new ArrayList<>();
+        MappingJackson2HttpMessageConverter jsonMessageConverter = new MappingJackson2HttpMessageConverter();
+        jsonMessageConverter.setObjectMapper(JsonUtil.JACKSON);
+        messageConverters.add(jsonMessageConverter);
+        restTemplate.setMessageConverters(messageConverters);*/
+
+//        return restTemplate;
     }
 }

+ 5 - 2
game-module/game-sdk/src/main/java/com/zanxiang/sdk/controller/TestController.java

@@ -18,6 +18,8 @@ import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
+import java.util.Map;
+
 /**
  * @author : lingfeng
  * @time : 2023-01-18
@@ -55,10 +57,11 @@ public class TestController {
         UserData userData = UserData.builder()
                 .gameId(21L)
                 .userId(132L)
-                .deviceSystem("ios")
+                .deviceSystem("android")
                 .ip("125.121.234.254")
                 .build();
-        orderPayService.payCreate(productPayParam, userData);
+        Map<String, Object> stringObjectMap = orderPayService.payCreate(productPayParam, userData);
+        System.out.println("11111111111");
         return ResultVO.ok();
     }
 }

+ 76 - 0
game-module/game-sdk/src/main/java/com/zanxiang/sdk/domain/dto/AliPayLinkDTO.java

@@ -0,0 +1,76 @@
+package com.zanxiang.sdk.domain.dto;
+
+import lombok.Data;
+
+/**
+ * @author : lingfeng
+ * @time : 2023-02-17
+ * @description : 支付宝短链
+ */
+@Data
+public class AliPayLinkDTO {
+
+    private DataBean data;
+    private ParamsBean params;
+    private String refreshNoAuth;
+    private boolean success;
+
+    @Data
+    public static class DataBean {
+
+        private BizDataBean bizData;
+        private boolean bizError;
+        private ClientLogDataBean clientLogData;
+        private String controlType;
+        private boolean fromSdk;
+        private String mcSessionId;
+        private boolean noNetwork;
+        private String rsaPubKey;
+        private String umidToken;
+        private String userId;
+
+        @Data
+        public static class BizDataBean {
+
+            private boolean forceAppPay;
+            private boolean h5ToNative;
+            private String isSupportMobileDowntime;
+            private String orderAmount;
+            private InvokeAlipayDataBean invokeAlipayData;
+            private String orderInfo;
+            private String waitQueryTime;
+            private String h5RouteToken;
+            private PropagateForH5LoginBean propagateForH5Login;
+
+            @Data
+            public static class InvokeAlipayDataBean {
+
+                private String requestType;
+                private String fromAppUrlScheme;
+                private String dataString;
+            }
+
+            @Data
+            public static class PropagateForH5LoginBean {
+            }
+        }
+
+        @Data
+        public static class ClientLogDataBean {
+
+            private String bizType;
+            private String outTradeNo;
+            private String partnerId;
+            private String salesProductCode;
+            private String serverName;
+            private String traceId;
+        }
+    }
+
+    @Data
+    public static class ParamsBean {
+
+        private String server_param;
+        private String contextId;
+    }
+}

File diff suppressed because it is too large
+ 63 - 90
game-module/game-sdk/src/main/java/com/zanxiang/sdk/service/pay/AliPayService.java


Some files were not shown because too many files changed in this diff