xiaoyong931011
2022-11-30 4104bdb8111c9a2af27d6d25a87893e8935330da
src/main/java/cc/mrbird/febs/dapp/controller/ApiDappMemberController.java
@@ -1,7 +1,9 @@
package cc.mrbird.febs.dapp.controller;
import cc.mrbird.febs.common.annotation.EncryptEnable;
import cc.mrbird.febs.common.configure.i18n.MessageSourceUtils;
import cc.mrbird.febs.common.contants.AppContants;
import cc.mrbird.febs.common.controller.BaseController;
import cc.mrbird.febs.common.entity.FebsResponse;
import cc.mrbird.febs.common.utils.LoginUserUtil;
import cc.mrbird.febs.common.utils.RedisUtils;
@@ -10,8 +12,9 @@
import cc.mrbird.febs.dapp.service.DappMemberService;
import cc.mrbird.febs.dapp.service.DappSystemService;
import cc.mrbird.febs.dapp.service.DappWalletService;
import cc.mrbird.febs.dapp.vo.TeamListVo;
import cc.mrbird.febs.dapp.vo.WalletInfoVo;
import cc.mrbird.febs.dapp.vo.*;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiResponse;
@@ -21,6 +24,7 @@
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import java.util.Map;
/**
 * @author
@@ -33,7 +37,7 @@
@RestController
@Api(value = "dapp接口", tags = "dapp接口")
@RequestMapping(value = "/dapi/member")
public class ApiDappMemberController {
public class ApiDappMemberController extends BaseController {
    private final DappWalletService dappWalletService;
    private final DappSystemService dappSystemService;
@@ -86,30 +90,168 @@
        return new FebsResponse().success().data(dappMemberService.findTeamList(teamListDto));
    }
    @ApiResponses({
            @ApiResponse(code = 200, message = "success", response = ActiveNftListVo.class)
    })
    @ApiOperation(value = "开盲盒", notes = "开盲盒")
    @PostMapping(value = "/boxSurprise")
    public FebsResponse boxSurprise() {
        int cnt = dappWalletService.boxSurprise();
        return new FebsResponse().success().data(cnt);
    }
    @PostMapping(value = "/logout")
    public FebsResponse logout() {
        DappMemberEntity member = LoginUserUtil.getAppUser();
        redisUtils.hdel(AppContants.REDIS_KEY_SIGN, member.getAddress());
        return new FebsResponse().success();
        ActiveNftListVo data = dappWalletService.boxSurprise();
        return new FebsResponse().success().data(data);
//        return new FebsResponse().fail().message(MessageSourceUtils.getString("box_surprise_002"));
    }
    @ApiOperation(value = "激活卡牌", notes = "激活卡牌")
    @PostMapping(value = "/activeNft")
    public FebsResponse activeNft(@RequestBody @Valid ActiveDto activeDto) {
        dappWalletService.activeNft(activeDto);
        return new FebsResponse().success();
        return new FebsResponse().success().message(MessageSourceUtils.getString("nft_active_002"));
    }
    @ApiResponses({
            @ApiResponse(code = 200, message = "success", response = ActiveNftListVo.class)
    })
    @ApiOperation(value = "卡牌列表", notes = "卡牌列表")
    @PostMapping(value = "/findNftList")
    public FebsResponse findNftList() {
        return null;
        return new FebsResponse().success().data(dappWalletService.findUnActiveNftList());
    }
    @ApiOperation(value = "价格", notes = "价格")
    @GetMapping(value = "/price")
    public FebsResponse price() {
        return new FebsResponse().success().data(dappSystemService.findPriceListIn24H());
    }
    @ApiOperation(value = "IGT退出登录", notes = "退出登录")
    @PostMapping(value = "/logOut")
    public FebsResponse logout() {
        DappMemberEntity member = LoginUserUtil.getAppUser();
        String redisKey = AppContants.REDIS_KEY_SIGN + member.getId();
        String existToken = redisUtils.getString(redisKey);
        if (StrUtil.isNotBlank(existToken)) {
            Object o = redisUtils.get(existToken);
            if (ObjectUtil.isNotEmpty(o)) {
                redisUtils.del(existToken);
            }
        }
        redisUtils.del(redisKey);
        return new FebsResponse().success();
    }
    @ApiOperation(value = "IGT获取用户信息", notes = "获取用户信息")
    @ApiResponses({
            @ApiResponse(code = 200, message = "success", response = MemberInfoVo.class)
    })
    @GetMapping(value = "/memberInfo")
    public FebsResponse getMemberInfo() {
        MemberInfoVo memberInfoVo = dappMemberService.getMemberInfo();
        return new FebsResponse().success().data(memberInfoVo);
    }
    @ApiOperation(value = "IGT资金记录-类型", notes = "资金记录-类型")
    @ApiResponses({
            @ApiResponse(code = 200, message = "success", response = ApiAmountTypeVo.class)
    })
    @GetMapping(value = "/amountType")
    public FebsResponse amountType() {
        return dappMemberService.amountType();
    }
    @ApiOperation(value ="IGT资金记录-分页", notes = "资金记录-分页")
    @ApiResponses({
            @ApiResponse(code = 200, message = "success", response = ApiAmountChangeListVo.class)
    })
    @PostMapping(value = "/findAmountInPage")
    public FebsResponse findAmountInPage(@RequestBody ApiAmountChangeDto apiAmountChangeDto) {
        Map<String, Object> data = getDataTable(dappMemberService.findAmountInPage(apiAmountChangeDto));
        return new FebsResponse().success().data(data);
    }
    @ApiOperation(value ="IGT我的团队-新增团队成员", notes = "我的团队-新增团队成员")
    @PostMapping(value = "/addTeammate")
    public FebsResponse addTeammate(@RequestBody ApiAddTeammateDto apiAddTeammateDto) {
        return dappMemberService.addTeammate(apiAddTeammateDto);
    }
    @ApiOperation(value ="IGT我的团队-团队列表", notes = "我的团队-团队列表")
    @ApiResponses({
            @ApiResponse(code = 200, message = "success", response = ApiMyTeammateInfoListVo.class)
    })
    @PostMapping(value = "/myTeammateInfo")
    public FebsResponse myTeammateInfo(@RequestBody ApiMyTeammateInfoDto apiMyTeammateInfoDto) {
        Map<String, Object> data = getDataTable(dappMemberService.myTeammateInfo(apiMyTeammateInfoDto));
        return new FebsResponse().success().data(data);
    }
    @ApiOperation(value ="IGT我的团队-资金记录-分页", notes = "我的团队-资金记录-分页")
    @ApiResponses(value = {
            @ApiResponse(code = 200, message = "success", response = ApiMyTeammateAmountChangeListVo.class)
    })
    @PostMapping(value = "/teammateChangeListInPage")
    public FebsResponse teammateChangeListInPage(@RequestBody ApiAmountChangeDto apiAmountChangeDto) {
        Map<String, Object> data = getDataTable(dappMemberService.findTeammateChangeListInPage(apiAmountChangeDto));
        return new FebsResponse().success().data(data);
    }
    @ApiOperation(value = "IGT更新登录密码", notes = "更新登录密码")
    @PostMapping(value = "/updatePassword")
    public FebsResponse updatePassword(@RequestBody ApiUpdatePasswordDto apiUpdatePasswordDto) {
        return dappWalletService.updatePassword(apiUpdatePasswordDto);
    }
    @ApiOperation(value = "IGT重置登录密码", notes = "重置登录密码")
    @PostMapping(value = "/resetPassword")
    public FebsResponse resetPassword(@RequestBody ApiResetPasswordDto apiResetPasswordDto) {
        return dappWalletService.resetPassword(apiResetPasswordDto);
    }
    @ApiOperation(value ="IGT银行卡-列表分页", notes = "银行卡-列表分页")
    @ApiResponses(value = {
            @ApiResponse(code = 200, message = "success", response = ApiBankListVo.class)
    })
    @PostMapping(value = "/bankList")
    public FebsResponse bankList(@RequestBody ApiBankListDto apiBankListDto) {
//        Map<String, Object> data = getDataTable(dappMemberService.getBankListInPage(apiBankListDto));
        return dappMemberService.getBankListInPage(apiBankListDto);
    }
    @ApiOperation(value ="IGT银行卡-新增", notes = "银行卡-新增")
    @PostMapping(value = "/addBank")
    public FebsResponse addBank(@RequestBody ApiAddBankDto addBankDto) {
        return dappMemberService.addBank(addBankDto);
    }
    @ApiOperation(value ="IGT我的钱包", notes = "我的钱包")
    @ApiResponses(value = {
            @ApiResponse(code = 200, message = "success", response = ApiAddressInfoVo.class)
    })
    @PostMapping(value = "/myAddress")
    public FebsResponse myAddress() {
        return dappMemberService.getBankListInPage();
    }
    @ApiOperation(value ="IGT我的钱包-新增", notes = "我的钱包-新增")
    @PostMapping(value = "/addAddress")
    public FebsResponse addAddress(@RequestBody ApiAddAddressDto apiAddAddressDto) {
        return dappMemberService.addAddress(apiAddAddressDto);
    }
    @ApiOperation(value = "IGT发送客服消息", notes = "发送客服消息")
    @PostMapping(value = "/addMessage")
    public FebsResponse addMessage(@RequestBody AddMessageDto addMessageDto) {
        return dappMemberService.addMessage(addMessageDto);
    }
    @ApiOperation(value ="IGT客服消息-列表分页", notes = "客服消息-列表分页")
    @ApiResponses(value = {
            @ApiResponse(code = 200, message = "success", response = ApiMessageListVo.class)
    })
    @PostMapping(value = "/messageList")
    public FebsResponse messageList(@RequestBody ApiMessageListDto apiMessageListDto) {
        Map<String, Object> data = getDataTable(dappMemberService.getMessageListInPage(apiMessageListDto));
        return new FebsResponse().success().data(data);
    }
}