Browse Source

Merge branch 'package' of GameCenter/game-center into dev

zhimo 1 year ago
parent
commit
7237205bf5
26 changed files with 434 additions and 499 deletions
  1. 48 0
      game-back/game-back-base/src/main/java/com/zanxiang/game/back/base/pojo/vo/GameBackPolicyRpcVO.java
  2. 12 0
      game-back/game-back-base/src/main/java/com/zanxiang/game/back/base/rpc/IGameBackPolicyRpc.java
  3. 21 78
      game-back/game-back-serve/src/main/java/com/zanxiang/game/back/serve/controller/BackPolicyController.java
  4. 59 0
      game-back/game-back-serve/src/main/java/com/zanxiang/game/back/serve/controller/OceanengineLogController.java
  5. 59 0
      game-back/game-back-serve/src/main/java/com/zanxiang/game/back/serve/controller/TencentLogController.java
  6. 0 2
      game-back/game-back-serve/src/main/java/com/zanxiang/game/back/serve/pojo/vo/GameBackPolicyVO.java
  7. 43 0
      game-back/game-back-serve/src/main/java/com/zanxiang/game/back/serve/rpc/impl/GameBackPolicyRpcImpl.java
  8. 2 0
      game-back/game-back-serve/src/main/java/com/zanxiang/game/back/serve/service/IGameBackPolicyService.java
  9. 32 21
      game-back/game-back-serve/src/main/java/com/zanxiang/game/back/serve/service/impl/GameBackPolicyServiceImpl.java
  10. 1 1
      game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/controller/AgentController.java
  11. 0 54
      game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/controller/GameAppletController.java
  12. 0 47
      game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/controller/GamePictureController.java
  13. 25 0
      game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/pojo/vo/AgentVO.java
  14. 93 0
      game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/pojo/vo/MiPaySumListVO.java
  15. 0 24
      game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/service/IGameAppletService.java
  16. 0 30
      game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/service/IGamePictureService.java
  17. 21 4
      game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/service/impl/AgentServiceImpl.java
  18. 0 53
      game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/service/impl/GameAppletServiceImpl.java
  19. 0 137
      game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/service/impl/GamePictureServiceImpl.java
  20. 2 0
      game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/service/impl/GameServiceImpl.java
  21. 2 2
      game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/service/impl/GameUserRoleServiceImpl.java
  22. 2 2
      game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/service/impl/GameUserServiceImpl.java
  23. 2 2
      game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/service/impl/OrderServiceImpl.java
  24. 2 2
      game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/service/impl/UserCardServiceImpl.java
  25. 6 9
      game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/service/impl/UserServiceImpl.java
  26. 2 31
      game-module/game-module-sdk/src/main/java/com/zanxiang/game/module/sdk/service/impl/GameExtServiceImpl.java

+ 48 - 0
game-back/game-back-base/src/main/java/com/zanxiang/game/back/base/pojo/vo/GameBackPolicyRpcVO.java

@@ -0,0 +1,48 @@
+package com.zanxiang.game.back.base.pojo.vo;
+
+import lombok.Data;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+
+@Data
+public class GameBackPolicyRpcVO implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+    private Long id;
+
+    /**
+     * 回传策略名
+     */
+    private String backPolicyName;
+
+    /**
+     * 首充金额(小于等于指定金额)
+     */
+    private Long firstRechargeMoney;
+
+    /**
+     * 首充回传比例(例如:50%-->0.5)
+     */
+    private BigDecimal firstRechargeBackPercentage;
+
+    /**
+     * 大单金额(大于等于指定金额)
+     */
+    private Long bigRechargeMoney;
+
+    /**
+     * 大单回传比例(例如:50%-->0.5)
+     */
+    private BigDecimal bigRechargeBackPercentage;
+
+    /**
+     * 其他回传比例(例如:50%-->0.5)
+     */
+    private BigDecimal otherRechargeBackPercentage;
+
+    /**
+     * 降档级别
+     */
+    private Integer levelDown;
+}

+ 12 - 0
game-back/game-back-base/src/main/java/com/zanxiang/game/back/base/rpc/IGameBackPolicyRpc.java

@@ -0,0 +1,12 @@
+package com.zanxiang.game.back.base.rpc;
+
+import com.zanxiang.game.back.base.pojo.vo.GameBackPolicyRpcVO;
+import com.zanxiang.module.util.pojo.ResultVO;
+
+import java.util.List;
+import java.util.Map;
+
+public interface IGameBackPolicyRpc {
+
+    ResultVO<Map<Long, GameBackPolicyRpcVO>> listByIds(List<Long> backPolicyIds);
+}

+ 21 - 78
game-back/game-back-serve/src/main/java/com/zanxiang/game/back/serve/controller/BackPolicyController.java

@@ -14,101 +14,44 @@ import org.springframework.web.bind.annotation.*;
 import java.util.List;
 
 @RestController
-@RequestMapping("/game/back")
+@RequestMapping("/policy")
 @Api("回传策略")
 public class BackPolicyController {
     @Autowired
     private IGameBackPolicyService gameBackPolicyService;
-    @Autowired
-    private IGameTencentUserService tencentUserService;
-    @Autowired
-    private IGameTencentOrderService tencentOrderService;
-    @Autowired
-    private IGameOceanengineOrderLogService oceanengineOrderLogService;
-    @Autowired
-    private IGameOceanengineUserLogService oceanengineUserLogService;
 
-//    @PreAuthorize(permissionKey = "gameBack:policy:create")
-    @PostMapping("/policy/create")
+    @ApiOperation(value = "创建回传策略")
+    @PreAuthorize(permissionKey = "gameBack:policy:allOfUser")
+    @GetMapping("/allOfUser")
+    public ResultVO<List<GameBackPolicyVO>> allOfUser() {
+        return ResultVO.ok(gameBackPolicyService.allOfUser());
+    }
+
+    @PreAuthorize(permissionKey = "gameBack:policy:list")
+    @PostMapping("/list")
+    @ApiOperation(value = "回传策略列表")
+    public ResultVO<IPage<GameBackPolicyVO>> policyList(@RequestBody GameBackPolicyListDTO dto) {
+        return ResultVO.ok(gameBackPolicyService.policyList(dto));
+    }
+
+    @PreAuthorize(permissionKey = "gameBack:policy:create")
+    @PostMapping("/create")
     @ApiOperation(value = "创建回传策略")
     public ResultVO<Boolean> createPolicy(@RequestBody GameBackPolicyDTO dto) {
         return ResultVO.ok(gameBackPolicyService.createPolicy(dto));
     }
 
-//    @PreAuthorize(permissionKey = "gameBack:policy:update")
-    @PostMapping("/policy/update")
+    @PreAuthorize(permissionKey = "gameBack:policy:update")
+    @PostMapping("/update")
     @ApiOperation(value = "修改回传策略")
     public ResultVO<Boolean> updatePolicy(@RequestBody GameBackPolicyDTO dto) {
         return ResultVO.ok(gameBackPolicyService.updatePolicy(dto));
     }
 
-//    @PreAuthorize(permissionKey = "gameBack:policy:delete")
-    @PostMapping("/policy/delete/{ids}")
+    @PreAuthorize(permissionKey = "gameBack:policy:delete")
+    @PostMapping("/delete/{ids}")
     @ApiOperation(value = "删除回传策略")
     public ResultVO<Boolean> deletePolicy(@PathVariable("ids") List<Long> ids) {
         return ResultVO.ok(gameBackPolicyService.deletePolicy(ids));
     }
-
-//    @PreAuthorize(permissionKey = "gameBack:policy:list")
-    @PostMapping("/policy/list")
-    @ApiOperation(value = "回传策略列表")
-    public ResultVO<IPage<GameBackPolicyVO>> policyList(@RequestBody GameBackPolicyListDTO dto) {
-        return ResultVO.ok(gameBackPolicyService.policyList(dto));
-    }
-
-//    @PreAuthorize(permissionKey = "gameBack:tencent:orderLogs")
-    @PostMapping("/tencent/orderLogs")
-    @ApiOperation(value = "腾讯订单回传日志列表")
-    public ResultVO<IPage<GameTencentOrderVO>> tencentOrderLogList(@RequestBody GameTencentOrderDTO dto) {
-        return ResultVO.ok(tencentOrderService.tencentOrderLogList(dto));
-    }
-
-//    @PreAuthorize(permissionKey = "gameBack:tencent:orderReport")
-    @PostMapping("/tencent/orderReport/{ids}")
-    @ApiOperation(value = "腾讯订单手动上报")
-    public ResultVO<Boolean> tencentOrderReport(@PathVariable("ids") List<Long> ids) {
-        return ResultVO.ok(tencentOrderService.tencentOrderReport(ids));
-    }
-
-//    @PreAuthorize(permissionKey = "gameBack:tencent:userLogs")
-    @PostMapping("/tencent/userLogs")
-    @ApiOperation(value = "腾讯用户回传日志列表")
-    public ResultVO<IPage<GameTencentUserVO>> tencentUserLogList(@RequestBody GameTencentUserDTO dto) {
-        return ResultVO.ok(tencentUserService.tencentUserLogList(dto));
-    }
-
-//    @PreAuthorize(permissionKey = "gameBack:tencent:userReport")
-    @PostMapping("/tencent/userReport/{ids}")
-    @ApiOperation(value = "腾讯用户手动上报")
-    public ResultVO<Boolean> tencentUserReport(@PathVariable("ids") List<Long> ids) {
-        return ResultVO.ok(tencentUserService.tencentUserReport(ids));
-    }
-
-//    @PreAuthorize(permissionKey = "gameBack:oceanengine:orderLogs")
-    @PostMapping("/oceanengine/orderLogs")
-    @ApiOperation(value = "头条订单回传日志列表")
-    public ResultVO<IPage<GameOceanengineOrderLogVO>> oceanengineOrderLogList(@RequestBody GameOceanengineOrderLogDTO dto) {
-        return ResultVO.ok(oceanengineOrderLogService.oceanengineOrderLogList(dto));
-    }
-
-//    @PreAuthorize(permissionKey = "gameBack:oceanengine:orderReport")
-    @PostMapping("/oceanengine/orderReport/{ids}")
-    @ApiOperation(value = "头条订单手动上报")
-    public ResultVO<Boolean> oceanengineOrderReport(@PathVariable("ids") List<Long> ids) {
-        return ResultVO.ok(oceanengineOrderLogService.oceanengineOrderReport(ids));
-    }
-
-//    @PreAuthorize(permissionKey = "gameBack:oceanengine:userLogs")
-    @PostMapping("/oceanengine/userLogs")
-    @ApiOperation(value = "头条用户回传日志列表")
-    public ResultVO<IPage<GameOceanengineUserLogVO>> oceanengineUserLogList(@RequestBody GameOceanengineUserLogDTO dto) {
-        return ResultVO.ok(oceanengineUserLogService.oceanengineUserLogList(dto));
-    }
-
-//    @PreAuthorize(permissionKey = "gameBack:oceanengine:userReport")
-    @PostMapping("/oceanengine/userReport/{ids}")
-    @ApiOperation(value = "头条用户手动上报")
-    public ResultVO<Boolean> oceanengineUserReport(@PathVariable("ids") List<Long> ids) {
-        return ResultVO.ok(oceanengineUserLogService.oceanengineUserReport(ids));
-    }
 }

+ 59 - 0
game-back/game-back-serve/src/main/java/com/zanxiang/game/back/serve/controller/OceanengineLogController.java

@@ -0,0 +1,59 @@
+package com.zanxiang.game.back.serve.controller;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.zanxiang.erp.security.annotation.PreAuthorize;
+import com.zanxiang.game.back.serve.pojo.dto.GameOceanengineOrderLogDTO;
+import com.zanxiang.game.back.serve.pojo.dto.GameOceanengineUserLogDTO;
+import com.zanxiang.game.back.serve.pojo.vo.GameOceanengineOrderLogVO;
+import com.zanxiang.game.back.serve.pojo.vo.GameOceanengineUserLogVO;
+import com.zanxiang.game.back.serve.service.IGameOceanengineOrderLogService;
+import com.zanxiang.game.back.serve.service.IGameOceanengineUserLogService;
+import com.zanxiang.module.util.pojo.ResultVO;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.List;
+
+@RestController
+@RequestMapping("/oceanengine")
+@Api("回传策略")
+public class OceanengineLogController {
+    @Autowired
+    private IGameOceanengineOrderLogService oceanengineOrderLogService;
+    @Autowired
+    private IGameOceanengineUserLogService oceanengineUserLogService;
+
+    @PreAuthorize(permissionKey = "gameBack:oceanengine:orderLogs")
+    @PostMapping("/orderLogs")
+    @ApiOperation(value = "头条订单回传日志列表")
+    public ResultVO<IPage<GameOceanengineOrderLogVO>> oceanengineOrderLogList(@RequestBody GameOceanengineOrderLogDTO dto) {
+        return ResultVO.ok(oceanengineOrderLogService.oceanengineOrderLogList(dto));
+    }
+
+    @PreAuthorize(permissionKey = "gameBack:oceanengine:orderReport")
+    @PostMapping("/orderReport/{ids}")
+    @ApiOperation(value = "头条订单手动上报")
+    public ResultVO<Boolean> oceanengineOrderReport(@PathVariable("ids") List<Long> ids) {
+        return ResultVO.ok(oceanengineOrderLogService.oceanengineOrderReport(ids));
+    }
+
+    @PreAuthorize(permissionKey = "gameBack:oceanengine:userLogs")
+    @PostMapping("/userLogs")
+    @ApiOperation(value = "头条用户回传日志列表")
+    public ResultVO<IPage<GameOceanengineUserLogVO>> oceanengineUserLogList(@RequestBody GameOceanengineUserLogDTO dto) {
+        return ResultVO.ok(oceanengineUserLogService.oceanengineUserLogList(dto));
+    }
+
+    @PreAuthorize(permissionKey = "gameBack:oceanengine:userReport")
+    @PostMapping("/userReport/{ids}")
+    @ApiOperation(value = "头条用户手动上报")
+    public ResultVO<Boolean> oceanengineUserReport(@PathVariable("ids") List<Long> ids) {
+        return ResultVO.ok(oceanengineUserLogService.oceanengineUserReport(ids));
+    }
+}

+ 59 - 0
game-back/game-back-serve/src/main/java/com/zanxiang/game/back/serve/controller/TencentLogController.java

@@ -0,0 +1,59 @@
+package com.zanxiang.game.back.serve.controller;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.zanxiang.erp.security.annotation.PreAuthorize;
+import com.zanxiang.game.back.serve.pojo.dto.GameTencentOrderDTO;
+import com.zanxiang.game.back.serve.pojo.dto.GameTencentUserDTO;
+import com.zanxiang.game.back.serve.pojo.vo.GameTencentOrderVO;
+import com.zanxiang.game.back.serve.pojo.vo.GameTencentUserVO;
+import com.zanxiang.game.back.serve.service.IGameTencentOrderService;
+import com.zanxiang.game.back.serve.service.IGameTencentUserService;
+import com.zanxiang.module.util.pojo.ResultVO;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.List;
+
+@RestController
+@RequestMapping("/tencent")
+@Api("回传策略")
+public class TencentLogController {
+    @Autowired
+    private IGameTencentUserService tencentUserService;
+    @Autowired
+    private IGameTencentOrderService tencentOrderService;
+
+    @PreAuthorize(permissionKey = "gameBack:tencent:orderLogs")
+    @PostMapping("/orderLogs")
+    @ApiOperation(value = "腾讯订单回传日志列表")
+    public ResultVO<IPage<GameTencentOrderVO>> tencentOrderLogList(@RequestBody GameTencentOrderDTO dto) {
+        return ResultVO.ok(tencentOrderService.tencentOrderLogList(dto));
+    }
+
+    @PreAuthorize(permissionKey = "gameBack:tencent:orderReport")
+    @PostMapping("/orderReport/{ids}")
+    @ApiOperation(value = "腾讯订单手动上报")
+    public ResultVO<Boolean> tencentOrderReport(@PathVariable("ids") List<Long> ids) {
+        return ResultVO.ok(tencentOrderService.tencentOrderReport(ids));
+    }
+
+    @PreAuthorize(permissionKey = "gameBack:tencent:userLogs")
+    @PostMapping("/userLogs")
+    @ApiOperation(value = "腾讯用户回传日志列表")
+    public ResultVO<IPage<GameTencentUserVO>> tencentUserLogList(@RequestBody GameTencentUserDTO dto) {
+        return ResultVO.ok(tencentUserService.tencentUserLogList(dto));
+    }
+
+    @PreAuthorize(permissionKey = "gameBack:tencent:userReport")
+    @PostMapping("/userReport/{ids}")
+    @ApiOperation(value = "腾讯用户手动上报")
+    public ResultVO<Boolean> tencentUserReport(@PathVariable("ids") List<Long> ids) {
+        return ResultVO.ok(tencentUserService.tencentUserReport(ids));
+    }
+}

+ 0 - 2
game-back/game-back-serve/src/main/java/com/zanxiang/game/back/serve/pojo/vo/GameBackPolicyVO.java

@@ -77,7 +77,5 @@ public class GameBackPolicyVO implements Serializable {
 
     private Long updateBy;
 
-    private String updateName;
-
 
 }

+ 43 - 0
game-back/game-back-serve/src/main/java/com/zanxiang/game/back/serve/rpc/impl/GameBackPolicyRpcImpl.java

@@ -0,0 +1,43 @@
+package com.zanxiang.game.back.serve.rpc.impl;
+
+import com.zanxiang.game.back.base.pojo.vo.GameBackPolicyRpcVO;
+import com.zanxiang.game.back.base.rpc.IGameBackPolicyRpc;
+import com.zanxiang.game.back.serve.pojo.entity.GameBackPolicy;
+import com.zanxiang.game.back.serve.service.IGameBackPolicyService;
+import com.zanxiang.module.util.bean.BeanUtil;
+import com.zanxiang.module.util.pojo.ResultVO;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.collections4.CollectionUtils;
+import org.apache.dubbo.config.annotation.DubboService;
+import org.springframework.beans.factory.annotation.Autowired;
+
+import java.util.Collections;
+import java.util.List;
+import java.util.Map;
+import java.util.function.Function;
+import java.util.stream.Collectors;
+
+@Slf4j
+@DubboService
+public class GameBackPolicyRpcImpl implements IGameBackPolicyRpc {
+    @Autowired
+    private IGameBackPolicyService gameBackPolicyService;
+
+    @Override
+    public ResultVO<Map<Long, GameBackPolicyRpcVO>> listByIds(List<Long> backPolicyIds) {
+        if (CollectionUtils.isEmpty(backPolicyIds)) {
+            return ResultVO.ok(Collections.emptyMap());
+        } else {
+            List<GameBackPolicyRpcVO> policyList = gameBackPolicyService.listByIds(backPolicyIds)
+                    .stream().map(this::toVOSimple).collect(Collectors.toList());
+            return ResultVO.ok(policyList.stream().collect(Collectors.toMap(GameBackPolicyRpcVO::getId, Function.identity())));
+        }
+    }
+
+    private GameBackPolicyRpcVO toVOSimple(GameBackPolicy gameBackPolicy) {
+        if (gameBackPolicy == null) {
+            return null;
+        }
+        return BeanUtil.copy(gameBackPolicy, GameBackPolicyRpcVO.class);
+    }
+}

+ 2 - 0
game-back/game-back-serve/src/main/java/com/zanxiang/game/back/serve/service/IGameBackPolicyService.java

@@ -33,4 +33,6 @@ public interface IGameBackPolicyService extends IService<GameBackPolicy> {
     boolean deletePolicy(List<Long> id);
 
     IPage<GameBackPolicyVO> policyList(GameBackPolicyListDTO dto);
+
+    List<GameBackPolicyVO> allOfUser();
 }

+ 32 - 21
game-back/game-back-serve/src/main/java/com/zanxiang/game/back/serve/service/impl/GameBackPolicyServiceImpl.java

@@ -24,6 +24,7 @@ import com.zanxiang.game.back.serve.service.IGameTencentBackLogService;
 import com.zanxiang.game.back.serve.service.IGameTencentOrderService;
 import com.zanxiang.game.back.serve.service.IGameTencentUserService;
 import com.zanxiang.game.back.serve.utils.BackPolicyUtil;
+import com.zanxiang.module.util.bean.BeanUtil;
 import com.zanxiang.module.util.exception.BaseException;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.StringUtils;
@@ -34,6 +35,7 @@ import org.springframework.transaction.annotation.Transactional;
 
 import java.time.LocalDateTime;
 import java.util.List;
+import java.util.stream.Collectors;
 
 /**
  * <p>
@@ -113,9 +115,9 @@ public class GameBackPolicyServiceImpl extends ServiceImpl<GameBackPolicyMapper,
                 .build();
 
         boolean doBack;
-        if (null == dto.getBackPolicyId()){
+        if (null == dto.getBackPolicyId()) {
             doBack = true;
-        }else {
+        } else {
             GameBackPolicy gameBackPolicy = gameBackPolicyService.getById(dto.getBackPolicyId());
 
             doBack = BackPolicyUtil.backOrder(gameBackPolicy, dto.getRechargeMoney(), backUnit -> Long.valueOf(
@@ -159,9 +161,9 @@ public class GameBackPolicyServiceImpl extends ServiceImpl<GameBackPolicyMapper,
                 .eq(GameTencentUser::getGameId, dto.getGameId())
                 .eq(GameTencentUser::getWechatAppId, dto.getWechatAppId())
                 .eq(GameTencentUser::getAdAccountId, dto.getAdAccountId())
-                .eq(GameTencentUser::getIsBack,BackStatusEnum.SUCCESS.getBackStatus())
+                .eq(GameTencentUser::getIsBack, BackStatusEnum.SUCCESS.getBackStatus())
         );
-        if (null == gameTencentUser){
+        if (null == gameTencentUser) {
             //用户保存
             gameTencentUser = GameTencentUser.builder()
                     .adAccountId(dto.getAdAccountId())
@@ -274,23 +276,32 @@ public class GameBackPolicyServiceImpl extends ServiceImpl<GameBackPolicyMapper,
     public IPage<GameBackPolicyVO> policyList(GameBackPolicyListDTO dto) {
         return gameBackPolicyService.page(dto.toPage(), new LambdaQueryWrapper<GameBackPolicy>()
                         .like(StringUtils.isNotBlank(dto.getBackPolicyName()), GameBackPolicy::getBackPolicyName, dto.getBackPolicyName())
-                        .eq(GameBackPolicy::getCreateBy,SecurityUtil.getUserId())
+                        .eq(GameBackPolicy::getCreateBy, SecurityUtil.getUserId())
                         .orderByDesc(GameBackPolicy::getCreateTime))
-                .convert(item -> GameBackPolicyVO.builder()
-                        .id(item.getId())
-                        .backPolicyName(item.getBackPolicyName())
-                        .bigRechargeBackPercentage(item.getBigRechargeBackPercentage())
-                        .bigRechargeMoney(item.getBigRechargeMoney())
-                        .firstRechargeBackPercentage(item.getFirstRechargeBackPercentage())
-                        .firstRechargeMoney(item.getFirstRechargeMoney())
-                        .otherRechargeBackPercentage(item.getOtherRechargeBackPercentage())
-                        .levelDown(item.getLevelDown())
-                        .createTime(item.getCreateTime())
-                        .updateTime(item.getUpdateTime())
-                        .createBy(item.getCreateBy())
-                        .updateBy(item.getUpdateBy())
-                        .createName(sysUserRpc.getById(item.getCreateBy()).getData().getNickname())
-                        .updateName(null == item.getUpdateBy() ? null : sysUserRpc.getById(item.getUpdateBy()).getData().getNickName())
-                        .build());
+                .convert(this::toVO);
+    }
+
+    @Override
+    public List<GameBackPolicyVO> allOfUser() {
+        return list(new LambdaQueryWrapper<GameBackPolicy>()
+                .eq(GameBackPolicy::getCreateBy, SecurityUtil.getUserId())
+                .orderByDesc(GameBackPolicy::getCreateTime)
+        ).stream().map(this::toVOSimple).collect(Collectors.toList());
+    }
+
+    private GameBackPolicyVO toVOSimple(GameBackPolicy gameBackPolicy) {
+        if (gameBackPolicy == null) {
+            return null;
+        }
+        return BeanUtil.copy(gameBackPolicy, GameBackPolicyVO.class);
+    }
+
+    private GameBackPolicyVO toVO(GameBackPolicy gameBackPolicy) {
+        if (gameBackPolicy == null) {
+            return null;
+        }
+        GameBackPolicyVO vo = toVOSimple(gameBackPolicy);
+        vo.setCreateName(sysUserRpc.getById(gameBackPolicy.getCreateBy()).getData().getNickname());
+        return vo;
     }
 }

+ 1 - 1
game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/controller/AgentController.java

@@ -34,7 +34,7 @@ public class AgentController {
 
     @PreAuthorize(permissionKey = "sdk:agent:add")
     @PostMapping
-    public ResultVO<Boolean> add(AgentAddParam dto) {
+    public ResultVO<Boolean> add(@Validated @RequestBody AgentAddParam dto) {
         dto.setAgentName(dto.getAgentName().trim());
         AccountTypeEnum accountType = AccountTypeEnum.getByValue(dto.getAccountType());
         if (accountType == null) {

+ 0 - 54
game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/controller/GameAppletController.java

@@ -1,54 +0,0 @@
-package com.zanxiang.game.module.manage.controller;
-
-import com.zanxiang.erp.security.annotation.PreAuthorize;
-import com.zanxiang.game.module.manage.pojo.params.GameAccountUpdateParam;
-import com.zanxiang.game.module.manage.pojo.vo.GameAccountVO;
-import com.zanxiang.game.module.manage.service.IGameAppletService;
-import com.zanxiang.module.util.pojo.ResultVO;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import io.swagger.annotations.ApiResponse;
-import io.swagger.annotations.ApiResponses;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.validation.annotation.Validated;
-import org.springframework.web.bind.annotation.*;
-
-/**
- * @author : lingfeng
- * @time : 2022-07-08
- * @description : 微信小游戏(小程序)
- */
-@Api(tags = {"微信小游戏(小程序)"})
-@RestController
-@RequestMapping("/game/applet")
-@Slf4j
-public class GameAppletController {
-
-    @Autowired
-    private IGameAppletService gameAppletService;
-
-    @ApiOperation(value = "获取账号信息配置")
-    @GetMapping(value = "/info")
-    @PreAuthorize(permissionKey = "sdk:gameApplet:info")
-    @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = GameAccountVO.class)})
-    public ResultVO<GameAccountVO> getGameAccount(@RequestParam Long id) {
-        return ResultVO.ok(gameAppletService.getGameAccount(id));
-    }
-
-    @ApiOperation(value = "账号信息配置添加或者更新")
-    @PostMapping(value = "/add/or/update")
-    @PreAuthorize(permissionKey = "sdk:gameApplet:addOrUpdate")
-    @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = Boolean.class)})
-    public ResultVO<Boolean> gameAccountAddOrUpdate(@Validated @RequestBody GameAccountUpdateParam param) {
-        return ResultVO.ok(gameAppletService.gameAccountAddOrUpdate(param));
-    }
-
-    @ApiOperation(value = "获取小游戏二维码")
-    @GetMapping(value = "/qr/code")
-    @PreAuthorize(permissionKey = "sdk:gameApplet:qrCode")
-    @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = String.class)})
-    public ResultVO<String> getQrCodByGameId(@RequestParam Long gameId) {
-        return ResultVO.ok(gameAppletService.getQrCodByGameId(gameId));
-    }
-}

+ 0 - 47
game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/controller/GamePictureController.java

@@ -1,47 +0,0 @@
-package com.zanxiang.game.module.manage.controller;
-
-import com.zanxiang.erp.security.annotation.PreAuthorize;
-import com.zanxiang.game.module.manage.pojo.params.GamePictureParam;
-import com.zanxiang.game.module.manage.pojo.vo.GamePictureVO;
-import com.zanxiang.game.module.manage.service.IGamePictureService;
-import com.zanxiang.module.util.pojo.ResultVO;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import io.swagger.annotations.ApiResponse;
-import io.swagger.annotations.ApiResponses;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.validation.annotation.Validated;
-import org.springframework.web.bind.annotation.*;
-
-/**
- * @author : lingfeng
- * @time : 2022-07-12
- * @description : 游戏图片
- */
-@Api(tags = {"游戏图片管理接口"})
-@RestController
-@RequestMapping("/game/picture")
-@Slf4j
-public class GamePictureController {
-
-    @Autowired
-    private IGamePictureService gamePictureService;
-
-    @ApiOperation(value = "获取游戏图片配置")
-    @GetMapping(value = "/info")
-    @PreAuthorize(permissionKey = "sdk:gamePicture:info")
-    @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = GamePictureVO.class)})
-    public ResultVO<GamePictureVO> getByGameId(@RequestParam Long id) {
-        return ResultVO.ok(gamePictureService.getByGameId(id));
-    }
-
-    @ApiOperation(value = "游戏图片配置添加或者更新")
-    @PostMapping(value = "/add/or/update")
-    @PreAuthorize(permissionKey = "sdk:gamePicture:addOrUpdate")
-    @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = Boolean.class)})
-    public ResultVO<Boolean> addOrUpdate(@Validated @RequestBody GamePictureParam param) {
-        return ResultVO.ok(gamePictureService.addOrUpdate(param));
-    }
-
-}

+ 25 - 0
game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/pojo/vo/AgentVO.java

@@ -1,6 +1,7 @@
 package com.zanxiang.game.module.manage.pojo.vo;
 
 import com.zanxiang.advertising.tencent.base.pojo.vo.UserActionSetRpcVO;
+import com.zanxiang.game.back.base.pojo.vo.GameBackPolicyRpcVO;
 import lombok.Data;
 
 import java.time.LocalDateTime;
@@ -37,6 +38,26 @@ public class AgentVO {
      */
     private Long userActionSetId;
 
+    /**
+     * 回传策略 id
+     */
+    private Long backPolicyId;
+
+    /**
+     * 头条回传 token
+     */
+    private String reportToken;
+
+    /**
+     * 头条回传 url
+     */
+    private String reportUrl;
+
+    /**
+     * 投放状态
+     */
+    private Integer putStatus;
+
     /**
      * 创建时间
      */
@@ -61,4 +82,8 @@ public class AgentVO {
      * 数据源信息
      */
     private UserActionSetRpcVO userActionSet;
+    /**
+     * 回传策略信息
+     */
+    private GameBackPolicyRpcVO backPolicyInfo;
 }

+ 93 - 0
game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/pojo/vo/MiPaySumListVO.java

@@ -0,0 +1,93 @@
+package com.zanxiang.game.module.manage.pojo.vo;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+
+/**
+ * @author : lingfeng
+ * @time : 2023-06-26
+ * @description : 米大师统计
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+@Builder
+public class MiPaySumListVO {
+
+    /**
+     * 主键id
+     */
+    @ApiModelProperty(notes = "主键id")
+    private Long id;
+
+    /**
+     * 游戏id
+     */
+    private Long gameId;
+
+    /**
+     * 游戏名称
+     */
+    private String gameName;
+
+    /**
+     * 小游戏应用id
+     */
+    private String appId;
+
+    /**
+     * 米大师应用id
+     */
+    private String miPayAppId;
+
+    /**
+     * 最大支付额度锁 0 正常 1 锁定
+     */
+    private Integer maxPayLock;
+
+    /**
+     * 最大支付额度
+     */
+    private BigDecimal maxPayAmount;
+
+    /**
+     * 总支付金额
+     */
+    private BigDecimal totalPayAmount;
+
+    /**
+     * 月已用支付额度
+     */
+    private BigDecimal mouthPayAmount;
+
+    /**
+     * 周已用额度
+     */
+    private BigDecimal weakerPayAmount;
+
+    /**
+     * 日已用额度
+     */
+    private BigDecimal dayPayAmount;
+
+    /**
+     * 状态 1 不可用 0 正常
+     */
+    private Integer status;
+
+    /**
+     * 创建时间
+     */
+    private LocalDateTime createTime;
+
+    /**
+     * 更新时间
+     */
+    private LocalDateTime updateTime;
+}

+ 0 - 24
game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/service/IGameAppletService.java

@@ -21,30 +21,6 @@ public interface IGameAppletService extends IService<GameApplet> {
      */
     GameAppletDTO getByGameId(Long gameId);
 
-    /**
-     * 获取账号信息配置
-     *
-     * @param id : 游戏id
-     * @return {@link GameAccountVO}
-     */
-    GameAccountVO getGameAccount(Long id);
-
-    /**
-     * 获取账号信息配置
-     *
-     * @param param : 更新参数
-     * @return {@link Boolean}
-     */
-    Boolean gameAccountAddOrUpdate(GameAccountUpdateParam param);
-
-    /**
-     * 获取游戏小程序二维码
-     *
-     * @param gameId : 游戏id
-     * @return {@link String}
-     */
-    String getQrCodByGameId(Long gameId);
-
     /**
      * 获取小游戏二维码
      *

+ 0 - 30
game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/service/IGamePictureService.java

@@ -1,30 +0,0 @@
-package com.zanxiang.game.module.manage.service;
-
-import com.baomidou.mybatisplus.extension.service.IService;
-import com.zanxiang.game.module.manage.pojo.params.GamePictureParam;
-import com.zanxiang.game.module.manage.pojo.vo.GamePictureVO;
-import com.zanxiang.game.module.mybatis.entity.GamePicture;
-
-/**
- * @author : lingfeng
- * @time : 2022-07-12
- * @description : 游戏图片
- */
-public interface IGamePictureService extends IService<GamePicture> {
-
-    /**
-     * 根据游戏id查询
-     *
-     * @param gameId : 游戏id
-     * @return 返回游戏图片信息
-     */
-    GamePictureVO getByGameId(Long gameId);
-
-    /**
-     * 游戏图片添加或更新
-     *
-     * @param param : 游戏图片参数
-     * @return {@link Boolean}
-     */
-    Boolean addOrUpdate(GamePictureParam param);
-}

+ 21 - 4
game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/service/impl/AgentServiceImpl.java

@@ -12,6 +12,9 @@ import com.zanxiang.advertising.tencent.base.rpc.IUserActionSetRpc;
 import com.zanxiang.erp.base.ErpServer;
 import com.zanxiang.erp.base.rpc.ISysUserRpc;
 import com.zanxiang.erp.security.util.SecurityUtil;
+import com.zanxiang.game.back.base.ServerInfo;
+import com.zanxiang.game.back.base.pojo.vo.GameBackPolicyRpcVO;
+import com.zanxiang.game.back.base.rpc.IGameBackPolicyRpc;
 import com.zanxiang.game.module.manage.pojo.dto.AgentDTO;
 import com.zanxiang.game.module.manage.pojo.enums.AccountTypeEnum;
 import com.zanxiang.game.module.manage.pojo.params.AgentAddParam;
@@ -59,6 +62,9 @@ public class AgentServiceImpl extends ServiceImpl<AgentMapper, Agent> implements
     @DubboReference(providedBy = ErpServer.SERVER_DUBBO_NAME)
     private ISysUserRpc sysUserRpc;
 
+    @DubboReference(providedBy = ServerInfo.SERVER_DUBBO_NAME)
+    private IGameBackPolicyRpc gameBackPolicyRpc;
+
     @Override
     public IPage<AgentVO> listOfPage(AgentListParam param) {
         IPage<Agent> agentIPage = page(param.toPage(), new LambdaQueryWrapper<Agent>()
@@ -110,7 +116,7 @@ public class AgentServiceImpl extends ServiceImpl<AgentMapper, Agent> implements
         return update(new LambdaUpdateWrapper<Agent>()
                 .set(Agent::getPutStatus, putStatus)
                 .set(Agent::getUpdateBy, SecurityUtil.getUserId())
-                .set(Agent::getUpdateTime, agentIdList)
+                .set(Agent::getUpdateTime, LocalDateTime.now())
                 .in(Agent::getId, agentIdList)
         );
     }
@@ -121,7 +127,7 @@ public class AgentServiceImpl extends ServiceImpl<AgentMapper, Agent> implements
         return update(new LambdaUpdateWrapper<Agent>()
                 .set(Agent::getBackPolicyId, backPolicyId)
                 .set(Agent::getUpdateBy, SecurityUtil.getUserId())
-                .set(Agent::getUpdateTime, agentIdList)
+                .set(Agent::getUpdateTime, LocalDateTime.now())
                 .in(Agent::getId, agentIdList)
         );
     }
@@ -133,12 +139,16 @@ public class AgentServiceImpl extends ServiceImpl<AgentMapper, Agent> implements
         Set<Long> gameIds = new HashSet<>(agentList.size());
         Set<Long> txAccountIds = new HashSet<>(agentList.size());
         Set<Long> userIds = new HashSet<>(1);
+        Set<Long> backPolicyIds = new HashSet<>();
         agentList.forEach(agent -> {
             gameIds.add(agent.getGameId());
             if (AccountTypeEnum.TENCENT.getValue().equals(agent.getAccountType())) {
                 txAccountIds.add(agent.getAccountId());
             }
             userIds.add(agent.getCreateBy());
+            if (agent.getBackPolicyId() != null) {
+                backPolicyIds.add(agent.getBackPolicyId());
+            }
         });
         Map<String, UserActionSetRpcVO> userActionSetMap = new HashMap<>();
         if (CollectionUtils.isNotEmpty(txAccountIds)) {
@@ -150,6 +160,10 @@ public class AgentServiceImpl extends ServiceImpl<AgentMapper, Agent> implements
                 userActionSetMap.putAll(userActionSetList.stream().collect(Collectors.toMap(obj -> obj.getAccountId() + "_" + obj.getUserActionSetId(), Function.identity())));
             }
         }
+        Map<Long, GameBackPolicyRpcVO> backPolicyMap = new HashMap<>(0);
+        if (CollectionUtils.isNotEmpty(backPolicyIds)) {
+            backPolicyMap.putAll(gameBackPolicyRpc.listByIds(new ArrayList<>(backPolicyIds)).getData());
+        }
         Map<Long, GameInfoVO> gameMap = gameService.infoByIds(gameIds).stream().collect(Collectors.toMap(GameInfoVO::getId, Function.identity()));
         Map<Long, String> userMap = sysUserRpc.getUserNameByIds(new ArrayList<>(userIds)).getData();
         return agentList.stream().map(agent -> {
@@ -159,6 +173,9 @@ public class AgentServiceImpl extends ServiceImpl<AgentMapper, Agent> implements
                 vo.setUserActionSet(userActionSetMap.get(agent.getAccountId() + "_" + agent.getUserActionSetId()));
             }
             vo.setCreateByName(userMap.get(agent.getCreateBy()));
+            if (agent.getBackPolicyId() != null) {
+                vo.setBackPolicyInfo(backPolicyMap.get(agent.getBackPolicyId()));
+            }
             return vo;
         }).collect(Collectors.toList());
     }
@@ -167,7 +184,7 @@ public class AgentServiceImpl extends ServiceImpl<AgentMapper, Agent> implements
     public List<AgentDTO> listUserAgent(String account, String pitcherId, Long agentId) {
         List<Agent> agentList;
         //超管权限
-        if (SecurityUtil.isAdmin()) {
+        if (SecurityUtil.isManager()) {
             agentList = super.list(new LambdaQueryWrapper<Agent>()
                     .eq(Strings.isNotBlank(account), Agent::getAccountId, account)
                     .eq(Strings.isNotBlank(pitcherId), Agent::getCreateBy, pitcherId)
@@ -194,7 +211,7 @@ public class AgentServiceImpl extends ServiceImpl<AgentMapper, Agent> implements
     @Override
     public List<AgentAccountChoiceVO> agentAccountChoiceList() {
         return super.list(new LambdaQueryWrapper<Agent>()
-                .eq(!SecurityUtil.isAdmin(), Agent::getCreateBy, SecurityUtil.getUserId())
+                .eq(!SecurityUtil.isManager(), Agent::getCreateBy, SecurityUtil.getUserId())
         ).stream().map(agent -> BeanUtil.copy(agent, AgentAccountChoiceVO.class)).collect(Collectors.toList());
     }
 }

+ 0 - 53
game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/service/impl/GameAppletServiceImpl.java

@@ -5,11 +5,7 @@ import cn.hutool.json.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.zanxiang.game.module.manage.pojo.dto.GameAppletDTO;
-import com.zanxiang.game.module.manage.pojo.dto.GameDTO;
-import com.zanxiang.game.module.manage.pojo.params.GameAccountUpdateParam;
-import com.zanxiang.game.module.manage.pojo.vo.GameAccountVO;
 import com.zanxiang.game.module.manage.service.IGameAppletService;
-import com.zanxiang.game.module.manage.service.IGameService;
 import com.zanxiang.game.module.mybatis.entity.GameApplet;
 import com.zanxiang.game.module.mybatis.mapper.GameAppletMapper;
 import com.zanxiang.module.oss.service.IOssService;
@@ -26,7 +22,6 @@ import java.io.BufferedInputStream;
 import java.io.PrintWriter;
 import java.net.HttpURLConnection;
 import java.net.URL;
-import java.time.LocalDateTime;
 import java.util.HashMap;
 import java.util.Map;
 import java.util.UUID;
@@ -40,9 +35,6 @@ import java.util.UUID;
 @Service
 public class GameAppletServiceImpl extends ServiceImpl<GameAppletMapper, GameApplet> implements IGameAppletService {
 
-    @Autowired
-    private IGameService gameService;
-
     @Autowired
     private IOssService ossService;
 
@@ -56,51 +48,6 @@ public class GameAppletServiceImpl extends ServiceImpl<GameAppletMapper, GameApp
         return BeanUtil.copy(gameApplet, GameAppletDTO.class);
     }
 
-    @Override
-    public GameAccountVO getGameAccount(Long id) {
-        GameApplet gameApplet = super.getOne(new LambdaQueryWrapper<GameApplet>()
-                .eq(GameApplet::getGameId, id));
-        if (gameApplet == null) {
-            GameAccountVO vo = new GameAccountVO();
-            vo.setGameId(id);
-            return vo;
-        }
-        return BeanUtil.copy(gameApplet, GameAccountVO.class);
-    }
-
-    @Override
-    public Boolean gameAccountAddOrUpdate(GameAccountUpdateParam param) {
-        GameApplet gameApplet;
-        if (param.getId() == null) {
-            gameApplet = new GameApplet();
-            gameApplet.setCreateTime(LocalDateTime.now());
-            gameApplet.setGameId(param.getGameId());
-        } else {
-            gameApplet = super.getById(param.getId());
-        }
-        gameApplet.setAppId(param.getAppId());
-        gameApplet.setGhId(param.getGhId());
-        gameApplet.setAccount(param.getAccount());
-        gameApplet.setPassword(param.getPassword());
-        gameApplet.setCompany(param.getCompany());
-        gameApplet.setAppSecret(param.getAppSecret());
-        gameApplet.setUpdateTime(LocalDateTime.now());
-        return super.saveOrUpdate(gameApplet);
-    }
-
-    @Override
-    public String getQrCodByGameId(Long gameId) {
-        GameDTO gameDTO = gameService.getById(gameId);
-        if (gameDTO == null) {
-            throw new BaseException("游戏不存在");
-        }
-        GameApplet gameApplet = super.getOne(new LambdaQueryWrapper<GameApplet>().eq(GameApplet::getGameId, gameId));
-        if (gameApplet == null || Strings.isBlank(gameApplet.getAppId()) || Strings.isBlank(gameApplet.getAppSecret())) {
-            throw new BaseException("该游戏未设置小程序信息");
-        }
-        return this.getQrCode(gameApplet.getAppId(), gameApplet.getAppSecret(), gameDTO.getName());
-    }
-
     /**
      * 获取游戏小程序二维码
      *

+ 0 - 137
game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/service/impl/GamePictureServiceImpl.java

@@ -1,137 +0,0 @@
-package com.zanxiang.game.module.manage.service.impl;
-
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.zanxiang.game.module.base.pojo.enums.GameCategoryEnum;
-import com.zanxiang.game.module.manage.pojo.dto.GameCategoryDTO;
-import com.zanxiang.game.module.manage.pojo.dto.GameDTO;
-import com.zanxiang.game.module.manage.pojo.params.GamePictureParam;
-import com.zanxiang.game.module.manage.pojo.vo.GamePictureVO;
-import com.zanxiang.game.module.manage.service.IGameCategoryService;
-import com.zanxiang.game.module.manage.service.IGamePictureService;
-import com.zanxiang.game.module.manage.service.IGameService;
-import com.zanxiang.game.module.mybatis.entity.Game;
-import com.zanxiang.game.module.mybatis.entity.GamePicture;
-import com.zanxiang.game.module.mybatis.mapper.GamePictureMapper;
-import com.zanxiang.module.util.bean.BeanUtil;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
-
-import java.time.LocalDateTime;
-import java.util.Objects;
-
-/**
- * @author : lingfeng
- * @time : 2022-07-12
- * @description : 游戏图片
- */
-@Slf4j
-@Service
-public class GamePictureServiceImpl extends ServiceImpl<GamePictureMapper, GamePicture> implements IGamePictureService {
-
-    @Autowired
-    private IGameService gameService;
-
-    @Autowired
-    private IGameCategoryService gameCategoryService;
-
-    @Override
-    public GamePictureVO getByGameId(Long gameId) {
-        GamePicture gamePicture = super.getOne(new LambdaQueryWrapper<GamePicture>().eq(GamePicture::getGameId, gameId));
-        if (gamePicture == null) {
-            gamePicture = GamePicture.builder().gameId(gameId).build();
-        }
-        GamePictureVO gamePictureVO = BeanUtil.copy(gamePicture, GamePictureVO.class);
-        GameDTO gameDTO = gameService.getById(gameId);
-        gamePictureVO.setNeedAuth(gameDTO.getNeedAuth());
-        gamePictureVO.setDownloadCount(gameDTO.getDownloadCount());
-        return gamePictureVO;
-    }
-
-    @Override
-    public Boolean addOrUpdate(GamePictureParam param) {
-        GameDTO gameDTO = gameService.getById(param.getGameId());
-        GameCategoryDTO gameCategoryDTO = gameCategoryService.getById(gameDTO.getCategory());
-        //微信小游戏更新
-        if (Objects.equals(gameCategoryDTO.getKey(), GameCategoryEnum.CATEGORY_WX_APPLET.getKey())) {
-            return this.appletGameAddOrUpdate(param);
-        }
-        //h5游戏更新
-        if (Objects.equals(gameCategoryDTO.getKey(), GameCategoryEnum.CATEGORY_DY_APPLET.getKey())) {
-            return this.h5GameAddOrUpdate(param);
-        }
-        return Boolean.FALSE;
-    }
-
-    @Transactional(rollbackFor = {RuntimeException.class, Exception.class})
-    public Boolean h5GameAddOrUpdate(GamePictureParam param) {
-        Long gameId = param.getGameId();
-        GamePicture gamePicture = super.getOne(new LambdaQueryWrapper<GamePicture>().eq(GamePicture::getGameId, gameId));
-        if (gamePicture == null) {
-            gamePicture = GamePicture.builder()
-                    .gameId(gameId)
-                    .avatarImg(param.getAvatarImg())
-//                    .gamePictureImg(param.getGamePictureImg())
-//                    .loginBackGroundImg(param.getLoginBackGroundImg())
-                    .createTime(LocalDateTime.now())
-                    .updateTime(LocalDateTime.now())
-                    .build();
-        } else {
-            gamePicture.setAvatarImg(param.getAvatarImg());
-//            gamePicture.setGamePictureImg(param.getGamePictureImg());
-//            gamePicture.setLoginBackGroundImg(param.getLoginBackGroundImg());
-            gamePicture.setUpdateTime(LocalDateTime.now());
-        }
-        //游戏图片信息更新
-        super.saveOrUpdate(gamePicture);
-        //游戏信息更新
-        if (param.getNeedAuth() != null || param.getDownloadCount() != null) {
-            gameService.update(new LambdaUpdateWrapper<Game>()
-                    .set(Game::getUpdateTime, LocalDateTime.now())
-                    .eq(Game::getId, gameId));
-        }
-        return Boolean.TRUE;
-    }
-
-    private Boolean appletGameAddOrUpdate(GamePictureParam param) {
-        Long gameId = param.getGameId();
-        GamePicture gamePicture = super.getOne(new LambdaQueryWrapper<GamePicture>().eq(GamePicture::getGameId, gameId));
-        if (gamePicture == null) {
-            gamePicture = GamePicture.builder()
-                    .gameId(gameId)
-                    .avatarImg(param.getAvatarImg())
-                    .appletImg(param.getAppletImg())
-//                    .cardTitle(param.getCardTitle())
-//                    .cardUrl(param.getCardUrl())
-//                    .cardImg(param.getCardImg())
-//                    .isOpenInlet(param.getIsOpenInlet())
-//                    .inletImg(param.getInletImg())
-//                    .findImg(param.getFindImg())
-//                    .recommendImg(param.getRecommendImg())
-//                    .tryPayImg(param.getTryPayImg())
-//                    .shareImgName(param.getShareImgName())
-//                    .shareImg(param.getShareImg())
-                    .createTime(LocalDateTime.now())
-                    .updateTime(LocalDateTime.now())
-                    .build();
-        } else {
-            gamePicture.setAvatarImg(param.getAvatarImg());
-            gamePicture.setAppletImg(param.getAppletImg());
-//            gamePicture.setCardTitle(param.getCardTitle());
-//            gamePicture.setCardUrl(param.getCardUrl());
-//            gamePicture.setCardImg(param.getCardImg());
-//            gamePicture.setIsOpenInlet(param.getIsOpenInlet());
-//            gamePicture.setInletImg(param.getInletImg());
-//            gamePicture.setFindImg(param.getFindImg());
-//            gamePicture.setRecommendImg(param.getRecommendImg());
-//            gamePicture.setTryPayImg(param.getTryPayImg());
-//            gamePicture.setShareImgName(param.getShareImgName());
-            gamePicture.setShareImg(param.getShareImg());
-            gamePicture.setUpdateTime(LocalDateTime.now());
-        }
-        return super.saveOrUpdate(gamePicture);
-    }
-}

+ 2 - 0
game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/service/impl/GameServiceImpl.java

@@ -27,6 +27,7 @@ import org.apache.commons.lang3.StringUtils;
 import org.apache.logging.log4j.util.Strings;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.CollectionUtils;
 
 import java.time.LocalDateTime;
@@ -53,6 +54,7 @@ public class GameServiceImpl extends ServiceImpl<GameMapper, Game> implements IG
     private ICpService cpService;
 
     @Override
+    @Transactional(rollbackFor = Exception.class)
     public Boolean gameAddOrUpdate(GameAddParam param) {
         //游戏分类处理
         String gameTags = this.getGameTags(param.getClassifyList());

+ 2 - 2
game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/service/impl/GameUserRoleServiceImpl.java

@@ -107,13 +107,13 @@ public class GameUserRoleServiceImpl extends ServiceImpl<GameUserRoleMapper, Gam
         //渠道列表
         List<AgentDTO> agentDTOList = agentService.listUserAgent(null, null, param.getChannelId());
         //根据条件, 匹配渠道
-        if (CollectionUtils.isEmpty(agentDTOList) && !SecurityUtil.isAdmin()) {
+        if (CollectionUtils.isEmpty(agentDTOList) && !SecurityUtil.isManager()) {
             return new Page<>();
         }
         //渠道id
         List<Long> agentIdList = agentDTOList.stream().map(AgentDTO::getId).collect(Collectors.toList());
         //管理员可见自然量数据
-        if (SecurityUtil.isAdmin()) {
+        if (SecurityUtil.isManager()) {
             agentIdList.add(Agent.DEFAULT_AGENT);
         }
         //玩家条件处理

+ 2 - 2
game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/service/impl/GameUserServiceImpl.java

@@ -62,13 +62,13 @@ public class GameUserServiceImpl extends ServiceImpl<GameUserMapper, GameUser> i
         //渠道列表
         List<AgentDTO> agentDTOList = agentService.listUserAgent(param.getAccountId(), param.getPitcherId(), param.getChannelId());
         //根据条件, 匹配渠道
-        if (CollectionUtils.isEmpty(agentDTOList) && !SecurityUtil.isAdmin()) {
+        if (CollectionUtils.isEmpty(agentDTOList) && !SecurityUtil.isManager()) {
             return new Page<>();
         }
         //渠道id
         List<Long> agentIdList = agentDTOList.stream().map(AgentDTO::getId).collect(Collectors.toList());
         //管理员可见自然量数据
-        if (SecurityUtil.isAdmin()) {
+        if (SecurityUtil.isManager()) {
             agentIdList.add(0L);
         }
         //玩家条件处理

+ 2 - 2
game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/service/impl/OrderServiceImpl.java

@@ -101,13 +101,13 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
         //渠道列表
         List<AgentDTO> agentDTOList = agentService.listUserAgent(param.getAccountId(), param.getPitcherId(), param.getChannelId());
         //根据条件, 匹配渠道
-        if (CollectionUtils.isEmpty(agentDTOList) && !SecurityUtil.isAdmin()) {
+        if (CollectionUtils.isEmpty(agentDTOList) && !SecurityUtil.isManager()) {
             return new OrderListVO(param.toPage().getSize());
         }
         //渠道id列表
         List<Long> agentIds = agentDTOList.stream().map(AgentDTO::getId).collect(Collectors.toList());
         //管理员可见自然量数据
-        if (SecurityUtil.isAdmin()) {
+        if (SecurityUtil.isManager()) {
             agentIds.add(0L);
         }
         //查询用户id和名字条件

+ 2 - 2
game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/service/impl/UserCardServiceImpl.java

@@ -50,13 +50,13 @@ public class UserCardServiceImpl extends ServiceImpl<UserCardMapper, UserCard> i
         //渠道列表
         List<AgentDTO> agentDTOList = agentService.listUserAgent(null, null, null);
         //根据条件, 匹配渠道
-        if (CollectionUtils.isEmpty(agentDTOList) && !SecurityUtil.isAdmin()) {
+        if (CollectionUtils.isEmpty(agentDTOList) && !SecurityUtil.isManager()) {
             return new Page<>();
         }
         //渠道id
         List<Long> agentIdList = agentDTOList.stream().map(AgentDTO::getId).collect(Collectors.toList());
         //管理员可见自然量数据
-        if (SecurityUtil.isAdmin()) {
+        if (SecurityUtil.isManager()) {
             agentIdList.add(0L);
         }
         //玩家条件处理

+ 6 - 9
game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/service/impl/UserServiceImpl.java

@@ -71,13 +71,13 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements IU
         //渠道列表
         List<AgentDTO> agentDTOList = agentService.listUserAgent(param.getAccountId(), param.getPitcherId(), param.getChannelId());
         //根据条件, 匹配渠道
-        if (CollectionUtils.isEmpty(agentDTOList) && !SecurityUtil.isAdmin()) {
+        if (CollectionUtils.isEmpty(agentDTOList) && !SecurityUtil.isManager()) {
             return new Page<>();
         }
         //渠道id列表
         List<Long> agentIdList = agentDTOList.stream().map(AgentDTO::getId).collect(Collectors.toList());
         //管理员可见自然量数据
-        if (SecurityUtil.isAdmin()) {
+        if (SecurityUtil.isManager()) {
             agentIdList.add(0L);
         }
         Map<Long, CpDTO> cpMap = cpService.cpMap();
@@ -168,14 +168,11 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements IU
         }
         //查询用户拓展信息
         UserCardVO userCardVO = userCardService.getByUserId(userId);
-        if (userCardVO == null) {
-            throw new BaseException("用户实名信息不存在!");
-        }
         //拓展信息补充
-        userVO.setRealName(userCardVO.getCardName());
-        userVO.setBirthday(userCardVO.getBirthday());
-        userVO.setSex(userCardVO.getSex());
-        userVO.setIdCard(userCardVO.getCardId());
+        userVO.setRealName(userCardVO == null ? null : userCardVO.getCardName());
+        userVO.setBirthday(userCardVO == null ? null : userCardVO.getBirthday());
+        userVO.setSex(userCardVO == null ? null : userCardVO.getSex());
+        userVO.setIdCard(userCardVO == null ? null : userCardVO.getCardId());
         userVO.setRegMobile(user.getShowPhoneNum());
         userVO.setMobile(user.getShowPhoneNum());
         userVO.setRegEmail(user.getEmail());

+ 2 - 31
game-module/game-module-sdk/src/main/java/com/zanxiang/game/module/sdk/service/impl/GameExtServiceImpl.java

@@ -4,12 +4,8 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.zanxiang.game.module.mybatis.entity.GameExt;
 import com.zanxiang.game.module.mybatis.mapper.GameExtMapper;
-import com.zanxiang.game.module.sdk.constant.RedisKeyConstant;
-import com.zanxiang.game.module.sdk.enums.ExpireTimeEnum;
 import com.zanxiang.game.module.sdk.service.IGameExtService;
-import com.zanxiang.game.module.sdk.util.RedisUtil;
 import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 /**
@@ -21,38 +17,13 @@ import org.springframework.stereotype.Service;
 @Service
 public class GameExtServiceImpl extends ServiceImpl<GameExtMapper, GameExt> implements IGameExtService {
 
-    @Autowired
-    private RedisUtil<GameExt> redisUtil;
-
     @Override
     public GameExt getByGameId(Long gameId) {
-        //查询缓存
-        GameExt gameExt = redisUtil.getCache(this.getGameKey(String.valueOf(gameId)));
-        if (gameExt != null) {
-            return gameExt;
-        }
-        gameExt = this.getOne(new LambdaQueryWrapper<GameExt>().eq(GameExt::getGameId, gameId));
-        if (gameExt != null) {
-            redisUtil.setCache(this.getGameKey(String.valueOf(gameId)), gameExt, ExpireTimeEnum.ONE_DAY.getTime());
-        }
-        return gameExt;
+        return this.getOne(new LambdaQueryWrapper<GameExt>().eq(GameExt::getGameId, gameId));
     }
 
     @Override
     public GameExt getByGameAppId(String appId) {
-        //查询缓存
-        GameExt gameExt = redisUtil.getCache(this.getGameKey(appId));
-        if (gameExt != null) {
-            return gameExt;
-        }
-        gameExt = this.getOne(new LambdaQueryWrapper<GameExt>().eq(GameExt::getAppId, appId));
-        if (gameExt != null) {
-            redisUtil.setCache(this.getGameKey(appId), gameExt, ExpireTimeEnum.ONE_DAY.getTime());
-        }
-        return gameExt;
-    }
-
-    private String getGameKey(String key) {
-        return RedisKeyConstant.GAME_SECRET_KEY + "_" + key;
+        return this.getOne(new LambdaQueryWrapper<GameExt>().eq(GameExt::getAppId, appId));
     }
 }