package cc.mrbird.febs.mall.controller;
|
|
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.service.IMallMemberWithdrawService;
|
import cc.mrbird.febs.mall.vo.*;
|
import io.swagger.annotations.Api;
|
import io.swagger.annotations.ApiOperation;
|
import io.swagger.annotations.ApiResponse;
|
import io.swagger.annotations.ApiResponses;
|
import lombok.RequiredArgsConstructor;
|
import lombok.extern.slf4j.Slf4j;
|
import org.springframework.validation.annotation.Validated;
|
import org.springframework.web.bind.annotation.*;
|
|
import javax.validation.Valid;
|
|
/**
|
* @author wzy
|
* @date 2021-09-16
|
**/
|
@Slf4j
|
@RestController
|
@CrossOrigin("*")
|
@RequestMapping(value = "/api/member")
|
@RequiredArgsConstructor
|
@Api(value = "ApiMallMemberController", tags = "商城用户接口类")
|
public class ApiMallMemberController {
|
|
private final IApiMallMemberService memberService;
|
private final IMallMemberWithdrawService mallMemberWithdrawService;
|
private final IApiMallMemberWalletService walletService;
|
|
@ApiOperation(value = "FCM-获取商城用户信息", notes = "FCM-获取商城用户信息")
|
@ApiResponses({
|
@ApiResponse(code = 200, message = "success", response = MallMemberVo.class)
|
})
|
@GetMapping(value = "/findMemberInfo")
|
public FebsResponse findMemberInfo() {
|
return memberService.findMemberInfo();
|
}
|
|
@ApiOperation(value = "FCM-修改用户信息")
|
@PostMapping(value = "/modifyInfo")
|
public FebsResponse modifyInfo(@RequestBody @Valid ModifyMemberInfoDto modifyMemberInfoDto) {
|
return memberService.modifyMemberInfo(modifyMemberInfoDto);
|
}
|
|
@ApiOperation(value = "FCM-解除冻结")
|
@PostMapping(value = "/unfreeze")
|
public FebsResponse unfreeze(@RequestBody @Valid UnfreezeDto unfreezeDto) {
|
return memberService.unfreeze(unfreezeDto);
|
}
|
|
@ApiOperation(value = "FCM-找回密钥")
|
@PostMapping(value = "/getKey")
|
public FebsResponse getKey(@RequestBody @Valid GetKeyDto getKeyDto) {
|
return memberService.getKey(getKeyDto);
|
}
|
|
@ApiOperation(value = "FCM-获取收款信息", notes = "FCM-获取收款信息")
|
@ApiResponses({
|
@ApiResponse(code = 200, message = "success", response = MallMemberPaymentVo.class)
|
})
|
@GetMapping(value = "/getPayment")
|
public FebsResponse getPayment() {
|
return memberService.getPayment();
|
}
|
|
@ApiOperation(value = "FCM-修改收款信息", notes = "FCM-修改收款信息")
|
@PostMapping(value = "/updatePayment")
|
public FebsResponse updatePayment(@RequestBody @Valid UpdatePaymentDto updatePaymentDto) {
|
return memberService.updatePayment(updatePaymentDto);
|
}
|
|
@ApiOperation(value = "FCM-推出登录", notes = "FCM-推出登录")
|
@PostMapping(value = "/logout")
|
public FebsResponse logout() {
|
return memberService.logout();
|
}
|
|
@ApiOperation(value = "获取购物车、订单等角标数量")
|
@GetMapping(value = "/findMarkCnt")
|
public FebsResponse findMarkCnt() {
|
return memberService.findMemberMarkCnt();
|
}
|
|
@ApiOperation(value = "FCM-设置支付密码")
|
@PostMapping(value = "/setTradePwd")
|
public FebsResponse setTradePwd(@RequestBody ForgetPwdDto forgetPwdDto) {
|
return memberService.setTradePwd(forgetPwdDto);
|
}
|
|
@ApiOperation(value = "我的团队列表")
|
@ApiResponses({
|
@ApiResponse(code = 200, message = "success", response = MyTeamVo.class)
|
})
|
@PostMapping(value = "/teamList")
|
public FebsResponse teamList(@RequestBody TeamListDto teamListDto) {
|
return memberService.teamList(teamListDto);
|
}
|
|
|
@ApiOperation(value = "资金流水列表")
|
@ApiResponses({
|
@ApiResponse(code = 200, message = "success", response = MoneyFlowVo.class)
|
})
|
@PostMapping(value = "/moneyFlow")
|
public FebsResponse moneyFlow(@RequestBody MoneyFlowDto moneyFlowDto) {
|
return memberService.moneyFlows(moneyFlowDto);
|
}
|
|
@ApiOperation(value = "FCM-转账")
|
@PostMapping(value = "/transfer")
|
public FebsResponse transfer(@RequestBody @Validated TransferDto transferDto) {
|
memberService.transfer(transferDto);
|
return new FebsResponse().success().message("操作成功");
|
}
|
|
@ApiOperation(value = "提现规则", notes = "提现规则")
|
@ApiResponses({
|
@ApiResponse(code = 200, message = "success", response = CashOutSettingVo.class)
|
})
|
@GetMapping(value = "/cashOutSetting")
|
public FebsResponse cashOutSetting() {
|
return new FebsResponse().success().data(memberService.cashOutSetting());
|
}
|
|
@ApiOperation(value = "提现")
|
@PostMapping(value = "/withdrawal")
|
public FebsResponse withdrawal(@RequestBody @Validated WithdrawalDto withdrawalDto) {
|
mallMemberWithdrawService.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));
|
return new FebsResponse().success();
|
}
|
|
@ApiOperation(value = "根据邀请码或者手机号获取昵称")
|
@PostMapping(value = "/findMemberInfoByAccount/{phone}")
|
public FebsResponse findMemberInfoByAccount(@PathVariable("phone") String phone) {
|
MallMember account = memberService.findMemberInfoByAccount(phone);
|
if (account == null) {
|
return new FebsResponse().fail().message("用户不存在");
|
}
|
|
MallMemberVo member = new MallMemberVo();
|
member.setName(account.getName());
|
return new FebsResponse().success().data(member);
|
}
|
|
@ApiOperation(value = "佣金划转")
|
@PostMapping(value = "/commissionChange")
|
public FebsResponse commissionChange(@RequestBody @Validated CommissionChangeDto commissionChange) {
|
walletService.commissionChange(commissionChange);
|
return new FebsResponse().success();
|
}
|
|
@ApiOperation(value = "我的权益")
|
@ApiResponses(
|
@ApiResponse(code = 200, message = "success", response = MyCommissionVo.class)
|
)
|
@PostMapping(value = "/myCommission")
|
public FebsResponse myCommission() {
|
return new FebsResponse().success().data(memberService.myCommission());
|
}
|
|
@ApiOperation(value = "商铺申请是否存在")
|
@PostMapping(value = "/shopApplyIsExist")
|
public FebsResponse shopApplyIsExist() {
|
return null;
|
}
|
|
@ApiOperation(value = "新增银行卡")
|
@PostMapping(value = "/addMemberBank")
|
public FebsResponse addMemberBank(@RequestBody AddMemberBankDto addMemberBankDto) {
|
return memberService.addMemberBank(addMemberBankDto);
|
}
|
|
@ApiOperation(value = "银行卡列表", notes = "银行卡列表")
|
@ApiResponses({
|
@ApiResponse(code = 200, message = "success", response = MemberBankListVo.class)
|
})
|
@PostMapping(value = "/memberBankList")
|
public FebsResponse memberBankList(@RequestBody MemberBankListDto memberBankListDto) {
|
return memberService.findMemberBankList(memberBankListDto);
|
}
|
|
@ApiOperation(value = "银行卡详情", notes = "银行卡详情")
|
@ApiResponses({
|
@ApiResponse(code = 200, message = "success", response = MemberBankListVo.class)
|
})
|
@GetMapping(value = "/memberBankDetails/{id}")
|
public FebsResponse memberBankDetails(@PathVariable("id") Long id) {
|
return memberService.findBankDetailsById(id);
|
}
|
|
@ApiOperation(value = "更新银行卡")
|
@PostMapping(value = "/updateMemberBank")
|
public FebsResponse updateMemberBank(@RequestBody UpdateMemberBankDto updateMemberBankDto) {
|
return memberService.updateMemberBank(updateMemberBankDto);
|
}
|
|
@ApiOperation(value = "删除银行卡", notes = "删除银行卡")
|
@PostMapping(value = "/delMemberBank/{id}")
|
public FebsResponse delMemberBank(@PathVariable("id") Long id) {
|
return memberService.delMemberBank(id);
|
}
|
|
@ApiOperation(value = "银行名称列表", notes = "银行名称列表")
|
@GetMapping(value = "/memberBankName")
|
public FebsResponse memberBankDetails() {
|
return memberService.findBankName();
|
}
|
|
}
|