KKSU
2025-01-09 e15c348bc992de7331d14d76451032358aae9289
src/main/java/cc/mrbird/febs/mall/controller/ApiMallMemberController.java
@@ -3,12 +3,11 @@
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.MallMemberCoupon;
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.service.*;
import cc.mrbird.febs.mall.vo.*;
import cc.mrbird.febs.vip.service.IMallVipBenefitsService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiResponse;
@@ -19,6 +18,7 @@
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import java.util.Map;
/**
 * @author wzy
@@ -34,7 +34,18 @@
    private final IApiMallMemberService memberService;
    private final IMallMemberWithdrawService mallMemberWithdrawService;
    private final IApiMallMemberWalletService walletService;
    private final IApiMallAgentService iApiMallAgentService;
    private final IMallVipBenefitsService mallVipBenefitsService;
    /**
     * 小程序接收用户数据,更新用户信息
     */
    @ApiOperation(value = "小程序接收用户数据", notes = "小程序接收用户数据")
    @PostMapping(value = "/xcxSaveInfo")
    public FebsResponse xcxSaveInfo(@RequestBody ApiXcxSaveInfoDto apiXcxSaveInfoDto){
        return memberService.xcxSaveInfo(apiXcxSaveInfoDto);
    }
    @ApiOperation(value = "获取商城用户信息", notes = "获取商城用户信息")
    @ApiResponses({
            @ApiResponse(code = 200, message = "success", response = MallMemberVo.class)
@@ -177,4 +188,141 @@
        return null;
    }
    @ApiOperation(value = "充值余额")
    @PostMapping(value = "/rechargeWallet")
    public FebsResponse rechargeWallet(@RequestBody @Validated ApiRechargeWalletDto apiRechargeWalletDto) {
        return memberService.rechargeWallet(apiRechargeWalletDto);
    }
    /**
     * 申请代理
     * @param apiAgentApplyDto
     * @return
     */
    @ApiOperation(value = "申请代理")
    @PostMapping(value = "/agentApply")
    public FebsResponse agentApply(@RequestBody @Validated ApiAgentApplyDto apiAgentApplyDto) {
        return iApiMallAgentService.agentApply(apiAgentApplyDto);
    }
    /**
     * 绑定默认推荐人
     */
    @ApiOperation(value = "绑定默认推荐人")
    @PostMapping(value = "/setInvite")
    public FebsResponse setInvite(@RequestBody @Validated ApiSetInviteDto apiSetInviteDto) {
        return memberService.setInvite(apiSetInviteDto);
    }
    @ApiOperation(value = "代理申请信息")
    @GetMapping(value = "/agentApplyInfo")
    public FebsResponse agentApplyInfo() {
        return memberService.agentApplyInfo();
    }
    @ApiOperation(value = "合伙人权益")
    @GetMapping(value = "/agentDetail")
    public FebsResponse agentDetail() {
        return memberService.agentDetail();
    }
    @ApiOperation(value = "活动公告")
    @GetMapping(value = "/activityInfo")
    public FebsResponse activityInfo() {
        return memberService.activityInfo();
    }
    @ApiOperation(value = "通过邀请链接领取优惠卷")
    @PostMapping(value = "/getCoupon")
    public FebsResponse getCoupon(@RequestBody GetCouponDto getCouponDto) {
        return memberService.getCoupon(getCouponDto);
    }
    @ApiOperation(value = "扫码推销员领取优惠卷")
    @PostMapping(value = "/scanCoupon")
    public FebsResponse scanCoupon(@RequestBody GetCouponDto getCouponDto) {
        return memberService.scanCoupon(getCouponDto);
    }
    @ApiOperation(value = "优惠卷列表")
    @ApiResponses({
            @ApiResponse(code = 200, message = "success", response = MallMemberCouponVo.class)
    })
    @PostMapping(value = "/memberCoupon")
    public FebsResponse memberCoupon(@RequestBody MallMemberCouponDto mallMemberCouponDto) {
        return memberService.memberCoupon(mallMemberCouponDto);
    }
    @ApiOperation(value = "创建订单优惠卷列表")
    @ApiResponses({
            @ApiResponse(code = 200, message = "success", response = MallMemberCouponVo.class)
    })
    @PostMapping(value = "/memberPayCoupon")
    public FebsResponse memberPayCoupon(@RequestBody MallMemberCouponDto mallMemberCouponDto) {
        return memberService.memberPayCoupon(mallMemberCouponDto);
    }
    @ApiOperation(value = "优惠卷详情", notes = "优惠卷详情")
    @ApiResponses({
            @ApiResponse(code = 200, message = "success", response = MallMemberCouponVo.class)
    })
    @GetMapping(value = "/couponDetails/{id}")
    public FebsResponse couponDetails(@PathVariable("id") Long id) {
        return memberService.couponDetails(id);
    }
    @ApiOperation(value = "登录事件", notes = "登录事件")
    @GetMapping(value = "/birthdayEvent")
    public FebsResponse birthdayEvent() {
        Map<String, Object> birthdayEvent = mallVipBenefitsService.birthdayEvent();
        return new FebsResponse().success().data(birthdayEvent);
    }
    @ApiOperation(value = "登录事件", notes = "登录事件")
    @GetMapping(value = "/loginEvent")
    public FebsResponse loginEvent() {
        Map<String, Object> loginEvent = memberService.loginEvent();
        return new FebsResponse().success().data(loginEvent);
    }
    @ApiOperation(value = "店铺列表")
    @ApiResponses({
            @ApiResponse(code = 200, message = "success", response = MallStoreVo.class)
    })
    @PostMapping(value = "/storeList")
    public FebsResponse storeList(@RequestBody MallStoreDto mallStoreDto) {
        return memberService.storeList(mallStoreDto);
    }
    @ApiOperation(value = "店铺机器列表")
    @ApiResponses({
            @ApiResponse(code = 200, message = "success", response = MallStoreItemVo.class)
    })
    @PostMapping(value = "/storeItemList")
    public FebsResponse storeItemList(@RequestBody MallStoreItemDto mallStoreItemDto) {
        return memberService.storeItemList(mallStoreItemDto);
    }
    @ApiOperation(value = "绑定用户")
    @PostMapping(value = "/bindStoreMember")
    public FebsResponse bindStoreMember(@RequestBody @Validated BindStoreMemberDto bindStoreMemberDto) {
        return memberService.bindStoreMember(bindStoreMemberDto);
    }
    @ApiOperation(value = "绑定列表")
    @ApiResponses({
            @ApiResponse(code = 200, message = "success", response = MallStoreMemberVo.class)
    })
    @PostMapping(value = "/bindList")
    public FebsResponse bindList() {
        return memberService.bindList();
    }
    @ApiOperation(value = "获取检测结果")
    @PostMapping(value = "/bindResult")
    public FebsResponse bindResult(@RequestBody @Validated BindResultDto bindResultDto) {
        return memberService.bindResult(bindResultDto);
    }
}