ソースを参照

feat : 代码整理修改

bilingfeng 2 年 前
コミット
a3b8e1b0b7

+ 0 - 2
game-module/game-sdk/src/main/java/com/zanxiang/sdk/domain/bo/ProductPayParamBO.java

@@ -77,8 +77,6 @@ public class ProductPayParamBO {
      */
     private String code;
 
-    //================以下非传项=================
-
     /**
      * 支付类型详情(android / ios/ window)
      */

+ 0 - 2
game-module/game-sdk/src/main/java/com/zanxiang/sdk/service/IGamePayWayService.java

@@ -3,13 +3,11 @@ package com.zanxiang.sdk.service;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.zanxiang.mybatis.entity.GamePayWay;
 import com.zanxiang.sdk.domain.dto.GamePayWayDTO;
-import org.springframework.stereotype.Component;
 
 /**
  * @author xufeng
  * @date 2022/6/13 11:27
  */
-@Component
 public interface IGamePayWayService extends IService<GamePayWay> {
 
     /**

+ 7 - 0
game-module/game-sdk/src/main/java/com/zanxiang/sdk/service/IGameStrategyService.java

@@ -13,5 +13,12 @@ import com.zanxiang.sdk.domain.params.UserData;
  */
 public interface IGameStrategyService extends IService<GameStrategy> {
 
+    /**
+     * 支付策略
+     *
+     * @param user    用户
+     * @param orderBo 订单薄
+     * @return {@link Boolean}
+     */
     Boolean paySwitch(UserData user, PlatformOrderBO orderBo);
 }

+ 8 - 0
game-module/game-sdk/src/main/java/com/zanxiang/sdk/service/IGameUserRoleService.java

@@ -7,5 +7,13 @@ import com.zanxiang.sdk.domain.params.UserData;
 
 
 public interface IGameUserRoleService extends IService<GameUserRole> {
+
+    /**
+     * 更新用户游戏角色
+     *
+     * @param param    参数
+     * @param userData 用户数据
+     * @return {@link Boolean}
+     */
     Boolean updateUserGameRole(GameUserRoleUpdateParam param, UserData userData);
 }

+ 5 - 5
game-module/game-sdk/src/main/java/com/zanxiang/sdk/service/IOrderPayService.java

@@ -34,11 +34,11 @@ public interface IOrderPayService {
     Integer getAppletPayDevice(UserData userData);
 
     /**
-     * 单支付
+     * 单支付
      *
      * @param product  : 商品信息
      * @param userData : 用户信息
-     * @return : 返回接过参数
+     * @return {@link ResultMap}
      */
     ResultMap payCreate(ProductPayParam product, UserData userData);
 
@@ -48,7 +48,7 @@ public interface IOrderPayService {
      * @param request  : 请求参数
      * @param response : 接过
      * @param payType  : 支付类型
-     * @return : 返回接过
+     * @return {@link String}
      * @throws IOException : 异常
      */
     String notify(HttpServletRequest request, HttpServletResponse response, Integer payType) throws IOException;
@@ -58,7 +58,7 @@ public interface IOrderPayService {
      *
      * @param request : 请求参数
      * @param payType : 支付类型
-     * @return : 回调结果
+     * @return {@link ResultMap}
      */
     ResultMap synNotify(HttpServletRequest request, Integer payType);
 
@@ -66,7 +66,7 @@ public interface IOrderPayService {
      * 订单支付结果查询
      *
      * @param orderId : 订单id
-     * @return : 返回支付结果
+     * @return {@link Boolean}
      */
     Boolean payResult(String orderId);
 }

+ 2 - 2
game-module/game-sdk/src/main/java/com/zanxiang/sdk/service/IOrderService.java

@@ -29,7 +29,7 @@ public interface IOrderService extends IService<Order> {
      * 订单支付
      *
      * @param platformOrderBO 平台订单薄
-     * @return true/false
+     * @return {@link Boolean}
      */
     Boolean pay(PlatformOrderBO platformOrderBO);
 
@@ -37,7 +37,7 @@ public interface IOrderService extends IService<Order> {
      * 单一订单详情获取
      *
      * @param orderId 订单id
-     * @return PlatformOrderDTO
+     * @return {@link PlatformOrderDTO}
      */
     PlatformOrderDTO info(String orderId);
 }

+ 8 - 7
game-module/game-sdk/src/main/java/com/zanxiang/sdk/service/IPerformOrderService.java

@@ -13,31 +13,32 @@ public interface IPerformOrderService {
     /**
      * cp方履约推送
      *
-     * @param platformOrderDTO
+     * @param platformOrderDTO 平台订单dto
+     * @return {@link Boolean}
      */
     Boolean pushCp(PlatformOrderDTO platformOrderDTO);
 
     /**
      * 检查订单是否为首单(账号首充)
      *
-     * @param platformOrderDTO
-     * @return
+     * @param platformOrderDTO 平台订单dto
+     * @return {@link Boolean}
      */
     Boolean checkIsFirstRecharge(PlatformOrderDTO platformOrderDTO);
 
     /**
      * 更新游戏玩家充值统计
      *
-     * @param platformOrderDTO
-     * @return
+     * @param platformOrderDTO 平台订单dto
+     * @return {@link Boolean}
      */
     Boolean userRechargeTotal(PlatformOrderDTO platformOrderDTO);
 
     /**
      * 更新商户号统计
      *
-     * @param platformOrderDTO
-     * @return
+     * @param platformOrderDTO 平台订单dto
+     * @return {@link Boolean}
      */
     Boolean payMerchantTotal(PlatformOrderDTO platformOrderDTO);
 }

+ 1 - 1
game-module/game-sdk/src/main/java/com/zanxiang/sdk/service/IQqApiService.java

@@ -13,7 +13,7 @@ public interface IQqApiService {
      * QQ授权获取用户信息
      *
      * @param code : 前端授权code
-     * @return : 返回用户信息
+     * @return {@link Map}<{@link String}, {@link String}>
      */
     Map<String, String> qqAuthUserInfo(String code);
 }

+ 6 - 6
game-module/game-sdk/src/main/java/com/zanxiang/sdk/service/IRegisterLoginService.java

@@ -38,7 +38,7 @@ public interface IRegisterLoginService {
      *
      * @param param    : 手机号登录参数
      * @param userData : 用户信息
-     * @return : 返回登录信息
+     * @return {@link ResultVO}<{@link UserLoginVO}>
      */
     ResultVO<UserLoginVO> loginMobile(LoginMobileParam param, UserData userData);
 
@@ -46,7 +46,7 @@ public interface IRegisterLoginService {
      * 登录退出
      *
      * @param userData : 返回用户信息
-     * @return : 返回结果
+     * @return {@link Boolean}
      */
     Boolean loginOut(UserData userData);
 
@@ -54,7 +54,7 @@ public interface IRegisterLoginService {
      * 登录注销
      *
      * @param userData : 返回用户信息
-     * @return : 返回结果
+     * @return {@link Boolean}
      */
     Boolean writeOff(UserData userData);
 
@@ -71,14 +71,14 @@ public interface IRegisterLoginService {
      * @param qqLoginCallbackParam : 回调参数
      * @param request              : request
      * @param userData             : userData
-     * @return : 返回登录token
+     * @return {@link ResultVO}<{@link UserLoginVO}>
      */
     ResultVO<UserLoginVO> qqLoginCallback(QqLoginCallbackParam qqLoginCallbackParam, HttpServletRequest request, UserData userData);
 
     /**
      * 微信授权登录
      *
-     * @param response : 返回体
+     * @param response 响应
      */
     void vxLoginAuth(HttpServletResponse response);
 
@@ -88,7 +88,7 @@ public interface IRegisterLoginService {
      * @param qqLoginCallbackParam : 回调参数
      * @param request              : request
      * @param userData             : userData
-     * @return : 返回登录token
+     * @return {@link ResultVO}<{@link UserLoginVO}>
      */
     ResultVO<UserLoginVO> vxLoginCallback(QqLoginCallbackParam qqLoginCallbackParam, HttpServletRequest request, UserData userData);
 }

+ 8 - 8
game-module/game-sdk/src/main/java/com/zanxiang/sdk/service/IUserService.java

@@ -23,7 +23,7 @@ public interface IUserService extends IService<User> {
      *
      * @param param    : 修改密码的参数
      * @param userData : 用户信息
-     * @return : 返回修改结果
+     * @return {@link ResultVO}<{@link Boolean}>
      */
     ResultVO<Boolean> findPassword(FindPasswordParam param, UserData userData);
 
@@ -32,7 +32,7 @@ public interface IUserService extends IService<User> {
      *
      * @param updatePasswordParam : 修改密码的参数
      * @param userData            : userData
-     * @return : 返回修改结果
+     * @return {@link ResultVO}<{@link Boolean}>
      */
     ResultVO<Boolean> updatePassword(UpdatePasswordParam updatePasswordParam, UserData userData);
 
@@ -41,7 +41,7 @@ public interface IUserService extends IService<User> {
      *
      * @param param    : 绑定手机参数
      * @param userData : userData
-     * @return : 返回修改结果
+     * @return {@link ResultVO}<{@link Boolean}>
      */
     ResultVO<Boolean> bindPhone(BindPhoneParam param, UserData userData);
 
@@ -49,7 +49,7 @@ public interface IUserService extends IService<User> {
      * 获取用户信息
      *
      * @param userData : 用户信息
-     * @return : 返回用户详情信息
+     * @return {@link UserVO}
      */
     UserVO getUserDetail(UserData userData);
 
@@ -57,7 +57,7 @@ public interface IUserService extends IService<User> {
      * 用户获取游戏客服信息
      *
      * @param userData : userData
-     * @return : 返回用户信息
+     * @return {@link CustomerVO}
      */
     CustomerVO getUserCustomer(UserData userData);
 
@@ -66,7 +66,7 @@ public interface IUserService extends IService<User> {
      *
      * @param mobile : 用户手机号
      * @param gameId : 游戏id
-     * @return : 返回用户信息
+     * @return {@link UserDTO}
      */
     UserDTO getUserInfoByMobile(String mobile, Long gameId);
 
@@ -75,7 +75,7 @@ public interface IUserService extends IService<User> {
      *
      * @param gameId : 游戏id
      * @param openId : 微信小游戏openId
-     * @return : 返回用户信息
+     * @return {@link UserDTO}
      */
     UserDTO getUserByOpenId(Long gameId, String openId);
 
@@ -83,7 +83,7 @@ public interface IUserService extends IService<User> {
      * 根据openId查询用户信息
      *
      * @param userId : 用户id
-     * @return : 返回用户信息
+     * @return {@link UserDTO}
      */
     UserDTO getUserByUserId(Long userId);
 }

+ 1 - 1
game-module/game-sdk/src/main/java/com/zanxiang/sdk/service/IVxApiService.java

@@ -13,7 +13,7 @@ public interface IVxApiService {
      * QQ授权获取用户信息
      *
      * @param code : 前端授权code
-     * @return : 返回用户信息
+     * @return {@link Map}<{@link String}, {@link String}>
      */
     Map<String, String> vxAuthUserInfo(String code);
 }

+ 34 - 29
game-module/game-sdk/src/main/java/com/zanxiang/sdk/service/pay/AliPayService.java

@@ -31,6 +31,7 @@ import java.nio.charset.StandardCharsets;
 import java.util.Enumeration;
 import java.util.HashMap;
 import java.util.Map;
+import java.util.Objects;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 
@@ -194,41 +195,45 @@ public class AliPayService extends PayBaseService {
             }
             Matcher matcher = pattern.matcher(body);
             //解析短链
-            if (matcher.find()) {
-                String url = matcher.group();
-                url = url.substring(8, url.length() - 2);
-                Matcher paraMatcher = param.matcher(body);
-                if (paraMatcher.find()) {
-                    String paramData = paraMatcher.group();
-                    paramData = paramData.substring(7, paramData.length() - 2);
-                    paramData = paramData.replace("&quot;", "\"");
-                    String mobileClientUrl = HttpUtil.postDataUrl(url, "biz_content=" + paramData, null);
-                    String aliPayContentBody = HttpUtil.postData(mobileClientUrl, "");
-                    Matcher mobileClientMatcher = mobileClientParam.matcher(aliPayContentBody);
-                    String deepLinkAndroid = "alipays://platformapi/startApp?appId=20000125&orderSuffix=";
-                    String deepLinkIos = "alipay://alipayclient/?";
-                    if (mobileClientMatcher.find()) {
-                        String pageData = mobileClientMatcher.group() + "}";
-                        JSONObject jsonObject = JSONObject.parseObject(pageData);
-                        Object invokeAliPayData = jsonObject.get("invokeAlipayData");
-                        String dataString = JSONObject.parseObject(invokeAliPayData.toString()).get("dataString").toString();
-                        deepLinkAndroid += URLEncoder.encode(dataString, Constants.UTF8);
-                        deepLinkIos += URLEncoder.encode(pageData, Constants.UTF8);
-                        if (product.getDeviceSystem().contains(OsEnum.SYSTEM_ANDROID.getOs())) {
-                            result.put("appLink", deepLinkAndroid);
-                        } else {
-                            result.put("appLink", deepLinkIos);
-                        }
-                    }
-                }
-            }
-            return ResultMap.ok(product.getPayDevice(), result.get("appLink"), product.getOutTradeNo());
+            String deepLink = this.getDeepLink(matcher, body, product.getDeviceSystem());
+            //返回结果
+            return ResultMap.ok(product.getPayDevice(), deepLink, product.getOutTradeNo());
         } catch (Exception e) {
             log.error("支付宝h5支付失败,meg : {}", e.getMessage());
             return ResultMap.error(HttpStatusEnum.FAIL.getMsg());
         }
     }
 
+    private String getDeepLink(Matcher matcher, String body, String deviceSystem) throws Exception {
+        if (!matcher.find()) {
+            return null;
+        }
+        Matcher paraMatcher = param.matcher(body);
+        if (!paraMatcher.find()) {
+            return null;
+        }
+        String url = matcher.group();
+        url = url.substring(8, url.length() - 2);
+        String paramData = paraMatcher.group();
+        paramData = paramData.substring(7, paramData.length() - 2);
+        paramData = paramData.replace("&quot;", "\"");
+        String mobileClientUrl = HttpUtil.postDataUrl(url, "biz_content=" + paramData, null);
+        String aliPayContentBody = HttpUtil.postData(mobileClientUrl, "");
+        Matcher mobileClientMatcher = mobileClientParam.matcher(aliPayContentBody);
+        if (!mobileClientMatcher.find()) {
+            return null;
+        }
+        String deepLinkAndroid = "alipays://platformapi/startApp?appId=20000125&orderSuffix=";
+        String deepLinkIos = "alipay://alipayclient/?";
+        String pageData = mobileClientMatcher.group() + "}";
+        JSONObject jsonObject = JSONObject.parseObject(pageData);
+        Object invokeAliPayData = jsonObject.get("invokeAlipayData");
+        String dataString = JSONObject.parseObject(invokeAliPayData.toString()).get("dataString").toString();
+        deepLinkAndroid += URLEncoder.encode(dataString, Constants.UTF8);
+        deepLinkIos += URLEncoder.encode(pageData, Constants.UTF8);
+        return Objects.equals(deviceSystem, OsEnum.SYSTEM_ANDROID.getOs()) ? deepLinkAndroid : deepLinkIos;
+    }
+
     private ResultMap pcPay(ProductPayParamBO product) {
         try {
             log.info("pc端支付生成,请求参数 bo:{}", product);