Parcourir la source

Merge remote-tracking branch 'origin/package' into package

shishaosong il y a 1 an
Parent
commit
c5d20bcf32

+ 4 - 0
game-back/game-back-base/src/main/java/com/zanxiang/game/back/base/oceanengine/pojo/dto/OrderReportRpcDTO.java

@@ -36,6 +36,10 @@ public class OrderReportRpcDTO implements Serializable {
      * 渠道标识
      * 渠道标识
      */
      */
     private String agentKey;
     private String agentKey;
+    /**
+     * 回传策略 id
+     */
+    private Long backPolicyId;
     /**
     /**
      * 订单金额(分)
      * 订单金额(分)
      */
      */

+ 4 - 0
game-back/game-back-serve/src/main/java/com/zanxiang/game/back/serve/pojo/entity/GameOceanengineOrderLog.java

@@ -40,6 +40,10 @@ public class GameOceanengineOrderLog implements Serializable {
      * 游戏 id
      * 游戏 id
      */
      */
     private Long gameId;
     private Long gameId;
+    /**
+     * 回传策略 id
+     */
+    private Long backPolicyId;
     /**
     /**
      * 广告账号_id
      * 广告账号_id
      */
      */

+ 1 - 0
game-back/game-back-serve/src/main/java/com/zanxiang/game/back/serve/rpc/impl/WechatMiniGameDataReportRpcImpl.java

@@ -53,6 +53,7 @@ public class WechatMiniGameDataReportRpcImpl implements IWechatMiniGameDataRepor
                 .openId(dto.getWechatOpenId())
                 .openId(dto.getWechatOpenId())
                 .unionId(dto.getWechatUnionId())
                 .unionId(dto.getWechatUnionId())
                 .gameId(dto.getGameId())
                 .gameId(dto.getGameId())
+                .backPolicyId(dto.getBackPolicyId())
                 .accountId(dto.getAccountReport().getAccountId())
                 .accountId(dto.getAccountReport().getAccountId())
                 .accountReportToken(dto.getAccountReport().getReportToken())
                 .accountReportToken(dto.getAccountReport().getReportToken())
                 .accountReportUrl(dto.getAccountReport().getReportUrl())
                 .accountReportUrl(dto.getAccountReport().getReportUrl())

+ 3 - 20
game-back/game-back-serve/src/main/java/com/zanxiang/game/back/serve/service/impl/GameOceanengineOrderLogServiceImpl.java

@@ -4,20 +4,15 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.zanxiang.advertising.tencent.base.pojo.dto.DataReportOfAppIdRpcDTO;
-import com.zanxiang.advertising.tencent.base.pojo.dto.UserActionRpcDTO;
 import com.zanxiang.erp.base.ErpServer;
 import com.zanxiang.erp.base.ErpServer;
 import com.zanxiang.erp.base.rpc.ISysUserRpc;
 import com.zanxiang.erp.base.rpc.ISysUserRpc;
-import com.zanxiang.erp.security.util.SecurityUtil;
 import com.zanxiang.game.back.serve.dao.mapper.GameOceanengineOrderLogMapper;
 import com.zanxiang.game.back.serve.dao.mapper.GameOceanengineOrderLogMapper;
 import com.zanxiang.game.back.serve.oceanengine.MiniGameCallback;
 import com.zanxiang.game.back.serve.oceanengine.MiniGameCallback;
 import com.zanxiang.game.back.serve.oceanengine.OceanengineCallbackException;
 import com.zanxiang.game.back.serve.oceanengine.OceanengineCallbackException;
 import com.zanxiang.game.back.serve.pojo.dto.GameOceanengineOrderLogDTO;
 import com.zanxiang.game.back.serve.pojo.dto.GameOceanengineOrderLogDTO;
 import com.zanxiang.game.back.serve.pojo.entity.*;
 import com.zanxiang.game.back.serve.pojo.entity.*;
-import com.zanxiang.game.back.serve.pojo.enums.ActionTypeEnum;
 import com.zanxiang.game.back.serve.pojo.enums.BackStatusEnum;
 import com.zanxiang.game.back.serve.pojo.enums.BackStatusEnum;
 import com.zanxiang.game.back.serve.pojo.vo.GameOceanengineOrderLogVO;
 import com.zanxiang.game.back.serve.pojo.vo.GameOceanengineOrderLogVO;
-import com.zanxiang.game.back.serve.pojo.vo.GameTencentOrderVO;
 import com.zanxiang.game.back.serve.service.IGameBackPolicyService;
 import com.zanxiang.game.back.serve.service.IGameBackPolicyService;
 import com.zanxiang.game.back.serve.service.IGameOceanengineBackLogService;
 import com.zanxiang.game.back.serve.service.IGameOceanengineBackLogService;
 import com.zanxiang.game.back.serve.service.IGameOceanengineOrderLogService;
 import com.zanxiang.game.back.serve.service.IGameOceanengineOrderLogService;
@@ -25,7 +20,6 @@ import com.zanxiang.game.back.serve.service.IGameOceanengineUserLogService;
 import com.zanxiang.game.back.serve.utils.BackPolicyUtil;
 import com.zanxiang.game.back.serve.utils.BackPolicyUtil;
 import com.zanxiang.module.util.bean.BeanUtil;
 import com.zanxiang.module.util.bean.BeanUtil;
 import lombok.extern.slf4j.Slf4j;
 import lombok.extern.slf4j.Slf4j;
-import org.apache.commons.collections4.CollectionUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.dubbo.config.annotation.DubboReference;
 import org.apache.dubbo.config.annotation.DubboReference;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -61,21 +55,11 @@ public class GameOceanengineOrderLogServiceImpl extends ServiceImpl<GameOceaneng
                 // 头条只要回传支付订单
                 // 头条只要回传支付订单
                 return false;
                 return false;
             }
             }
-            List<GameBackPolicy> gameBackPolicyList = gameBackPolicyService.list(new LambdaQueryWrapper<GameBackPolicy>()
-                    .eq(GameBackPolicy::getAccountId, orderLog.getAccountId())
-                    .or().eq(GameBackPolicy::getGameId, orderLog.getGameId())
-            );
-            if (CollectionUtils.isEmpty(gameBackPolicyList)) {
+            if (orderLog.getBackPolicyId() == null) {
                 // 没有回传策略,则直接全量回传
                 // 没有回传策略,则直接全量回传
                 doBack = true;
                 doBack = true;
             } else {
             } else {
-                GameBackPolicy gameBackPolicy = gameBackPolicyList.get(0);
-                if (gameBackPolicyList.size() > 1) {
-                    GameBackPolicy temp = gameBackPolicyList.get(1);
-                    if (temp.getAccountId() != null && temp.getAccountId() > 0) {
-                        gameBackPolicy = temp;
-                    }
-                }
+                GameBackPolicy gameBackPolicy = gameBackPolicyService.getById(orderLog.getBackPolicyId());
                 doBack = BackPolicyUtil.backOrder(gameBackPolicy, orderLog.getAmount(), backUnit -> {
                 doBack = BackPolicyUtil.backOrder(gameBackPolicy, orderLog.getAmount(), backUnit -> {
                     return Long.valueOf(list(new LambdaQueryWrapper<GameOceanengineOrderLog>()
                     return Long.valueOf(list(new LambdaQueryWrapper<GameOceanengineOrderLog>()
                                     .eq(GameOceanengineOrderLog::getGameId, orderLog.getGameId())
                                     .eq(GameOceanengineOrderLog::getGameId, orderLog.getGameId())
@@ -89,7 +73,6 @@ public class GameOceanengineOrderLogServiceImpl extends ServiceImpl<GameOceaneng
                 });
                 });
                 orderLog.setAmount(BackPolicyUtil.lowRechargeLevel(orderLog.getAmount(), gameBackPolicy.getLevelDown()));
                 orderLog.setAmount(BackPolicyUtil.lowRechargeLevel(orderLog.getAmount(), gameBackPolicy.getLevelDown()));
             }
             }
-
         }
         }
         if (doBack) {
         if (doBack) {
             BackStatusEnum backStatus = doCallback(orderLog);
             BackStatusEnum backStatus = doCallback(orderLog);
@@ -121,7 +104,7 @@ public class GameOceanengineOrderLogServiceImpl extends ServiceImpl<GameOceaneng
     public boolean oceanengineOrderReport(List<Long> ids) {
     public boolean oceanengineOrderReport(List<Long> ids) {
         baseMapper.selectBatchIds(ids).stream()
         baseMapper.selectBatchIds(ids).stream()
                 .filter(item -> !item.getBackStatus().equals(BackStatusEnum.SUCCESS.getBackStatus()))
                 .filter(item -> !item.getBackStatus().equals(BackStatusEnum.SUCCESS.getBackStatus()))
-                .forEach(oceanengineOrderLog -> callback(oceanengineOrderLog,true));
+                .forEach(oceanengineOrderLog -> callback(oceanengineOrderLog, true));
         return true;
         return true;
     }
     }