ソースを参照

修改团队列表接口

dos 3 ヶ月 前
コミット
8cc13d5146

+ 1 - 1
game-business/src/main/java/com/game/business/controller/AppAgentController.java

@@ -28,7 +28,7 @@ import java.util.stream.Collectors;
 
 @RestController
 @RequestMapping("/business/agent")
-@Api(value = "AppGameBettingController", description = "代理接口", tags = {"代理接口"})
+@Api(value = "AppGameBettingController", description = "用户代理接口", tags = {"用户代理接口"})
 public class AppAgentController extends BaseController {
 
     @Autowired

+ 1 - 2
game-business/src/main/java/com/game/business/controller/AppUserAgentController.java

@@ -42,8 +42,7 @@ import springfox.documentation.annotations.ApiIgnore;
  */
 @RestController
 @RequestMapping("/business/agent")
-@Api(value = "AppUserAgentController", description = "用户代理表接口", tags = {"用户代理表"})
-@ApiIgnore
+@Api(value = "AppUserAgentController", description = "用户代理表接口", tags = {"用户代理表接口"})
 public class AppUserAgentController extends BaseController
 {
     @Autowired

+ 4 - 0
game-business/src/main/java/com/game/business/domain/AppGameCommission.java

@@ -54,4 +54,8 @@ private static final long serialVersionUID=1L;
     @TableField(value = "game_rate")
     private Long gameRate;
 
+    @TableField(exist = false)
+    @ApiModelProperty(value = "游戏名称")
+    private String gameName;
+
 }

+ 5 - 0
game-business/src/main/java/com/game/business/service/IAppGameCommissionService.java

@@ -58,4 +58,9 @@ public interface IAppGameCommissionService extends IService<AppGameCommission> {
      * @return 结果
      */
     public int deleteAppGameCommissionById(Long id);
+
+    /**
+     * 根据用户id查询游戏分红比例
+     * */
+    public List<AppGameCommission> getByIds(List<Long> ids);
 }

+ 7 - 0
game-business/src/main/java/com/game/business/service/IAppGameService.java

@@ -73,4 +73,11 @@ public interface IAppGameService extends IService<AppGame> {
      * @return
      */
     AppGame selectAppGameByClassIdAndCode(Long classId, String code);
+
+    /**
+     * 根据id查询游戏
+     * @param ids
+     * @return
+     */
+    List<AppGame> selectByIds(List<Long> ids);
 }

+ 34 - 6
game-business/src/main/java/com/game/business/service/impl/AppGameCommissionServiceImpl.java

@@ -1,7 +1,16 @@
 package com.game.business.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+
+import java.util.Collections;
+import java.util.HashMap;
 import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
+
+import com.game.business.domain.AppGame;
+import com.game.business.service.IAppGameService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import com.game.business.mapper.AppGameCommissionMapper;
@@ -21,6 +30,9 @@ public class AppGameCommissionServiceImpl extends ServiceImpl<AppGameCommissionM
     @Autowired
     private AppGameCommissionMapper appGameCommissionMapper;
 
+    @Autowired
+    private IAppGameService appGameService;
+
     /**
      * 查询游戏佣金配置
      *
@@ -28,7 +40,6 @@ public class AppGameCommissionServiceImpl extends ServiceImpl<AppGameCommissionM
      * @return 游戏佣金配置
      */
     @Override
-    @DataSource(DataSourceType.SLAVE)
     public AppGameCommission selectAppGameCommissionById(Long id) {
         return appGameCommissionMapper.selectAppGameCommissionById(id);
     }
@@ -40,7 +51,6 @@ public class AppGameCommissionServiceImpl extends ServiceImpl<AppGameCommissionM
      * @return 游戏佣金配置
      */
     @Override
-    @DataSource(DataSourceType.SLAVE)
     public List<AppGameCommission> selectAppGameCommissionList(AppGameCommission appGameCommission) {
         return appGameCommissionMapper.selectAppGameCommissionList(appGameCommission);
     }
@@ -52,7 +62,6 @@ public class AppGameCommissionServiceImpl extends ServiceImpl<AppGameCommissionM
      * @return 结果
      */
     @Override
-    @DataSource(DataSourceType.SLAVE)
     public int insertAppGameCommission(AppGameCommission appGameCommission) {
             return appGameCommissionMapper.insertAppGameCommission(appGameCommission);
     }
@@ -64,7 +73,6 @@ public class AppGameCommissionServiceImpl extends ServiceImpl<AppGameCommissionM
      * @return 结果
      */
     @Override
-    @DataSource(DataSourceType.SLAVE)
     public int updateAppGameCommission(AppGameCommission appGameCommission) {
         return appGameCommissionMapper.updateAppGameCommission(appGameCommission);
     }
@@ -76,7 +84,6 @@ public class AppGameCommissionServiceImpl extends ServiceImpl<AppGameCommissionM
      * @return 结果
      */
     @Override
-    @DataSource(DataSourceType.SLAVE)
     public int deleteAppGameCommissionByIds(Long[] ids) {
         return appGameCommissionMapper.deleteAppGameCommissionByIds(ids);
     }
@@ -88,8 +95,29 @@ public class AppGameCommissionServiceImpl extends ServiceImpl<AppGameCommissionM
      * @return 结果
      */
     @Override
-    @DataSource(DataSourceType.SLAVE)
     public int deleteAppGameCommissionById(Long id) {
         return appGameCommissionMapper.deleteAppGameCommissionById(id);
     }
+
+    @Override
+    public List<AppGameCommission> getByIds(List<Long> ids) {
+        LambdaQueryWrapper<AppGameCommission> queryWrapper = new LambdaQueryWrapper<>();
+        queryWrapper.in(AppGameCommission::getUserId, ids);
+        List<AppGameCommission> list = appGameCommissionMapper.selectList(queryWrapper);
+        if(null != list && list.size() > 0){
+            List<Long> gameIds = list.stream().map(e->e.getGameId()).collect(Collectors.toList());
+            List<AppGame> games = appGameService.selectByIds(gameIds);
+            Map<String,String> map = new HashMap<>();
+            if(null != games && games.size() > 0){
+                map = games.stream().collect(Collectors.toMap(j->String.valueOf(j.getId()),AppGame::getName,(k1,k2)->k1));
+            }
+            Map<String, String> finalMap = map;
+            list.forEach(e->{
+                if(null != finalMap.get(String.valueOf(e.getGameId()))){
+                    e.setGameName(finalMap.get(String.valueOf(e.getGameId())));
+                }
+            });
+        }
+        return list;
+    }
 }

+ 10 - 0
game-business/src/main/java/com/game/business/service/impl/AppGameServiceImpl.java

@@ -3,6 +3,8 @@ package com.game.business.service.impl;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+
+import java.util.Collections;
 import java.util.List;
 
 import com.game.common.annotation.DataSource;
@@ -114,4 +116,12 @@ public class AppGameServiceImpl extends ServiceImpl<AppGameMapper, AppGame> impl
         queryGameWrapper.eq(AppGame::getClassifyId, classId);
         return appGameMapper.selectOne(queryGameWrapper);
     }
+
+    @Override
+    @DataSource(DataSourceType.SLAVE)
+    public List<AppGame> selectByIds(List<Long> ids) {
+        LambdaQueryWrapper<AppGame> queryWrapper = Wrappers.lambdaQuery();
+        queryWrapper.in(AppGame::getId, ids);
+        return appGameMapper.selectList(queryWrapper);
+    }
 }

+ 23 - 1
game-business/src/main/java/com/game/business/service/impl/AppUserAgentServiceImpl.java

@@ -5,10 +5,14 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 
 import java.rmi.ServerException;
 import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
 
+import com.game.business.domain.AppGameCommission;
 import com.game.business.domain.AppUser;
 import com.game.business.dto.AppAgentEditDto;
 import com.game.business.dto.AppAgentTeamDto;
+import com.game.business.service.IAppGameCommissionService;
 import com.game.business.service.IAppUserService;
 import com.game.business.vo.AppAgentTeamVo;
 import com.game.common.core.domain.HttpRet;
@@ -41,6 +45,9 @@ public class AppUserAgentServiceImpl extends ServiceImpl<AppUserAgentMapper, App
     @Autowired
     private IAppUserService appUserService;
 
+    @Autowired
+    private IAppGameCommissionService gameCommissionService;
+
     /**
      * 查询用户代理表
      *
@@ -172,7 +179,22 @@ public class AppUserAgentServiceImpl extends ServiceImpl<AppUserAgentMapper, App
     @Override
     public List<AppAgentTeamVo> teamList(AppAgentTeamDto teamDto) {
         teamDto.setPid(SecurityUtils.getUserId());
-        return appUserAgentMapper.teamList(teamDto);
+        List<AppAgentTeamVo> list = appUserAgentMapper.teamList(teamDto);
+        if(null != list && list.size() > 0){
+            List<Long> ids = list.stream().map(e->{return e.getUserId();}).collect(Collectors.toList());
+            //查询游戏分红比例
+            List<AppGameCommission> gameCommissionList = gameCommissionService.getByIds(ids);
+            if(null != gameCommissionList && gameCommissionList.size() > 0){
+                Map<String,List<AppGameCommission>> map = gameCommissionList.stream().
+                        collect(Collectors.groupingBy(j->String.valueOf(j.getUserId())));
+                list.forEach(e->{
+                    if(null != map.get(String.valueOf(e.getUserId()))){
+                        e.setGameCommissionList(map.get(String.valueOf(e.getUserId())));
+                    }
+                });
+            }
+        }
+        return list;
     }
 
 }

+ 18 - 0
game-business/src/main/java/com/game/business/vo/AppAgentTeamVo.java

@@ -1,10 +1,17 @@
 package com.game.business.vo;
 
+import cn.hutool.core.collection.ListUtil;
+import com.baomidou.mybatisplus.annotation.TableField;
 import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.game.business.domain.AppGameCommission;
+import com.game.common.annotation.Excel;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
+import java.util.ArrayList;
+import java.util.List;
+
 @Data
 @ApiModel("代理团队")
 public class AppAgentTeamVo {
@@ -24,4 +31,15 @@ public class AppAgentTeamVo {
     @ApiModelProperty(value = "盈亏")
     private double gameAmount;
 
+    /** 直播分成比例 */
+    @ApiModelProperty(value = "直播分成比例")
+    private Long liveRate;
+
+    /** 保底分红比例 */
+    @ApiModelProperty(value = "保底分红比例")
+    private Long dividendGuaranteeRate;
+
+    @ApiModelProperty(value = "游戏比例设置")
+    private List<AppGameCommission> gameCommissionList = ListUtil.empty();
+
 }

+ 3 - 1
game-business/src/main/resources/mapper/business/AppUserAgentMapper.xml

@@ -102,7 +102,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             c.nickname as nickName,
             (select sum(betting_amount) from app_game_betting as b where b.user_id = a.user_id) as bettingAmount,
             (select sum(d.live_commission + d.game_commission) from app_user_count as d where d.user_id = a.user_id) as commission,
-            (select sum(e.game_win_amount - e.game_lose_amount) from app_user_count as e where e.user_id = a.user_id) as gameAmount
+            (select sum(e.game_win_amount - e.game_lose_amount) from app_user_count as e where e.user_id = a.user_id) as gameAmount,
+            a.live_rate as liveRate,
+            a.dividend_guarantee_rate as dividendGuaranteeRate
         from app_user_agent as a left join mugozbg_live.app_user as c on a.user_id = c.userid where a.pid = #{teamDto.pid}
         <if test="teamDto.userId != null ">
              and a.user_id = #{teamDto.userId}