stjdydayou vor 4 Jahren
Ursprung
Commit
6b835290e5

+ 55 - 57
src/main/java/com/zhiqiyun/open/router/apis/Oauth2Api.java

@@ -123,22 +123,20 @@ public class Oauth2Api {
         String hostAddress = this.systemConfigService.getStringValue("OAUTH2_API_CONFIG", "hostAddress");
         String clientSecret = this.systemConfigService.getStringValue("OAUTH2_API_CONFIG", "clientSecret");
 
-        Map<String, String> paramValues = new HashMap<>();
-        paramValues.put("code", request.getCode());
-        FormBody.Builder formBuilder = new FormBody.Builder();
-        paramValues.forEach(formBuilder::add);
-
-
         Request.Builder builder = new Request.Builder();
 
-        String url = String.format("%s/blade-auth/oauth/callback/%s?code=%s&appId=%s",
-                hostAddress,
-                request.getSource(),
-                request.getCode(),
-                request.getAppId()
-        );
-        log.info(url);
-        builder.url(url);
+        HttpUrl.Builder urlBuilder = Objects.requireNonNull(HttpUrl.parse(String.format("%s/blade-auth/oauth/auth-login/%s", hostAddress, request.getSource()))).newBuilder();
+        urlBuilder.addQueryParameter("uuid", request.getUuid());
+        urlBuilder.addQueryParameter("name", request.getName());
+        urlBuilder.addQueryParameter("realName", request.getRealName());
+        if (request.getSex() != null) {
+            urlBuilder.addQueryParameter("sex", request.getSex().toString());
+        }
+        urlBuilder.addQueryParameter("email", request.getEmail());
+        urlBuilder.addQueryParameter("phone", request.getPhone());
+
+        log.info(urlBuilder.build().toString());
+        builder.url(urlBuilder.build());
         builder.header("Authorization", "Basic " + clientSecret);
         builder.header("Content-Type", "application/x-www-form-urlencode");
         builder.get();
@@ -146,49 +144,49 @@ public class Oauth2Api {
         return this.getResponse(builder);
     }
 
-    @ServiceMethod(method = "oauth2.wechat.mp.bind", title = "微信公众号账号绑定")
-    public OapResponse oauthWechatBind(Oauth2WechatMpBindRequest request) throws IOException {
-
-        String hostAddress = this.systemConfigService.getStringValue("OAUTH2_API_CONFIG", "hostAddress");
-        String clientSecret = this.systemConfigService.getStringValue("OAUTH2_API_CONFIG", "clientSecret");
-
-        Map<String, String> paramValues = new HashMap<>();
-        paramValues.put("uuid", request.getUuid());
-        paramValues.put("username", request.getUsername());
-        paramValues.put("password", request.getPassword());
-
-        RequestBody body = RequestBody.create(JSON.toJSONString(paramValues), MediaType.parse("application/json; charset=utf-8"));
-
-        Request.Builder builder = new Request.Builder();
-        builder.url(String.format("%s/blade-auth/oauth/bind/%s", hostAddress, request.getSource()));
-        builder.header("Authorization", "Basic " + clientSecret);
-        builder.header("Content-Type", "application/json");
-        builder.post(body);
-
-        return this.getResponse(builder);
-    }
-
-    @ServiceMethod(method = "oauth2.wechat.mp.register.bind", title = "微信公众号注册绑定")
-    public OapResponse oauthWechatRegisterBind(Oauth2WechatMpRegisterBindRequest request) throws IOException {
-
-        String hostAddress = this.systemConfigService.getStringValue("OAUTH2_API_CONFIG", "hostAddress");
-        String clientSecret = this.systemConfigService.getStringValue("OAUTH2_API_CONFIG", "clientSecret");
-
-        Map<String, String> paramValues = new HashMap<>();
-        paramValues.put("uuid", request.getUuid());
-        paramValues.put("username", request.getUsername());
-        paramValues.put("password", request.getPassword());
-
-        RequestBody body = RequestBody.create(JSON.toJSONString(paramValues), MediaType.parse("application/json; charset=utf-8"));
-
-        Request.Builder builder = new Request.Builder();
-        builder.url(String.format("%s/blade-auth/oauth/register/bind/%s", hostAddress, request.getSource()));
-        builder.header("Authorization", "Basic " + clientSecret);
-        builder.header("Content-Type", "application/json");
-        builder.post(body);
-
-        return this.getResponse(builder);
-    }
+//    @ServiceMethod(method = "oauth2.wechat.mp.bind", title = "微信公众号账号绑定")
+//    public OapResponse oauthWechatBind(Oauth2WechatMpBindRequest request) throws IOException {
+//
+//        String hostAddress = this.systemConfigService.getStringValue("OAUTH2_API_CONFIG", "hostAddress");
+//        String clientSecret = this.systemConfigService.getStringValue("OAUTH2_API_CONFIG", "clientSecret");
+//
+//        Map<String, String> paramValues = new HashMap<>();
+//        paramValues.put("uuid", request.getUuid());
+//        paramValues.put("username", request.getUsername());
+//        paramValues.put("password", request.getPassword());
+//
+//        RequestBody body = RequestBody.create(JSON.toJSONString(paramValues), MediaType.parse("application/json; charset=utf-8"));
+//
+//        Request.Builder builder = new Request.Builder();
+//        builder.url(String.format("%s/blade-auth/oauth/bind/%s", hostAddress, request.getSource()));
+//        builder.header("Authorization", "Basic " + clientSecret);
+//        builder.header("Content-Type", "application/json");
+//        builder.post(body);
+//
+//        return this.getResponse(builder);
+//    }
+//
+//    @ServiceMethod(method = "oauth2.wechat.mp.register.bind", title = "微信公众号注册绑定")
+//    public OapResponse oauthWechatRegisterBind(Oauth2WechatMpRegisterBindRequest request) throws IOException {
+//
+//        String hostAddress = this.systemConfigService.getStringValue("OAUTH2_API_CONFIG", "hostAddress");
+//        String clientSecret = this.systemConfigService.getStringValue("OAUTH2_API_CONFIG", "clientSecret");
+//
+//        Map<String, String> paramValues = new HashMap<>();
+//        paramValues.put("uuid", request.getUuid());
+//        paramValues.put("username", request.getUsername());
+//        paramValues.put("password", request.getPassword());
+//
+//        RequestBody body = RequestBody.create(JSON.toJSONString(paramValues), MediaType.parse("application/json; charset=utf-8"));
+//
+//        Request.Builder builder = new Request.Builder();
+//        builder.url(String.format("%s/blade-auth/oauth/register/bind/%s", hostAddress, request.getSource()));
+//        builder.header("Authorization", "Basic " + clientSecret);
+//        builder.header("Content-Type", "application/json");
+//        builder.post(body);
+//
+//        return this.getResponse(builder);
+//    }
 
     /**
      * 已经对接成功

+ 20 - 9
src/main/java/com/zhiqiyun/open/router/request/oauth2/Oauth2WechatMpLoginRequest.java

@@ -11,15 +11,26 @@ import javax.validation.constraints.NotBlank;
 @EqualsAndHashCode(callSuper = true)
 public class Oauth2WechatMpLoginRequest extends AbstractOapRequest {
 
-	@ServiceParamField(describe = "固定值;公众号:WECHAT_MP;小程序:WECHAT_MINI")
-	@NotBlank
-	private String source;
+    @ServiceParamField(describe = "固定值;公众号:WECHAT_MP;小程序:WECHAT_MINI")
+    @NotBlank
+    private String source;
 
-	@ServiceParamField(describe = "微信应用id")
-	@NotBlank
-	private String appId;
+    @ServiceParamField(describe = "获取到的第三方用户id")
+    @NotBlank
+    private String uuid;
 
-	@ServiceParamField(describe = "微信公众号授权码")
-	@NotBlank
-	private String code;
+    @ServiceParamField(describe = "姓名")
+    private String name;
+
+    @ServiceParamField(describe = "真实姓名")
+    private String realName;
+
+    @ServiceParamField(describe = "性别")
+    private Integer sex;
+
+    @ServiceParamField(describe = "邮箱")
+    private String email;
+
+    @ServiceParamField(describe = "手机号码")
+    private String phone;
 }

Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
src/main/resources/public/index.html


Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
src/main/resources/public/static/js/chunk-755fa2ec.0a63d325.js


Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
src/main/resources/public/static/js/chunk-755fa2ec.a0a2299c.js


+ 3 - 2
src/test/java/com/zhiqiyun/TestSdk.java

@@ -65,8 +65,9 @@ public class TestSdk {
 
         Map<String, Object> dataMap = new HashMap<>();
         dataMap.put("source", "WECHAT_MP");
-        dataMap.put("appId", "wxc01ea0423e91d9e0");
-        dataMap.put("code", "654321");
+        dataMap.put("uuid", "wxc01ea0423e91d9e0");
+        dataMap.put("name", "wxc01ea0423e91d9e0");
+        dataMap.put("realName", "wxc01ea0423e91d9e0");
         Response<Map<String, Object>> response = client.execute("oauth2.wechat.login", "1.0.0", dataMap);
         System.out.println(JSON.toJSONString(response));
     }

Einige Dateien werden nicht angezeigt, da zu viele Dateien in diesem Diff geändert wurden.