package com.zanxiang.manage.controller; import com.baomidou.mybatisplus.core.metadata.IPage; import com.zanxiang.common.domain.ResultVo; import com.zanxiang.common.enums.AuthPlatform; import com.zanxiang.common.enums.OsEnum; import com.zanxiang.common.enums.VipLevelEnum; import com.zanxiang.common.utils.bean.BeanUtils; import com.zanxiang.manage.domain.params.GameUserListParam; import com.zanxiang.manage.domain.params.GameUserRoleListParam; import com.zanxiang.manage.domain.params.UserNameAuthListParam; import com.zanxiang.manage.domain.vo.*; import com.zanxiang.manage.service.GameUserRoleService; import com.zanxiang.manage.service.GameUserService; import com.zanxiang.manage.service.UserExtService; import com.zanxiang.manage.service.UserService; 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.*; import java.util.Arrays; import java.util.List; /** * @author : lingfeng * @time : 2022-06-29 * @description : 玩家管理接口 */ @Api(tags = {"玩家管理接口"}) @RestController @RequestMapping("/user") @Slf4j public class UserController { @Autowired private UserExtService userExtService; @Autowired private GameUserRoleService gameUserRoleService; @Autowired private GameUserService gameUserService; @Autowired private UserService userService; // @ApiOperation(value = "玩家列表") // @PostMapping(value = "/list") // @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = IpBanVO.class)}) // public ResultVo> list(@Validated @RequestBody IpBanListParam param) { // return null; // } // @ApiOperation(value = "玩家详细信息") // @PostMapping(value = "/update") // @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = IpBanVO.class)}) // public ResultVo> update(@Validated @RequestBody IpBanListParam param) { // return null; // } @ApiOperation(value = "玩家详细信息") @GetMapping(value = "/info") @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = UserVO.class)}) public ResultVo getUserInfo(@RequestParam Long id) { return ResultVo.ok(userService.getUserInfo(id)); } @ApiOperation(value = "玩家游戏列表") @PostMapping(value = "/game/list") @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = GameUserListVO.class)}) public ResultVo> gameUserList(@Validated @RequestBody GameUserListParam param) { return ResultVo.ok(gameUserService.gameUserList(param)); } @ApiOperation(value = "玩家角色列表") @PostMapping(value = "/role/list") @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = GameUserRoleListVO.class)}) public ResultVo> roleList(@Validated @RequestBody GameUserRoleListParam param) { return ResultVo.ok(gameUserRoleService.list(param)); } @ApiOperation(value = "vip等级选择列表选择列表") @GetMapping(value = "/vip/level/choice/list") @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = VipLevelVo.class, responseContainer = "list")}) public ResultVo> vipLevelChoiceList() { return ResultVo.ok(BeanUtils.copyList(Arrays.asList(VipLevelEnum.values()), VipLevelVo.class)); } @ApiOperation(value = "操作系统选择列表") @GetMapping(value = "/system/type/choice/list") @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = SystemTypeVO.class, responseContainer = "list")}) public ResultVo> systemTypeChoiceList() { return ResultVo.ok(BeanUtils.copyList(Arrays.asList(OsEnum.values()), SystemTypeVO.class)); } @ApiOperation(value = "防沉迷认证平台选择列表") @GetMapping(value = "/auth/platform/choice/list") @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = AuthPlatformVO.class, responseContainer = "list")}) public ResultVo> authPlatformChoiceList() { return ResultVo.ok(BeanUtils.copyList(Arrays.asList(AuthPlatform.values()), AuthPlatformVO.class)); } @ApiOperation(value = "玩家实名认证列表") @PostMapping(value = "/auth/list") @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = UserNameAuthVO.class)}) public ResultVo> authList(@Validated @RequestBody UserNameAuthListParam param) { return ResultVo.ok(userExtService.authList(param)); } }