KKSU
2024-08-22 7a372033d44ba48383d9d1bc97e5d583b26a266f
src/main/java/cc/mrbird/febs/mall/controller/ApiMallMemberController.java
@@ -1,13 +1,15 @@
package cc.mrbird.febs.mall.controller;
import cc.mrbird.febs.common.annotation.EncryptEnable;
import cc.mrbird.febs.common.entity.FebsResponse;
import cc.mrbird.febs.mall.dto.*;
import cc.mrbird.febs.mall.entity.MallMember;
import cc.mrbird.febs.mall.entity.MallMemberPayment;
import cc.mrbird.febs.mall.service.IApiMallMemberService;
import cc.mrbird.febs.mall.service.IApiMallMemberWalletService;
import cc.mrbird.febs.mall.service.ICommonService;
import cc.mrbird.febs.mall.vo.MallMemberVo;
import cc.mrbird.febs.mall.vo.MoneyFlowVo;
import cc.mrbird.febs.mall.vo.TeamListVo;
import cc.mrbird.febs.mall.service.IMallMemberWithdrawService;
import cc.mrbird.febs.mall.vo.*;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiResponse;
@@ -25,14 +27,18 @@
 **/
@Slf4j
@RestController
@CrossOrigin("*")
@EncryptEnable
@RequestMapping(value = "/api/member")
@RequiredArgsConstructor
@Api(value = "ApiMallMemberController", tags = "商城用户接口类")
@Api(value = "ApiMallMemberController", tags = "GUESS用户接口类")
public class ApiMallMemberController {
    private final IApiMallMemberService memberService;
    private final IMallMemberWithdrawService mallMemberWithdrawService;
    private final IApiMallMemberWalletService walletService;
    @ApiOperation(value = "获取商城用户信息", notes = "获取商城用户信息")
    @ApiOperation(value = "GUESS用户信息", notes = "GUESS用户信息")
    @ApiResponses({
            @ApiResponse(code = 200, message = "success", response = MallMemberVo.class)
    })
@@ -41,40 +47,55 @@
        return memberService.findMemberInfo();
    }
    @ApiOperation(value = "推出登录", notes = "推出登录")
    @ApiOperation(value = "GUESS绑定充值提现地址", notes = "GUESS绑定充值提现地址")
    @PostMapping(value = "/bindAddress")
    public FebsResponse bindAddress(@RequestBody @Valid ApiBindAddressDto apiBindAddressDto) {
        return memberService.bindAddress(apiBindAddressDto);
    }
    @ApiOperation(value = "GUESS充值", notes = "GUESS充值")
    @PostMapping(value = "/chargeBalance")
    public FebsResponse chargeBalance(@RequestBody @Valid ApiChargeBalanceDto apiChargeBalanceDto) {
        return memberService.chargeBalance(apiChargeBalanceDto);
    }
    @ApiOperation(value = "GUESS提现")
    @PostMapping(value = "/withdrawalBalance")
    public FebsResponse withdrawalBalance(@RequestBody @Validated WithdrawalBalanceDto withdrawalBalanceDto) {
        mallMemberWithdrawService.withdrawalBalance(withdrawalBalanceDto);
        return new FebsResponse().success().message("提交成功");
    }
    @ApiOperation(value = "GUESS推出登录", notes = "GUESS推出登录")
    @PostMapping(value = "/logout")
    public FebsResponse logout() {
        return memberService.logout();
    }
    @ApiOperation(value = "获取购物车、订单等角标数量")
    @GetMapping(value = "/findMarkCnt")
    public FebsResponse findMarkCnt() {
        return memberService.findMemberMarkCnt();
    }
    @ApiOperation(value = "设置支付密码")
    @PostMapping(value = "/setTradePwd")
    public FebsResponse setTradePwd(@RequestBody ForgetPwdDto forgetPwdDto) {
        return memberService.setTradePwd(forgetPwdDto);
    }
    @ApiOperation(value = "修改用户信息")
    @PostMapping(value = "/modifyInfo")
    public FebsResponse modifyInfo(@RequestBody ModifyMemberInfoDto modifyMemberInfoDto) {
        return memberService.modifyMemberInfo(modifyMemberInfoDto);
    }
    @ApiOperation(value = "我的团队列表")
    @ApiOperation(value = "GUESS我的团队规模")
    @ApiResponses({
            @ApiResponse(code = 200, message = "success", response = TeamListVo.class)
            @ApiResponse(code = 200, message = "success", response = MyTeamVo.class)
    })
    @PostMapping(value = "/teamList")
    public FebsResponse teamList(@RequestBody TeamListDto teamListDto) {
        return memberService.teamList(teamListDto);
    public FebsResponse teamList() {
        return memberService.teamList();
    }
    @ApiOperation(value = "资金流水列表")
    @ApiOperation(value = "GUESS我的团队详情")
    @ApiResponses({
            @ApiResponse(code = 200, message = "success", response = MyFcmTeamVo.class)
    })
    @PostMapping(value = "/teamInfo")
    public FebsResponse teamInfo() {
        return memberService.teamFcmList();
    }
    @ApiOperation(value = "GUESS资金流水列表")
    @ApiResponses({
            @ApiResponse(code = 200, message = "success", response = MoneyFlowVo.class)
    })
@@ -83,55 +104,4 @@
        return memberService.moneyFlows(moneyFlowDto);
    }
    @ApiOperation(value = "转账")
    @PostMapping(value = "/transfer")
    public FebsResponse transfer(@RequestBody @Validated TransferDto transferDto) {
        memberService.transfer(transferDto);
        return new FebsResponse().success().message("转账成功");
    }
    @ApiOperation(value = "提现")
    @PostMapping(value = "/withdrawal")
    public FebsResponse withdrawal(@RequestBody @Validated WithdrawalDto withdrawalDto) {
        memberService.withdrawal(withdrawalDto);
        return new FebsResponse().success().message("提交成功");
    }
    @ApiOperation(value = "设置收款方式")
    @PostMapping(value = "/setPayment")
    public FebsResponse setPayment(@RequestBody MallMemberPayment mallMemberPayment) {
        memberService.setPayment(mallMemberPayment);
        return new FebsResponse().success().message("设置成功");
    }
    @ApiOperation(value = "获取收款方式")
    @GetMapping(value = "/findPayment")
    public FebsResponse findPayment() {
        return new FebsResponse().success().data(memberService.findMemberPayment());
    }
    @ApiOperation(value = "绑定手机号")
    @PostMapping(value = "/bindPhone")
    public FebsResponse bindPhone(@RequestBody AccountAndCodeDto accountAndCodeDto) {
        memberService.bindPhone(accountAndCodeDto);
        return new FebsResponse().success().message("绑定成功");
    }
    @ApiOperation(value = "可提现金额")
    @GetMapping(value = "/canWithdrawal")
    public FebsResponse canWithdrawal() {
        return new FebsResponse().success().data(memberService.canMoney());
    }
    @ApiOperation(value = "用户消费排名")
    @PostMapping(value = "/findRankList")
    public FebsResponse findRankList(@RequestBody RankListDto rankListDto) {
        return new FebsResponse().success().data(memberService.findRankList(rankListDto));
    }
    @ApiOperation(value = "根据邀请码或者手机号获取昵称")
    @PostMapping(value = "/findMemberInfoByAccount/{phone}")
    public FebsResponse findMemberInfoByAccount(@PathVariable("phone") String phone) {
        return new FebsResponse().success().data(memberService.findMemberInfoByAccount(phone));
    }
}