From 82d77490b23df66b120c16e2986d1ccaca1ca314 Mon Sep 17 00:00:00 2001
From: KKSU <15274802129@163.com>
Date: Tue, 08 Apr 2025 11:03:04 +0800
Subject: [PATCH] feat(mall): 添加医生绑定和授权相关功能

---
 src/main/java/cc/mrbird/febs/mall/controller/ApiMallMemberController.java |  173 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 171 insertions(+), 2 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/mall/controller/ApiMallMemberController.java b/src/main/java/cc/mrbird/febs/mall/controller/ApiMallMemberController.java
index 79d6d3f..819e3fa 100644
--- a/src/main/java/cc/mrbird/febs/mall/controller/ApiMallMemberController.java
+++ b/src/main/java/cc/mrbird/febs/mall/controller/ApiMallMemberController.java
@@ -4,11 +4,12 @@
 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.IApiMallAgentService;
 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 cc.mrbird.febs.vip.service.IMallVipBenefitsService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiResponse;
@@ -18,7 +19,7 @@
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
 
-import javax.validation.Valid;
+import java.util.Map;
 
 /**
  * @author wzy
@@ -34,6 +35,8 @@
     private final IApiMallMemberService memberService;
     private final IMallMemberWithdrawService mallMemberWithdrawService;
     private final IApiMallMemberWalletService walletService;
+    private final IApiMallAgentService iApiMallAgentService;
+    private final IMallVipBenefitsService mallVipBenefitsService;
 
     /**
      * 小程序接收用户数据,更新用户信息
@@ -192,4 +195,170 @@
         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);
+    }
+
+    @ApiOperation(value = "去授权")
+    @PostMapping(value = "/bindDoctor")
+    public FebsResponse bindDoctor(@RequestBody @Validated ApiDoctorBindDto dto) {
+        return memberService.bindDoctor(dto);
+    }
+
+    @ApiOperation(value = "我的检测用户")
+    @ApiResponses({
+            @ApiResponse(code = 200, message = "success", response = ApiDoctorListVo.class)
+    })
+    @PostMapping(value = "/doctorList")
+    public FebsResponse doctorList(@RequestBody ApiDoctorListDto dto) {
+
+        return memberService.doctorList(dto);
+    }
+
+    @ApiOperation(value = "我的授权记录")
+    @ApiResponses({
+            @ApiResponse(code = 200, message = "success", response = ApiDoctorListVo.class)
+    })
+    @PostMapping(value = "/authList")
+    public FebsResponse authList() {
+
+        return memberService.authList();
+    }
+
+    @ApiOperation(value = "我的授权记录-删除")
+    @PostMapping(value = "/authDel")
+    public FebsResponse authDel(@RequestBody @Validated ApiDoctorAuthDeleteDto dto) {
+
+        return memberService.authDel(dto);
+    }
+
+
 }

--
Gitblit v1.9.1