From a262dee3a122f081a2d31d86b851ce3df0680d1a Mon Sep 17 00:00:00 2001
From: jiangqs <jiangqs>
Date: 星期四, 15 六月 2023 17:15:25 +0800
Subject: [PATCH] 生日卡管理

---
 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MgtBirthdayGiftDto.java                 |   86 ++
 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MgtCouponPageDto.java                   |    9 
 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MgtMemberIntegralPageDto.java           |    4 
 ruoyi-common/ruoyi-common-security/src/main/java/com/ruoyi/common/security/config/WebMvcConfig.java          |    4 
 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MgtCouponAuditDto.java                  |   25 
 ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/MgtShopPageDto.java                         |    2 
 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/pojo/birthday/BirthdayGift.java             |  103 +++
 ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/MerFollowAgencyTaskDto.java                 |    2 
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtOtherConfigEditDto.java              |    9 
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/config/CustomConfigServiceImpl.java   |   56 -
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtArticlePageDto.java                  |    6 
 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/birthday/BirthdayGiftServiceImpl.java |   55 +
 ruoyi-modules/ruoyi-member/src/main/resources/mapper/birthday/BirthdayCardMapper.xml                         |    7 
 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/coupon/CouponServiceImpl.java         |  151 ++++
 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MgtMemberPageDto.java                   |    6 
 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/birthday/BirthdayGiftService.java          |   36 +
 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MgtBirthdayGetDto.java                  |   20 
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/management/MgtConfigController.java     |    8 
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtStaffSuggestPageDto.java             |   10 
 ruoyi-modules/ruoyi-system/src/main/resources/mapper/config/ArticleMapper.xml                                |    6 
 ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/MgtShopCertificatePageDto.java              |    4 
 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/MgtBirthdayGetVo.java                    |   40 +
 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/dto/MgtMemberOrderTotalDto.java               |    4 
 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/birthday/BirthdayCardService.java          |   36 +
 ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/constant/AppErrorConstant.java                 |   98 ---
 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MgtCouponListDto.java                   |   19 
 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/dto/MgtActivityPageDto.java                   |    8 
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtOperLogPageDto.java                  |    6 
 ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/MgtShopSuggestPageDto.java                  |    8 
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/config/ActivenessServiceImpl.java     |   17 
 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/pojo/birthday/BirthdayCard.java             |   98 +++
 ruoyi-modules/ruoyi-member/src/main/resources/mapper/birthday/BirthdayGiftMapper.xml                         |   24 
 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/management/MgtBirthdayController.java   |   52 +
 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/MgtCouponAuditPageVo.java                |   69 ++
 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/mapper/birthday/BirthdayCardMapper.java            |   16 
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/config/ActivenessService.java              |   10 
 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MgtBirthdayEditDto.java                 |   39 +
 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MgtMemberSuggestPageDto.java            |   12 
 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MgtShopOrderPageDto.java                   |   22 
 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MgtCouponAuditPageDto.java              |   28 
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtArticleEditDto.java                  |    5 
 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/MgtCouponSimpleListVo.java               |   21 
 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/mapper/birthday/BirthdayGiftMapper.java            |   28 
 ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/vo/MgtShopAuthPageVo.java                       |    5 
 ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopMapper.xml                                       |   23 
 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/pojo/coupon/Coupon.java                     |    6 
 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/birthday/BirthdayCardServiceImpl.java |  129 ++++
 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/dto/MgtMemberOrderPageDto.java                |    7 
 ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/MgtChangeCoopDto.java                       |    4 
 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/MgtCouponAuditGetVo.java                 |   23 
 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/coupon/CouponService.java                  |   43 +
 ruoyi-modules/ruoyi-member/src/main/resources/mapper/coupon/CouponMapper.xml                                 |   67 ++
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/GeneratorMybatisPlus.java               |    6 
 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/MgtBirthdayGiftVo.java                   |   86 ++
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtPopEditDto.java                      |    6 
 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/management/MgtCouponController.java     |   45 +
 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/mapper/coupon/CouponMapper.java                    |   23 
 57 files changed, 1,520 insertions(+), 222 deletions(-)

diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/constant/AppErrorConstant.java b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/constant/AppErrorConstant.java
index c6ea203..1bbb369 100644
--- a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/constant/AppErrorConstant.java
+++ b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/constant/AppErrorConstant.java
@@ -14,111 +14,15 @@
 
     String MOBILE_USER_DOUBLE = "手机号已创建用户,请直接登录";
 
-    String AUTHORIZE_MISS = "授权信息不完整";
-
-    String AUTHORIZE_FAILED = "授权信息解密失败";
-
-    String USER_FROZE = "用户已被冻结";
-
-    String USER_NOT_MOBILE = "用户没有手机授权";
-
-    String NO_FIND_RESULT = "未找到编辑对象";
-
-    String NO_REQUIRED_PARAM = "缺少必要参数";
-
-    String CODE_EXPIRE = "验证码已过期";
-
-    String CODE_FAILED = "验证码错误";
-
-    String COUPON_NULL = "未找到优惠券";
-
-    String COUPON_FAILED = "未满足领取条件";
-
-    String NO_COUPON = "优惠券已领取完";
-
-    String DOUBLE_COUPON = "已拥有优惠券,请勿重复领取";
-
-    String REAL_NAME_FAILED = "实名认证失败,请检查上传的身份证图片";
-
-    String REAL_NAME_DIFF = "与资料填写姓名不符,非本人身份证";
-
-    String DISTRIBUTOR_APPLY_FAILED = "已经是分销员,请勿重复申请";
-
-    String DOUBLE_USER_BANK = "请勿重复绑定银行卡";
-
-    String USER_BANK_FAILED = "获取绑定银行卡失败";
-
-    String BEYOND_WITHDRAW = "超出可提现金额";
-
-    String BEYOND_WITHDRAW_TIME = "超出可提现金额";
-
-    String USER_NO_WITHDRAW = "用户没有提现权限";
-
-    String WX_WITHDRAW_FAILED = "用户没有提现权限";
-
-    String MOBILE_FAILED = "验证手机非绑定手机";
-
     String MOBILE_DOUBLE = "手机号已被占用";
 
     String AGREEMENT_FAILED = "获取协议失败";
 
     String GOODS_DOWN = "商品已下架";
 
-    String NO_STOCK = "商品已售完";
-
-    String LIMIT_BUY = "达到商品购买限制";
-
-    String NO_GOODS = "商品不存在或已下架";
-
-    String DOUBLE_SUBMIT = "请勿重复提交";
-
-    String COUPON_USE_FAILED = "优惠券已被使用";
-
     String INTEGRAL_USE_FAILED = "积分不够支付";
 
-    String CREATE_ORDER_FAILED = "创建订单失败";
-
     String CANCEL_ERROR_ORDER = "只能取消未支付订单";
-
-    String DELETE_ERROR_ORDER = "待支付订单需取消后才能删除";
-
-    String RECEIVE_ERROR_ORDER = "只能收货已发货订单";
-
-    String EVALUATE_ERROR_ORDER = "只能评价已完成订单";
-
-    String EXPRESS_ERROR_ORDER = "订单未发货暂无物流信息";
-
-    String EXPRESS_FAILED = "物流信息获取失败";
-
-    String ORDER_FAILED = "获取订单失败";
-
-    String REFUND_ERROR_ORDER = "只有已支付订单可申请退款";
-
-    String REFUND_ORDER_ING = "订单已通过审核";
-
-    String REFUND_ORDER_END = "订单已完成售后";
-
-    String ORDER_AFTER_SALES = "订单还在售后中";
-
-    String AFTER_SALES_FAILED = "获取售后订单失败";
-
-    String AFTER_SALES_CANCEL = "撤销的售后不能修改";
-
-    String AFTER_SALES_SUCCESS = "完成的售后不能修改";
-
-    String AFTER_SALES_SEND = "订单需要审核";
-
-    String AFTER_SALES_BEYOND = "退款不能超过支付金额";
-
-    String AUTO_ORDER_FAILED = "自动获取订单失败";
-
-    String PAYMENT_FAILED = "提交支付失败";
-
-    String INVOICE_FAILED = "获取发票失败";
-
-    String INTEGRAL_COUPON_ERROR = "积分不能和优惠券同时使用";
-
-    String ADDRESS_FAILED = "只能修改未支付订单地址";
 
     String SALESPRICE_MIN = "设置价格不能低于最低限价";
 
@@ -147,4 +51,6 @@
     String ACTIVITY_ING_EDIT = "只能编辑未开始活动";
 
     String ACTIVITY_ING_DELETE = "只能删除未开始活动";
+
+    String COUPON_AUDIT_DOUBLE = "优惠券已被其他员工审核";
 }
diff --git a/ruoyi-common/ruoyi-common-security/src/main/java/com/ruoyi/common/security/config/WebMvcConfig.java b/ruoyi-common/ruoyi-common-security/src/main/java/com/ruoyi/common/security/config/WebMvcConfig.java
index 52776a8..66796d9 100644
--- a/ruoyi-common/ruoyi-common-security/src/main/java/com/ruoyi/common/security/config/WebMvcConfig.java
+++ b/ruoyi-common/ruoyi-common-security/src/main/java/com/ruoyi/common/security/config/WebMvcConfig.java
@@ -1,8 +1,8 @@
 package com.ruoyi.common.security.config;
 
+import com.ruoyi.common.security.interceptor.HeaderInterceptor;
 import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
 import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
-import com.ruoyi.common.security.interceptor.HeaderInterceptor;
 
 /**
  * 拦截器配置
@@ -30,4 +30,6 @@
     {
         return new HeaderInterceptor();
     }
+
+
 }
diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/dto/MgtActivityPageDto.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/dto/MgtActivityPageDto.java
index 000e34c..a92842a 100644
--- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/dto/MgtActivityPageDto.java
+++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/dto/MgtActivityPageDto.java
@@ -23,17 +23,17 @@
     private Long shopId;
 
     @ApiModelProperty(value = "活动开始时间")
-    private Date activityStartTime;
+    private String activityStartTime;
 
     @ApiModelProperty(value = "活动结束时间")
-    private Date activityEndTime;
+    private String activityEndTime;
 
     @ApiModelProperty(value = "活动状态0未开始1进行中2已结束")
     private Integer activityStatus;
 
     @ApiModelProperty(value = "创建开始时间")
-    private Date createStartTime;
+    private String createStartTime;
 
     @ApiModelProperty(value = "创建结束时间")
-    private Date createEndTime;
+    private String createEndTime;
 }
diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/management/MgtBirthdayController.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/management/MgtBirthdayController.java
new file mode 100644
index 0000000..1b42d9a
--- /dev/null
+++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/management/MgtBirthdayController.java
@@ -0,0 +1,52 @@
+package com.ruoyi.member.controller.management;
+
+import com.ruoyi.common.core.domain.R;
+import com.ruoyi.common.security.utils.SecurityUtils;
+import com.ruoyi.member.domain.dto.MgtBirthdayEditDto;
+import com.ruoyi.member.domain.dto.MgtBirthdayGetDto;
+import com.ruoyi.member.domain.vo.MgtBirthdayGetVo;
+import com.ruoyi.member.service.birthday.BirthdayCardService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.annotation.Resource;
+
+/**
+ * @ClassName MgtBirthdayController
+ * @Description TODO
+ * @Author jqs
+ * @Date 2023/6/15 11:52
+ * @Version 1.0
+ */
+@Api(value = "平台端生日卡相关接口", tags = "平台端生日卡相关接口", description = "平台端生日卡相关接口")
+@RestController
+@RequestMapping("/mgt/birthday")
+public class MgtBirthdayController {
+
+    @Resource
+    private BirthdayCardService birthdayCardService;
+
+    @RequestMapping(value = "/editMgtBirthdayCard", method = RequestMethod.POST)
+    @ApiOperation(value = "平台编辑生日卡")
+    public R editMgtBirthdayCard(@RequestBody MgtBirthdayEditDto mgtBirthdayEditDto) {
+        Long userId = SecurityUtils.getUserId();
+        mgtBirthdayEditDto.setUserId(userId);
+        birthdayCardService.editMgtBirthdayCard(mgtBirthdayEditDto);
+        return R.ok();
+    }
+
+    @RequestMapping(value = "/getMgtBirthdayCard", method = RequestMethod.POST)
+    @ApiOperation(value = "平台获取生日卡编辑信息")
+    public R<MgtBirthdayGetVo> getMgtBirthdayCard(@RequestBody MgtBirthdayGetDto mgtBirthdayGetDto) {
+        Long userId = SecurityUtils.getUserId();
+        mgtBirthdayGetDto.setUserId(userId);
+        MgtBirthdayGetVo mgtBirthdayGetVo = birthdayCardService.getMgtBirthdayCard(mgtBirthdayGetDto);
+        return R.ok(mgtBirthdayGetVo);
+    }
+
+
+}
diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/management/MgtCouponController.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/management/MgtCouponController.java
index dcd5cb6..4da3020 100644
--- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/management/MgtCouponController.java
+++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/management/MgtCouponController.java
@@ -3,10 +3,8 @@
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.ruoyi.common.core.domain.R;
 import com.ruoyi.common.security.utils.SecurityUtils;
-import com.ruoyi.member.domain.dto.MgtCouponEditDto;
-import com.ruoyi.member.domain.dto.MgtCouponPageDto;
-import com.ruoyi.member.domain.vo.MgtCouponGetVo;
-import com.ruoyi.member.domain.vo.MgtCouponPageVo;
+import com.ruoyi.member.domain.dto.*;
+import com.ruoyi.member.domain.vo.*;
 import com.ruoyi.member.service.coupon.CouponService;
 import com.ruoyi.system.api.domain.dto.MgtBaseGetDto;
 import io.swagger.annotations.Api;
@@ -49,7 +47,7 @@
 
     @RequestMapping(value = "/getMgtCouponVo", method = RequestMethod.POST)
     @ApiOperation(value = "平台获取优惠券编辑信息")
-    public R<MgtCouponGetVo> pageMgtCoupon(@RequestBody MgtBaseGetDto mgtBaseGetDto) {
+    public R<MgtCouponGetVo> getMgtCouponVo(@RequestBody MgtBaseGetDto mgtBaseGetDto) {
         Long userId = SecurityUtils.getUserId();
         mgtBaseGetDto.setUserId(userId);
         MgtCouponGetVo mgtCouponGetVo = couponService.getMgtCouponVo(mgtBaseGetDto.getId());
@@ -73,4 +71,41 @@
         couponService.deleteMgtCoupon(mgtBaseGetDto);
         return R.ok();
     }
+
+    @RequestMapping(value = "/listMgtCouponSimpleVo", method = RequestMethod.POST)
+    @ApiOperation(value = "获取优惠券选择列表")
+    public R<List<MgtCouponSimpleListVo>> listMgtCouponSimpleVo(@RequestBody MgtCouponListDto mgtCouponListDto) {
+        List<MgtCouponSimpleListVo> mgtCouponSimpleListVoList = couponService.listMgtCouponSimpleVo(mgtCouponListDto);
+        return R.ok(mgtCouponSimpleListVoList);
+    }
+
+    @RequestMapping(value = "/pageMgtAuditCoupon", method = RequestMethod.POST)
+    @ApiOperation(value = "平台分页获取优惠券审核列表")
+    public R<Page<MgtCouponAuditPageVo>> pageMgtAuditCoupon(@RequestBody MgtCouponAuditPageDto mgtCouponAuditPageDto) {
+        Long userId = SecurityUtils.getUserId();
+        mgtCouponAuditPageDto.setUserId(userId);
+        Page<MgtCouponAuditPageVo> page = new Page<>();
+        page.setSize(mgtCouponAuditPageDto.getPageSize());
+        page.setCurrent(mgtCouponAuditPageDto.getPageNum());
+        List<MgtCouponAuditPageVo> mgtCouponPageVoList = couponService.pageMgtAuditCoupon(page,mgtCouponAuditPageDto);
+        return R.ok(page.setRecords(mgtCouponPageVoList));
+    }
+
+    @RequestMapping(value = "/getMgtCouponAuditVo", method = RequestMethod.POST)
+    @ApiOperation(value = "平台获取优惠券编辑信息")
+    public R<MgtCouponAuditGetVo> getMgtCouponAuditVo(@RequestBody MgtBaseGetDto mgtBaseGetDto) {
+        Long userId = SecurityUtils.getUserId();
+        mgtBaseGetDto.setUserId(userId);
+        MgtCouponAuditGetVo mgtCouponAuditVo = couponService.getMgtCouponAuditVo(mgtBaseGetDto.getId());
+        return R.ok(mgtCouponAuditVo);
+    }
+
+    @RequestMapping(value = "/auditMgtCoupon", method = RequestMethod.POST)
+    @ApiOperation(value = "平台审核优惠券")
+    public R auditMgtCoupon(@RequestBody MgtCouponAuditDto mgtCouponAuditDto) {
+        Long userId = SecurityUtils.getUserId();
+        mgtCouponAuditDto.setUserId(userId);
+        couponService.auditMgtCoupon(mgtCouponAuditDto);
+        return R.ok();
+    }
 }
diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MgtBirthdayEditDto.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MgtBirthdayEditDto.java
new file mode 100644
index 0000000..b3258af
--- /dev/null
+++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MgtBirthdayEditDto.java
@@ -0,0 +1,39 @@
+package com.ruoyi.member.domain.dto;
+
+import com.ruoyi.system.api.domain.dto.MgtBaseDto;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.List;
+
+/**
+ * @ClassName MgtBirthdayEditDto
+ * @Description TODO
+ * @Author jqs
+ * @Date 2023/6/15 11:54
+ * @Version 1.0
+ */
+@Data
+public class MgtBirthdayEditDto extends MgtBaseDto {
+
+    @ApiModelProperty(value = "生日卡id 新增不传")
+    private Long cardId;
+
+    @ApiModelProperty(value = "生日卡状态1开启2关闭")
+    private Integer cardStatus;
+
+    @ApiModelProperty(value = "适用地区标记1全部2指定")
+    private Integer areaFlag;
+
+    @ApiModelProperty(value = "适用地区code集合 多个用,隔开")
+    private String designatedArea;
+
+    @ApiModelProperty(value = "适用店铺标记1全部2指定")
+    private Integer shopFlag;
+
+    @ApiModelProperty(value = "适用店铺 多个用,隔开")
+    private String applicableShop;
+
+    @ApiModelProperty(value = "礼品列表")
+    private List<MgtBirthdayGiftDto> mgtBirthdayGiftDtoList;
+}
diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MgtBirthdayGetDto.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MgtBirthdayGetDto.java
new file mode 100644
index 0000000..5cf66ef
--- /dev/null
+++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MgtBirthdayGetDto.java
@@ -0,0 +1,20 @@
+package com.ruoyi.member.domain.dto;
+
+import com.ruoyi.system.api.domain.dto.MgtBaseDto;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @ClassName MgtBirthdayGetDto
+ * @Description TODO
+ * @Author jqs
+ * @Date 2023/6/15 15:09
+ * @Version 1.0
+ */
+@Data
+public class MgtBirthdayGetDto extends MgtBaseDto {
+
+    @ApiModelProperty(value = "商户id")
+    private Long shopId;
+
+}
diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MgtBirthdayGiftDto.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MgtBirthdayGiftDto.java
new file mode 100644
index 0000000..64e1e7c
--- /dev/null
+++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MgtBirthdayGiftDto.java
@@ -0,0 +1,86 @@
+package com.ruoyi.member.domain.dto;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+/**
+ * @ClassName MgtBirthdayGiftDto
+ * @Description TODO
+ * @Author jqs
+ * @Date 2023/6/15 11:57
+ * @Version 1.0
+ */
+@Data
+public class MgtBirthdayGiftDto {
+
+
+    /**
+     * 生日卡id
+     */
+    @ApiModelProperty(value = "生日卡id")
+    private Long cardId;
+
+    /**
+     * 礼物类型1优惠券2商品3现金4实物
+     */
+    @ApiModelProperty(value = "礼物类型1优惠券2商品3现金4实物")
+    private Integer giftType;
+
+    /**
+     * 优惠券id
+     */
+    @ApiModelProperty(value = "优惠券id")
+    private String couponId;
+
+    @ApiModelProperty(value = "优惠券名称")
+    private String couponName;
+    /**
+     * 优惠券数量
+     */
+    @ApiModelProperty(value = "优惠券数量")
+    private Integer couponNumber;
+
+    /**
+     * 商品id
+     */
+    @ApiModelProperty(value = "商品id")
+    private String goodsId;
+
+    @ApiModelProperty(value = "商品名称")
+    private String goodsName;
+
+    /**
+     * 商品数量
+     */
+    @ApiModelProperty(value = "商品数量")
+    private Integer goodsNumber;
+
+    /**
+     * 实物名称
+     */
+    @ApiModelProperty(value = "实物名称")
+    private String giftName;
+
+    /**
+     * 实物数量
+     */
+    @ApiModelProperty(value = "实物数量")
+    private Integer giftNumber;
+
+    /**
+     * 现金
+     */
+    @ApiModelProperty(value = "现金")
+    private BigDecimal money;
+
+    /**
+     * 中奖概率
+     */
+    @ApiModelProperty(value = "中奖概率")
+    private BigDecimal winningProbability;
+
+
+
+}
diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MgtCouponAuditDto.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MgtCouponAuditDto.java
new file mode 100644
index 0000000..ebe7380
--- /dev/null
+++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MgtCouponAuditDto.java
@@ -0,0 +1,25 @@
+package com.ruoyi.member.domain.dto;
+
+import com.ruoyi.system.api.domain.dto.MgtBaseDto;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @ClassName MgtCouponAduitDto
+ * @Description TODO
+ * @Author jqs
+ * @Date 2023/6/15 16:41
+ * @Version 1.0
+ */
+@Data
+public class MgtCouponAuditDto extends MgtBaseDto {
+
+    @ApiModelProperty(value = "优惠券id")
+    private String couponId;
+
+    @ApiModelProperty("审核状态2审核通过3审核拒绝")
+    private Integer auditStatus;
+
+    @ApiModelProperty("拒绝理由")
+    private String auditReason;
+}
diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MgtCouponAuditPageDto.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MgtCouponAuditPageDto.java
new file mode 100644
index 0000000..7c7bab2
--- /dev/null
+++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MgtCouponAuditPageDto.java
@@ -0,0 +1,28 @@
+package com.ruoyi.member.domain.dto;
+
+import com.ruoyi.system.api.domain.dto.MgtPageDto;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @ClassName MgtCouponAuditPageDto
+ * @Description TODO
+ * @Author jqs
+ * @Date 2023/6/15 16:19
+ * @Version 1.0
+ */
+@Data
+public class MgtCouponAuditPageDto extends MgtPageDto {
+
+    @ApiModelProperty("1申请中2审核通过3审核拒绝")
+    private Integer auditStatus;
+
+    @ApiModelProperty("优惠券名称")
+    private String couponName;
+
+    @ApiModelProperty(value = "创建开始时间")
+    private String createStartTime;
+
+    @ApiModelProperty(value = "创建结束时间")
+    private String createEndTime;
+}
diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MgtCouponListDto.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MgtCouponListDto.java
new file mode 100644
index 0000000..624b37c
--- /dev/null
+++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MgtCouponListDto.java
@@ -0,0 +1,19 @@
+package com.ruoyi.member.domain.dto;
+
+import com.ruoyi.system.api.domain.dto.MgtBaseDto;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @ClassName MgtCouponListDto
+ * @Description TODO
+ * @Author jqs
+ * @Date 2023/6/15 14:51
+ * @Version 1.0
+ */
+@Data
+public class MgtCouponListDto extends MgtBaseDto {
+
+    @ApiModelProperty(value = "商户id")
+    private Long shopId;
+}
diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MgtCouponPageDto.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MgtCouponPageDto.java
index e5f4ad3..0596a1b 100644
--- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MgtCouponPageDto.java
+++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MgtCouponPageDto.java
@@ -4,8 +4,6 @@
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
-import java.util.Date;
-
 /**
  * @ClassName MgtCouponPageDto
  * @Description TODO
@@ -16,12 +14,15 @@
 @Data
 public class MgtCouponPageDto extends MgtPageDto {
 
+    @ApiModelProperty("商户id")
+    private Long shopId;
+
     @ApiModelProperty("优惠券名称")
     private String couponName;
 
     @ApiModelProperty(value = "创建开始时间")
-    private Date createStartTime;
+    private String createStartTime;
 
     @ApiModelProperty(value = "创建结束时间")
-    private Date createEndTime;
+    private String createEndTime;
 }
diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MgtMemberIntegralPageDto.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MgtMemberIntegralPageDto.java
index 69b7776..4c5f7a5 100644
--- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MgtMemberIntegralPageDto.java
+++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MgtMemberIntegralPageDto.java
@@ -21,10 +21,10 @@
     private Long memberUserId;
 
     @ApiModelProperty(value = "变动开始时间")
-    private Date changeStartDate;
+    private String changeStartDate;
 
     @ApiModelProperty(value = "变动结束时间")
-    private Date changeEndDate;
+    private String changeEndDate;
 
 
 }
diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MgtMemberPageDto.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MgtMemberPageDto.java
index f612929..2ac30e1 100644
--- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MgtMemberPageDto.java
+++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MgtMemberPageDto.java
@@ -4,8 +4,6 @@
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
-import java.util.Date;
-
 /**
  * @author jqs34
  * @ClassName MgtMemerPageDto
@@ -69,10 +67,10 @@
     private Long activenessId;
 
     @ApiModelProperty(value = "活跃度开始时间",hidden = true)
-    private Date actStartDate;
+    private String actStartDate;
 
     @ApiModelProperty(value = "活跃度结束时间",hidden = true)
-    private Date actEndDate;
+    private String actEndDate;
 
     @ApiModelProperty(value = "开始消费次数")
     private Integer startPayCount;
diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MgtMemberSuggestPageDto.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MgtMemberSuggestPageDto.java
index 955b091..d9472b7 100644
--- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MgtMemberSuggestPageDto.java
+++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MgtMemberSuggestPageDto.java
@@ -20,10 +20,10 @@
     private String keyword;
 
     @ApiModelProperty(value = "提交开始时间")
-    private Date createStartTime;
+    private String createStartTime;
 
     @ApiModelProperty(value = "提交结束时间")
-    private Date createEndTime;
+    private String createEndTime;
 
     @ApiModelProperty(value = "建议状态0未回复1已回复")
     private Integer suggestStatus;
@@ -35,16 +35,16 @@
     private String tags;
 
     @ApiModelProperty(value = "商户回复开始时间")
-    private Date shopReplayStartTime;
+    private String shopReplayStartTime;
 
     @ApiModelProperty(value = "商户回复结束时间")
-    private Date shopReplayEndTime;
+    private String shopReplayEndTime;
 
     @ApiModelProperty(value = "平台回复开始时间")
-    private Date replayStartTime;
+    private String replayStartTime;
 
     @ApiModelProperty(value = "平台回复结束时间")
-    private Date replayEndTime;
+    private String replayEndTime;
 
     @ApiModelProperty(value = "建议类型1平台2商户")
     private Integer suggestType;
diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/pojo/birthday/BirthdayCard.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/pojo/birthday/BirthdayCard.java
new file mode 100644
index 0000000..834e456
--- /dev/null
+++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/pojo/birthday/BirthdayCard.java
@@ -0,0 +1,98 @@
+package com.ruoyi.member.domain.pojo.birthday;
+
+import com.baomidou.mybatisplus.activerecord.Model;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author jqs
+ * @since 2023-06-15
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@TableName("t_birthday_card")
+public class BirthdayCard extends Model<BirthdayCard> {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 生日卡id
+     */
+    @TableId(value = "card_id", type = IdType.AUTO)
+    private Long cardId;
+    /**
+     * 删除标记
+     */
+    @TableField("del_flag")
+    private Integer delFlag;
+    /**
+     * 商户id
+     */
+    @TableField("shop_id")
+    private Long shopId;
+    /**
+     * 生日卡状态1开启2关闭
+     */
+    @TableField("card_status")
+    private Integer cardStatus;
+    /**
+     * 关闭时间
+     */
+    @TableField("close_time")
+    private Date closeTime;
+    /**
+     * 开启时间
+     */
+    @TableField("open_time")
+    private Date openTime;
+    /**
+     * 创建时间
+     */
+    @TableField("create_time")
+    private Date createTime;
+    /**
+     * 适用区域标记1全部2指定
+     */
+    @TableField("area_flag")
+    private Integer areaFlag;
+    /**
+     * 适用区域
+     */
+    @TableField("designated_area")
+    private String designatedArea;
+    /**
+     * 适用店铺标记1全部2指定
+     */
+    @TableField("shop_flag")
+    private Integer shopFlag;
+    /**
+     * 适用店铺
+     */
+    @TableField("applicable_shop")
+    private String applicableShop;
+    /**
+     * 创建用户id
+     */
+    @TableField("create_user_id")
+    private Long createUserId;
+
+
+    @Override
+    protected Serializable pkVal() {
+        return this.cardId;
+    }
+
+}
diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/pojo/birthday/BirthdayGift.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/pojo/birthday/BirthdayGift.java
new file mode 100644
index 0000000..5dc1a79
--- /dev/null
+++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/pojo/birthday/BirthdayGift.java
@@ -0,0 +1,103 @@
+package com.ruoyi.member.domain.pojo.birthday;
+
+import com.baomidou.mybatisplus.activerecord.Model;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author jqs
+ * @since 2023-06-15
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@TableName("t_birthday_gift")
+public class BirthdayGift extends Model<BirthdayGift> {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 礼品id
+     */
+    @TableId(value = "gift_id", type = IdType.AUTO)
+    private Long giftId;
+    /**
+     * 删除标记
+     */
+    @TableField("del_flag")
+    private Integer delFlag;
+    /**
+     * 生日卡id
+     */
+    @TableField("card_id")
+    private Long cardId;
+    /**
+     * 礼物类型1优惠券2商品3现金4实物
+     */
+    @TableField("gift_type")
+    private Integer giftType;
+    /**
+     * 优惠券id
+     */
+    @TableField("coupon_id")
+    private String couponId;
+
+    @TableField("coupon_name")
+    private String couponName;
+    /**
+     * 优惠券数量
+     */
+    @TableField("coupon_number")
+    private Integer couponNumber;
+    /**
+     * 商品id
+     */
+    @TableField("goods_id")
+    private String goodsId;
+
+    @TableField("goods_name")
+    private String goodsName;
+    /**
+     * 商品数量
+     */
+    @TableField("goods_number")
+    private Integer goodsNumber;
+    /**
+     * 实物名称
+     */
+    @TableField("gift_name")
+    private String giftName;
+    /**
+     * 实物数量
+     */
+    @TableField("gift_number")
+    private Integer giftNumber;
+    /**
+     * 现金
+     */
+    private BigDecimal money;
+    /**
+     * 中奖概率
+     */
+    @TableField("winning_probability")
+    private BigDecimal winningProbability;
+
+
+    @Override
+    protected Serializable pkVal() {
+        return this.giftId;
+    }
+
+}
diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/pojo/coupon/Coupon.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/pojo/coupon/Coupon.java
index d316e2f..8c9076f 100644
--- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/pojo/coupon/Coupon.java
+++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/pojo/coupon/Coupon.java
@@ -165,6 +165,12 @@
     @TableField("relation_activity_id")
     private String relationActivityId;
 
+    /**
+     * 领取限制数量
+     */
+    @TableField("limit_number")
+    private Integer limitNumber;
+    
     @Override
     protected Serializable pkVal() {
         return this.couponId;
diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/MgtBirthdayGetVo.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/MgtBirthdayGetVo.java
new file mode 100644
index 0000000..ed59162
--- /dev/null
+++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/MgtBirthdayGetVo.java
@@ -0,0 +1,40 @@
+package com.ruoyi.member.domain.vo;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.List;
+
+/**
+ * @ClassName MgtBirthdayGetVo
+ * @Description TODO
+ * @Author jqs
+ * @Date 2023/6/15 15:09
+ * @Version 1.0
+ */
+@Data
+public class MgtBirthdayGetVo {
+
+    @ApiModelProperty(value = "生日卡id")
+    private Long cardId;
+
+    @ApiModelProperty(value = "生日卡状态1开启2关闭")
+    private Integer cardStatus;
+
+    @ApiModelProperty(value = "适用地区标记1全部2指定")
+    private Integer areaFlag;
+
+    @ApiModelProperty(value = "适用地区code集合 多个用,隔开")
+    private String designatedArea;
+
+    @ApiModelProperty(value = "适用店铺标记1全部2指定")
+    private Integer shopFlag;
+
+    @ApiModelProperty(value = "适用店铺 多个用,隔开")
+    private String applicableShop;
+
+    @ApiModelProperty(value = "礼品列表")
+    private List<MgtBirthdayGiftVo> mgtBirthdayGiftVoList;
+
+
+}
diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/MgtBirthdayGiftVo.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/MgtBirthdayGiftVo.java
new file mode 100644
index 0000000..95c9858
--- /dev/null
+++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/MgtBirthdayGiftVo.java
@@ -0,0 +1,86 @@
+package com.ruoyi.member.domain.vo;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+/**
+ * @ClassName MgtBirthdayGiftDto
+ * @Description TODO
+ * @Author jqs
+ * @Date 2023/6/15 11:57
+ * @Version 1.0
+ */
+@Data
+public class MgtBirthdayGiftVo {
+
+
+    /**
+     * 生日卡id
+     */
+    @ApiModelProperty(value = "生日卡id")
+    private Long cardId;
+
+    /**
+     * 礼物类型1优惠券2商品3现金4实物
+     */
+    @ApiModelProperty(value = "礼物类型1优惠券2商品3现金4实物")
+    private Integer giftType;
+
+    /**
+     * 优惠券id
+     */
+    @ApiModelProperty(value = "优惠券id")
+    private String couponId;
+
+    @ApiModelProperty(value = "优惠券名称")
+    private String couponName;
+    /**
+     * 优惠券数量
+     */
+    @ApiModelProperty(value = "优惠券数量")
+    private Integer couponNumber;
+
+    /**
+     * 商品id
+     */
+    @ApiModelProperty(value = "商品id")
+    private String goodsId;
+
+    @ApiModelProperty(value = "商品名称")
+    private String goodsName;
+
+    /**
+     * 商品数量
+     */
+    @ApiModelProperty(value = "商品数量")
+    private Integer goodsNumber;
+
+    /**
+     * 实物名称
+     */
+    @ApiModelProperty(value = "实物名称")
+    private String giftName;
+
+    /**
+     * 实物数量
+     */
+    @ApiModelProperty(value = "实物数量")
+    private Integer giftNumber;
+
+    /**
+     * 现金
+     */
+    @ApiModelProperty(value = "现金")
+    private BigDecimal money;
+
+    /**
+     * 中奖概率
+     */
+    @ApiModelProperty(value = "中奖概率")
+    private BigDecimal winningProbability;
+
+
+
+}
diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/MgtCouponAuditGetVo.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/MgtCouponAuditGetVo.java
new file mode 100644
index 0000000..7376949
--- /dev/null
+++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/MgtCouponAuditGetVo.java
@@ -0,0 +1,23 @@
+package com.ruoyi.member.domain.vo;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.List;
+
+/**
+ * @ClassName MgtCouponAuditGetVo
+ * @Description TODO
+ * @Author jqs
+ * @Date 2023/6/15 16:33
+ * @Version 1.0
+ */
+@Data
+public class MgtCouponAuditGetVo {
+
+    @ApiModelProperty(value = "选择商品集合")
+    private List<MgtCouponGoodsListVo> relGoodsList;
+
+    @ApiModelProperty(value = "关联用户集合")
+    private List<MgtCouponMemberListVo> relUserList;
+}
diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/MgtCouponAuditPageVo.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/MgtCouponAuditPageVo.java
new file mode 100644
index 0000000..11dec5c
--- /dev/null
+++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/MgtCouponAuditPageVo.java
@@ -0,0 +1,69 @@
+package com.ruoyi.member.domain.vo;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * @ClassName MgtCouponAuditPageVo
+ * @Description TODO
+ * @Author jqs
+ * @Date 2023/6/15 15:50
+ * @Version 1.0
+ */
+@Data
+public class MgtCouponAuditPageVo {
+
+    @ApiModelProperty(value = "优惠券id")
+    private String couponId;
+
+    @ApiModelProperty("店铺名称")
+    private String shopName;
+
+    @ApiModelProperty("优惠券名称")
+    private String couponName;
+
+
+    @ApiModelProperty(value = "有效期类型1.时间段2.领取之日起",hidden = true)
+    private Integer validTimeType;
+
+    @ApiModelProperty(value = "有效开始时间",hidden = true)
+    private Date validStartTime;
+
+    @ApiModelProperty(value = "有效截止时间",hidden = true)
+    private Date validEndTime;
+
+    @ApiModelProperty(value = "有效期",hidden = true)
+    private Integer validDay;
+
+    @ApiModelProperty(value = "有效期")
+    private String validTime;
+
+
+    @ApiModelProperty(value = "使用范围")
+    private String useScope;
+
+    @ApiModelProperty(value = "发送方式")
+    private String sendType;
+
+    @ApiModelProperty(value = "发送对象")
+    private String sendTarget;
+
+    @ApiModelProperty(value = "领取限制数量")
+    private Integer limitNumber;
+
+
+    @ApiModelProperty(value = "发送时间")
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date sendTime;
+
+    @ApiModelProperty("创建时间")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date createTime;
+
+    @ApiModelProperty("审核状态1申请中2审核通过3审核拒绝")
+    private String auditStatus;
+
+}
diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/MgtCouponSimpleListVo.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/MgtCouponSimpleListVo.java
new file mode 100644
index 0000000..693d0bb
--- /dev/null
+++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/MgtCouponSimpleListVo.java
@@ -0,0 +1,21 @@
+package com.ruoyi.member.domain.vo;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @ClassName MgtCouponSimpleListVo
+ * @Description TODO
+ * @Author jqs
+ * @Date 2023/6/15 14:50
+ * @Version 1.0
+ */
+@Data
+public class MgtCouponSimpleListVo {
+
+    @ApiModelProperty(value = "优惠券id")
+    private String couponId;
+
+    @ApiModelProperty("优惠券名称")
+    private String couponName;
+}
diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/mapper/birthday/BirthdayCardMapper.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/mapper/birthday/BirthdayCardMapper.java
new file mode 100644
index 0000000..9c4a33e
--- /dev/null
+++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/mapper/birthday/BirthdayCardMapper.java
@@ -0,0 +1,16 @@
+package com.ruoyi.member.mapper.birthday;
+
+import com.ruoyi.member.domain.pojo.birthday.BirthdayCard;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author jqs
+ * @since 2023-06-15
+ */
+public interface BirthdayCardMapper extends BaseMapper<BirthdayCard> {
+
+}
diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/mapper/birthday/BirthdayGiftMapper.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/mapper/birthday/BirthdayGiftMapper.java
new file mode 100644
index 0000000..bf8fd45
--- /dev/null
+++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/mapper/birthday/BirthdayGiftMapper.java
@@ -0,0 +1,28 @@
+package com.ruoyi.member.mapper.birthday;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ruoyi.member.domain.pojo.birthday.BirthdayGift;
+import com.ruoyi.member.domain.vo.MgtBirthdayGiftVo;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author jqs
+ * @since 2023-06-15
+ */
+public interface BirthdayGiftMapper extends BaseMapper<BirthdayGift> {
+
+    /**
+     * @description
+     * @author  jqs
+     * @date    2023/6/15 15:37
+     * @param cardId
+     * @return  List<MgtBirthdayGiftDto>
+     */
+    List<MgtBirthdayGiftVo> listGiftVoByCardId(@Param("cardId")Long cardId);
+}
diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/mapper/coupon/CouponMapper.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/mapper/coupon/CouponMapper.java
index cd83dc9..5e1afe9 100644
--- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/mapper/coupon/CouponMapper.java
+++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/mapper/coupon/CouponMapper.java
@@ -2,9 +2,13 @@
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.member.domain.dto.MgtCouponAuditPageDto;
+import com.ruoyi.member.domain.dto.MgtCouponListDto;
 import com.ruoyi.member.domain.dto.MgtCouponPageDto;
 import com.ruoyi.member.domain.pojo.coupon.Coupon;
+import com.ruoyi.member.domain.vo.MgtCouponAuditPageVo;
 import com.ruoyi.member.domain.vo.MgtCouponPageVo;
+import com.ruoyi.member.domain.vo.MgtCouponSimpleListVo;
 import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
@@ -27,7 +31,24 @@
      * @param mgtCouponPageDto
      * @return  List<MgtCouponPageVo>
      */
-    List<MgtCouponPageVo> pageMgtCoupon(Page page, @Param("param") MgtCouponPageDto mgtCouponPageDto);
+    List<MgtCouponPageVo> pageMgtCoupon(Page page, @Param("param")MgtCouponPageDto mgtCouponPageDto);
 
+    /**
+     * @description  获取优惠券选择列表
+     * @author  jqs
+     * @date    2023/6/15 14:59
+     * @param mgtCouponListDto
+     * @return  List<MgtCouponSimpleListVo>
+     */
+    List<MgtCouponSimpleListVo> listMgtCouponSimpleVo(@Param("param")MgtCouponListDto mgtCouponListDto);
 
+    /**
+     * @description  获取商户优惠券审核列表
+     * @author  jqs
+     * @date    2023/6/15 16:20
+     * @param page
+     * @param mgtCouponAuditPageDto
+     * @return  List<MgtCouponAuditPageVo>
+     */
+    List<MgtCouponAuditPageVo> pageMgtAuditCoupon(Page page, @Param("param")MgtCouponAuditPageDto mgtCouponAuditPageDto);
 }
diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/birthday/BirthdayCardService.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/birthday/BirthdayCardService.java
new file mode 100644
index 0000000..efa9904
--- /dev/null
+++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/birthday/BirthdayCardService.java
@@ -0,0 +1,36 @@
+package com.ruoyi.member.service.birthday;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ruoyi.member.domain.dto.MgtBirthdayEditDto;
+import com.ruoyi.member.domain.dto.MgtBirthdayGetDto;
+import com.ruoyi.member.domain.pojo.birthday.BirthdayCard;
+import com.ruoyi.member.domain.vo.MgtBirthdayGetVo;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author jqs
+ * @since 2023-06-15
+ */
+public interface BirthdayCardService extends IService<BirthdayCard> {
+
+    /**
+     * @description  平台编辑生日卡
+     * @author  jqs
+     * @date    2023/6/15 13:55
+     * @param mgtBirthdayEditDto
+     * @return  void
+     */
+    void editMgtBirthdayCard(MgtBirthdayEditDto mgtBirthdayEditDto);
+
+    /**
+     * @description  平台获取生日卡编辑信息
+     * @author  jqs
+     * @date    2023/6/15 15:26
+     * @param mgtBirthdayGetDto
+     * @return  MgtBirthdayGetVo
+     */
+    MgtBirthdayGetVo getMgtBirthdayCard(MgtBirthdayGetDto mgtBirthdayGetDto);
+}
diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/birthday/BirthdayGiftService.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/birthday/BirthdayGiftService.java
new file mode 100644
index 0000000..2485e27
--- /dev/null
+++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/birthday/BirthdayGiftService.java
@@ -0,0 +1,36 @@
+package com.ruoyi.member.service.birthday;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ruoyi.member.domain.pojo.birthday.BirthdayGift;
+import com.ruoyi.member.domain.vo.MgtBirthdayGiftVo;
+
+import java.util.List;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author jqs
+ * @since 2023-06-15
+ */
+public interface BirthdayGiftService extends IService<BirthdayGift> {
+
+    /**
+     * @description  通过id删除
+     * @author  jqs
+     * @date    2023/6/15 14:37
+     * @param cardId
+     * @return  void
+     */
+    void deleteByCardId(Long cardId);
+
+    /**
+     * @description
+     * @author  jqs
+     * @date    2023/6/15 15:37
+     * @param cardId
+     * @return  List<MgtBirthdayGiftDto>
+     */
+    List<MgtBirthdayGiftVo> listGiftVoByCardId(Long cardId);
+}
diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/coupon/CouponService.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/coupon/CouponService.java
index 54b026c..54ec5aa 100644
--- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/coupon/CouponService.java
+++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/coupon/CouponService.java
@@ -1,12 +1,10 @@
 package com.ruoyi.member.service.coupon;
 
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.ruoyi.member.domain.dto.MgtCouponEditDto;
-import com.ruoyi.member.domain.dto.MgtCouponPageDto;
+import com.ruoyi.member.domain.dto.*;
 import com.ruoyi.member.domain.pojo.coupon.Coupon;
 import com.baomidou.mybatisplus.extension.service.IService;
-import com.ruoyi.member.domain.vo.MgtCouponGetVo;
-import com.ruoyi.member.domain.vo.MgtCouponPageVo;
+import com.ruoyi.member.domain.vo.*;
 import com.ruoyi.system.api.domain.dto.MgtBaseGetDto;
 
 import java.util.List;
@@ -67,4 +65,41 @@
      * @return  void
      */
     void timingSendCoupon();
+
+    /**
+     * @description  获取优惠券选择列表
+     * @author  jqs
+     * @date    2023/6/15 14:59
+     * @param mgtCouponListDto
+     * @return  List<MgtCouponSimpleListVo>
+     */
+    List<MgtCouponSimpleListVo> listMgtCouponSimpleVo(MgtCouponListDto mgtCouponListDto);
+
+    /**
+     * @description  获取商户优惠券审核列表
+     * @author  jqs
+     * @date    2023/6/15 16:20
+     * @param page
+     * @param mgtCouponAuditPageDto
+     * @return  List<MgtCouponAuditPageVo>
+     */
+    List<MgtCouponAuditPageVo> pageMgtAuditCoupon(Page page, MgtCouponAuditPageDto mgtCouponAuditPageDto);
+
+    /**
+     * @description  获取优惠券审核信息
+     * @author  jqs
+     * @date    2023/6/15 16:36
+     * @param couponId
+     * @return  MgtCouponAuditGetVo
+     */
+    MgtCouponAuditGetVo getMgtCouponAuditVo(String couponId);
+
+    /**
+     * @description  审核优惠券
+     * @author  jqs
+     * @date    2023/6/15 16:46
+     * @param mgtCouponAuditDto
+     * @return  void
+     */
+    void auditMgtCoupon(MgtCouponAuditDto mgtCouponAuditDto);
 }
diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/birthday/BirthdayCardServiceImpl.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/birthday/BirthdayCardServiceImpl.java
new file mode 100644
index 0000000..2639dcd
--- /dev/null
+++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/birthday/BirthdayCardServiceImpl.java
@@ -0,0 +1,129 @@
+package com.ruoyi.member.service.impl.birthday;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.member.domain.dto.MgtBirthdayEditDto;
+import com.ruoyi.member.domain.dto.MgtBirthdayGetDto;
+import com.ruoyi.member.domain.dto.MgtBirthdayGiftDto;
+import com.ruoyi.member.domain.pojo.birthday.BirthdayCard;
+import com.ruoyi.member.domain.pojo.birthday.BirthdayGift;
+import com.ruoyi.member.domain.vo.MgtBirthdayGetVo;
+import com.ruoyi.member.domain.vo.MgtBirthdayGiftVo;
+import com.ruoyi.member.mapper.birthday.BirthdayCardMapper;
+import com.ruoyi.member.service.birthday.BirthdayCardService;
+import com.ruoyi.member.service.birthday.BirthdayGiftService;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * <p>
+ *  服务实现类
+ * </p>
+ *
+ * @author jqs
+ * @since 2023-06-15
+ */
+@Service
+public class BirthdayCardServiceImpl extends ServiceImpl<BirthdayCardMapper, BirthdayCard> implements BirthdayCardService {
+
+
+    @Resource
+    private BirthdayGiftService birthdayGiftService;
+
+    /**
+     * @description  平台编辑生日卡
+     * @author  jqs
+     * @date    2023/6/15 13:55
+     * @param mgtBirthdayEditDto
+     * @return  void
+     */
+    @Override
+    public void editMgtBirthdayCard(MgtBirthdayEditDto mgtBirthdayEditDto){
+        if(mgtBirthdayEditDto.getCardId()!=null){
+            BirthdayCard birthdayCardOld = this.getById(mgtBirthdayEditDto.getCardId());
+            birthdayCardOld.setDelFlag(1);
+            this.saveOrUpdate(birthdayCardOld);
+            birthdayGiftService.deleteByCardId(birthdayCardOld.getCardId());
+        }
+        BirthdayCard birthdayCard = new BirthdayCard();
+        birthdayCard.setDelFlag(0);
+        birthdayCard.setShopId(0L);
+        birthdayCard.setCardStatus(mgtBirthdayEditDto.getCardStatus());
+        if(mgtBirthdayEditDto.getCardStatus()==1){
+            birthdayCard.setOpenTime(new Date());
+        }else{
+            birthdayCard.setCloseTime(new Date());
+        }
+        birthdayCard.setCreateTime(new Date());
+        birthdayCard.setAreaFlag(mgtBirthdayEditDto.getAreaFlag());
+        if(mgtBirthdayEditDto.getAreaFlag()==2){
+            birthdayCard.setDesignatedArea(mgtBirthdayEditDto.getDesignatedArea());
+        }else{
+            birthdayCard.setDesignatedArea(null);
+        }
+        birthdayCard.setShopFlag(mgtBirthdayEditDto.getShopFlag());
+        if(mgtBirthdayEditDto.getShopFlag()==2){
+            birthdayCard.setApplicableShop(mgtBirthdayEditDto.getApplicableShop());
+        }else{
+            birthdayCard.setApplicableShop(null);
+        }
+        birthdayCard.setCreateUserId(mgtBirthdayEditDto.getUserId());
+        this.saveOrUpdate(birthdayCard);
+        List<MgtBirthdayGiftDto> mgtBirthdayGiftDtoList = mgtBirthdayEditDto.getMgtBirthdayGiftDtoList();
+        List<BirthdayGift> birthdayGiftList = new ArrayList<>();
+        if(!mgtBirthdayGiftDtoList.isEmpty()){
+            mgtBirthdayGiftDtoList.forEach( dto->{
+                        BirthdayGift birthdayGift = new BirthdayGift();
+                        birthdayGift.setDelFlag(0);
+                        birthdayGift.setCardId(birthdayCard.getCardId());
+                        birthdayGift.setGiftType(dto.getGiftType());
+                        birthdayGift.setCouponId(dto.getCouponId());
+                        birthdayGift.setCouponName(dto.getCouponName());
+                        birthdayGift.setCouponNumber(dto.getCouponNumber());
+                        birthdayGift.setGoodsId(dto.getGoodsId());
+                        birthdayGift.setGoodsName(dto.getGoodsName());
+                        birthdayGift.setGoodsNumber(dto.getGoodsNumber());
+                        birthdayGift.setGiftName(dto.getGiftName());
+                        birthdayGift.setGiftNumber(dto.getGiftNumber());
+                        birthdayGift.setMoney(dto.getMoney());
+                        birthdayGift.setWinningProbability(dto.getWinningProbability());
+                        birthdayGiftList.add(birthdayGift);
+                    }
+            );
+            birthdayGiftService.saveBatch(birthdayGiftList);
+        }
+    }
+
+    /**
+     * @description  平台获取生日卡编辑信息
+     * @author  jqs
+     * @date    2023/6/15 15:26
+     * @param mgtBirthdayGetDto
+     * @return  MgtBirthdayGetVo
+     */
+    @Override
+    public MgtBirthdayGetVo getMgtBirthdayCard(MgtBirthdayGetDto mgtBirthdayGetDto){
+        MgtBirthdayGetVo mgtBirthdayGetVo = new MgtBirthdayGetVo();
+        LambdaQueryWrapper<BirthdayCard> queryWrapper = new LambdaQueryWrapper<>();
+        queryWrapper.eq(BirthdayCard::getDelFlag,0);
+        if(mgtBirthdayGetDto.getShopId()!=null&&mgtBirthdayGetDto.getShopId()>0){
+            queryWrapper.eq(BirthdayCard::getShopId,mgtBirthdayGetDto.getShopId());
+        }
+        BirthdayCard birthdayCard = this.getOne(queryWrapper,false);
+        if(birthdayCard!=null){
+            mgtBirthdayGetVo.setCardId(birthdayCard.getCardId());
+            mgtBirthdayGetVo.setCardStatus(birthdayCard.getCardStatus());
+            mgtBirthdayGetVo.setAreaFlag(birthdayCard.getAreaFlag());
+            mgtBirthdayGetVo.setDesignatedArea(birthdayCard.getDesignatedArea());
+            mgtBirthdayGetVo.setShopFlag(birthdayCard.getShopFlag());
+            mgtBirthdayGetVo.setApplicableShop(birthdayCard.getApplicableShop());
+            List<MgtBirthdayGiftVo> mgtBirthdayGiftVoList = birthdayGiftService.listGiftVoByCardId(birthdayCard.getCardId());
+            mgtBirthdayGetVo.setMgtBirthdayGiftVoList(mgtBirthdayGiftVoList);
+        }
+        return mgtBirthdayGetVo;
+    }
+}
diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/birthday/BirthdayGiftServiceImpl.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/birthday/BirthdayGiftServiceImpl.java
new file mode 100644
index 0000000..b68e45a
--- /dev/null
+++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/birthday/BirthdayGiftServiceImpl.java
@@ -0,0 +1,55 @@
+package com.ruoyi.member.service.impl.birthday;
+
+import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.member.domain.pojo.birthday.BirthdayGift;
+import com.ruoyi.member.domain.vo.MgtBirthdayGiftVo;
+import com.ruoyi.member.mapper.birthday.BirthdayGiftMapper;
+import com.ruoyi.member.service.birthday.BirthdayGiftService;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.List;
+
+/**
+ * <p>
+ *  服务实现类
+ * </p>
+ *
+ * @author jqs
+ * @since 2023-06-15
+ */
+@Service
+public class BirthdayGiftServiceImpl extends ServiceImpl<BirthdayGiftMapper, BirthdayGift> implements BirthdayGiftService {
+
+    @Resource
+    private BirthdayGiftMapper birthdayGiftMapper;
+
+    /**
+     * @description  通过id删除
+     * @author  jqs
+     * @date    2023/6/15 14:37
+     * @param cardId
+     * @return  void
+     */
+    @Override
+    public void deleteByCardId(Long cardId){
+        LambdaUpdateWrapper<BirthdayGift> updateWrapper = new LambdaUpdateWrapper<>();
+        updateWrapper.eq(BirthdayGift::getDelFlag,0);
+        updateWrapper.eq(BirthdayGift::getCardId,cardId);
+        updateWrapper.set(BirthdayGift::getDelFlag,1);
+        this.update(updateWrapper);
+    }
+
+    /**
+     * @description
+     * @author  jqs
+     * @date    2023/6/15 15:37
+     * @param cardId
+     * @return  List<MgtBirthdayGiftDto>
+     */
+    @Override
+    public List<MgtBirthdayGiftVo> listGiftVoByCardId(Long cardId){
+        return birthdayGiftMapper.listGiftVoByCardId(cardId);
+    }
+}
diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/coupon/CouponServiceImpl.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/coupon/CouponServiceImpl.java
index 19f51da..2002382 100644
--- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/coupon/CouponServiceImpl.java
+++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/coupon/CouponServiceImpl.java
@@ -8,17 +8,13 @@
 import com.ruoyi.common.core.utils.StringUtils;
 import com.ruoyi.common.core.utils.bean.BeanUtils;
 import com.ruoyi.common.core.utils.uuid.IdUtils;
-import com.ruoyi.member.domain.dto.MgtCouponEditDto;
-import com.ruoyi.member.domain.dto.MgtCouponPageDto;
+import com.ruoyi.member.domain.dto.*;
 import com.ruoyi.member.domain.pojo.coupon.Coupon;
 import com.ruoyi.member.domain.pojo.coupon.CouponRelGoods;
 import com.ruoyi.member.domain.pojo.coupon.CouponRelUser;
 import com.ruoyi.member.domain.pojo.coupon.CouponTotal;
 import com.ruoyi.member.domain.pojo.member.MemberCoupon;
-import com.ruoyi.member.domain.vo.MgtCouponGetVo;
-import com.ruoyi.member.domain.vo.MgtCouponGoodsListVo;
-import com.ruoyi.member.domain.vo.MgtCouponMemberListVo;
-import com.ruoyi.member.domain.vo.MgtCouponPageVo;
+import com.ruoyi.member.domain.vo.*;
 import com.ruoyi.member.mapper.coupon.CouponMapper;
 import com.ruoyi.member.service.coupon.CouponRelGoodsService;
 import com.ruoyi.member.service.coupon.CouponRelUserService;
@@ -421,4 +417,147 @@
             }
         }
     }
+
+    /**
+     * @description  获取优惠券选择列表
+     * @author  jqs
+     * @date    2023/6/15 14:59
+     * @param mgtCouponListDto
+     * @return  List<MgtCouponSimpleListVo>
+     */
+    @Override
+    public List<MgtCouponSimpleListVo> listMgtCouponSimpleVo(MgtCouponListDto mgtCouponListDto){
+        if(mgtCouponListDto.getShopId()!=null&&mgtCouponListDto.getShopId()==0){
+            mgtCouponListDto.setShopId(null);
+        }
+        return couponMapper.listMgtCouponSimpleVo(mgtCouponListDto);
+    }
+
+    /**
+     * @description  获取商户优惠券审核列表
+     * @author  jqs
+     * @date    2023/6/15 16:20
+     * @param page
+     * @param mgtCouponAuditPageDto
+     * @return  List<MgtCouponAuditPageVo>
+     */
+    @Override
+    public List<MgtCouponAuditPageVo> pageMgtAuditCoupon(Page page, MgtCouponAuditPageDto mgtCouponAuditPageDto){
+        List<MgtCouponAuditPageVo> mgtCouponAuditPageVoList = couponMapper.pageMgtAuditCoupon(page, mgtCouponAuditPageDto);
+        //处理使用限制和有效期
+        if(mgtCouponAuditPageVoList!=null&&!mgtCouponAuditPageVoList.isEmpty()){
+            Integer couponType;
+            Integer validTimeType;
+            Date validStartTime;
+            Date validEndTime;
+            Integer validDay;
+            String validTime = "";
+            for(MgtCouponAuditPageVo mgtCouponAuditPageVo : mgtCouponAuditPageVoList){
+                //处理有效期
+                validTimeType = mgtCouponAuditPageVo.getValidTimeType();
+                if(validTimeType==1){
+                    validStartTime = mgtCouponAuditPageVo.getValidStartTime();
+                    validEndTime = mgtCouponAuditPageVo.getValidEndTime();
+                    validTime = DateUtils.dateTime(validStartTime) + '-' +  DateUtils.dateTime(validEndTime);
+                }else if(validTimeType==2){
+                    validDay = mgtCouponAuditPageVo.getValidDay();
+                    validTime = "领取之日起" + validDay.toString() + "天";
+                }
+                mgtCouponAuditPageVo.setValidTime(validTime);
+            }
+        }
+        return mgtCouponAuditPageVoList;
+    }
+
+    /**
+     * @description  获取优惠券审核信息
+     * @author  jqs
+     * @date    2023/6/15 16:36
+     * @param couponId
+     * @return  MgtCouponAuditGetVo
+     */
+    @Override
+    public MgtCouponAuditGetVo getMgtCouponAuditVo(String couponId){
+        MgtCouponAuditGetVo mgtCouponAuditGetVo = new MgtCouponAuditGetVo();
+        Coupon coupon = this.getById(couponId);
+        //判断优惠券是否为指定商品
+        if(coupon.getUseScope()==2){
+            String relGoodsIds = coupon.getRelGoodsIds();
+            if(StringUtils.isNotBlank(relGoodsIds)){
+                //获取指定商品列表
+                List<Goods> goodsList = remoteGoodsService.listGoodsByGoodsId(relGoodsIds).getData();
+                if(!goodsList.isEmpty()){
+                    //转换为返回对象
+                    List<MgtCouponGoodsListVo> relGoodsList = new ArrayList<>();
+                    MgtCouponGoodsListVo mgtCouponGoodsListVo;
+                    for(Goods goods : goodsList){
+                        mgtCouponGoodsListVo = new MgtCouponGoodsListVo();
+                        mgtCouponGoodsListVo.setGoodsId(goods.getGoodsId());
+                        mgtCouponGoodsListVo.setGoodsName(goods.getGoodsName());
+                        mgtCouponGoodsListVo.setGoodsNo(goods.getGoodsNo());
+                        //商品类型1周期2服务3体验4单品
+                        switch (goods.getGoodsType()){
+                            case 1:
+                                mgtCouponGoodsListVo.setGoodsType("周期");
+                                break;
+                            case 2:
+                                mgtCouponGoodsListVo.setGoodsType("服务");
+                                break;
+                            case 3:
+                                mgtCouponGoodsListVo.setGoodsType("体验");
+                                break;
+                            case 4:
+                                mgtCouponGoodsListVo.setGoodsType("单品");
+                                break;
+                            default:
+                                break;
+                        }
+                        mgtCouponGoodsListVo.setSalesPrice(goods.getSalesPrice());
+                        relGoodsList.add(mgtCouponGoodsListVo);
+                    }
+                    mgtCouponAuditGetVo.setRelGoodsList(relGoodsList);
+                }
+            }
+        }
+        //判断优惠券是否指定发放用户
+        if(coupon.getSendType()==5&&coupon.getRelationType()==1){
+            //获取优惠券发放用户
+            List<MgtCouponMemberListVo> relUserList = couponRelUserService.listCouponMemberVo(coupon.getCouponId());
+            mgtCouponAuditGetVo.setRelUserList(relUserList);
+        }
+        return mgtCouponAuditGetVo;
+    }
+
+    /**
+     * @description  审核优惠券
+     * @author  jqs
+     * @date    2023/6/15 16:46
+     * @param mgtCouponAuditDto
+     * @return  void
+     */
+    @Override
+    public void auditMgtCoupon(MgtCouponAuditDto mgtCouponAuditDto){
+        Coupon coupon = this.getById(mgtCouponAuditDto.getCouponId());
+        //判断优惠券是否审核
+        if(coupon.getCouponStatus()!=1){
+            throw new ServiceException(AppErrorConstant.COUPON_AUDIT_DOUBLE);
+        }
+        coupon.setAuditStatus(mgtCouponAuditDto.getAuditStatus());
+        coupon.setAuditReason(mgtCouponAuditDto.getAuditReason());
+        coupon.setUpdateTime(new Date());
+        coupon.setUpdateUserId(mgtCouponAuditDto.getUserId());
+        this.saveOrUpdate(coupon);
+        //审核通过后判断是否立即发放
+        if(coupon.getCouponStatus()==2&&coupon.getSendTimeType()==1){
+            List<CouponRelUser> couponRelUserList = couponRelUserService.list(new LambdaQueryWrapper<CouponRelUser>().eq(CouponRelUser::getDelFlag,0).eq(CouponRelUser::getCouponId,coupon.getCouponId()));
+            List<Long> userIdList = new ArrayList<>();
+            if(couponRelUserList!=null&&!couponRelUserList.isEmpty()){
+                userIdList = couponRelUserList.stream()
+                        .map(CouponRelUser::getUserId)
+                        .collect(Collectors.toList());
+            }
+            //发放优惠券
+            sendCoupon(coupon, userIdList);
+        }
+    }
 }
diff --git a/ruoyi-modules/ruoyi-member/src/main/resources/mapper/birthday/BirthdayCardMapper.xml b/ruoyi-modules/ruoyi-member/src/main/resources/mapper/birthday/BirthdayCardMapper.xml
new file mode 100644
index 0000000..502c534
--- /dev/null
+++ b/ruoyi-modules/ruoyi-member/src/main/resources/mapper/birthday/BirthdayCardMapper.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.ruoyi.member.mapper.birthday.BirthdayCardMapper">
+
+
+
+</mapper>
diff --git a/ruoyi-modules/ruoyi-member/src/main/resources/mapper/birthday/BirthdayGiftMapper.xml b/ruoyi-modules/ruoyi-member/src/main/resources/mapper/birthday/BirthdayGiftMapper.xml
new file mode 100644
index 0000000..cfdc41a
--- /dev/null
+++ b/ruoyi-modules/ruoyi-member/src/main/resources/mapper/birthday/BirthdayGiftMapper.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.ruoyi.member.mapper.birthday.BirthdayGiftMapper">
+
+    <select id="listGiftVoByCardId" resultType="com.ruoyi.member.domain.vo.MgtBirthdayGiftVo">
+        SELECT
+            card_id,
+            gift_type,
+            coupon_id,
+            coupon_name,
+            coupon_number,
+            goods_id,
+            goods_name,
+            goods_number,
+            gift_name,
+            gift_number,
+            money,
+            winning_probability
+        FROM t_birthday_gift
+        WHERE del_flag = 0 AND card_id = #{cardId}
+    </select>
+
+
+</mapper>
diff --git a/ruoyi-modules/ruoyi-member/src/main/resources/mapper/coupon/CouponMapper.xml b/ruoyi-modules/ruoyi-member/src/main/resources/mapper/coupon/CouponMapper.xml
index b5ff26a..cdea68f 100644
--- a/ruoyi-modules/ruoyi-member/src/main/resources/mapper/coupon/CouponMapper.xml
+++ b/ruoyi-modules/ruoyi-member/src/main/resources/mapper/coupon/CouponMapper.xml
@@ -177,9 +177,15 @@
         tc.create_time  createTime
         FROM t_coupon tc
         LEFT JOIN t_coupon_total tct ON tc.coupon_id = tct.coupon_id
-        WHERE del_flag = 0 AND coupon_status = 2
+        WHERE tc.del_flag = 0 AND tc.coupon_status = 2
+        <if test="param.shopId==null">
+            AND tc.coupon_from = 1
+        </if>
+        <if test="param.shopId!=null and param.shopId!=''">
+            AND tc.shop_id = #{param.shopId}
+        </if>
         <if test="param.couponName!=null and param.couponName!=''">
-            tc.coupon_name LIKE CONCAT('%',#{param.couponName},'%')
+            AND tc.coupon_name LIKE CONCAT('%',#{param.couponName},'%')
         </if>
         <if test="param.createStartTime!=null and param.createStartTime!=''">
             AND tc.create_time &gt;= #{param.createStartTime}
@@ -189,5 +195,62 @@
         </if>
     </select>
     
+    <select id="listMgtCouponSimpleVo" resultType="com.ruoyi.member.domain.vo.MgtCouponSimpleListVo">
+        SELECT
+            coupon_id couponId,
+            coupon_name couponName,
+        FROM t_coupon
+        WHERE del_flag = 0
+        <if test="param.shopId!=null and param.shopId!='' ">
+            AND shop_id = #{param.shopId}
+        </if>
 
+    </select>
+
+    <select id="pageMgtAuditCoupon" resultType="com.ruoyi.member.domain.vo.MgtCouponAuditPageVo">
+        SELECT
+        tc.coupon_id  couponId,
+        tc.coupon_name  couponName,
+        tc.valid_time_type  validTimeType,
+        tc.valid_start_time  validStartTime,
+        tc.valid_end_time  validEndTime,
+        tc.valid_day  validDay,
+        CASE tc.use_scope
+        WHEN 1 THEN '全部'
+        WHEN 2 THEN '指定商品'
+        END useScope,
+        CASE tc.send_type
+        WHEN 1 THEN '手动获取'
+        ELSE '指定发放'
+        END sendType,
+        CASE tc.send_type
+        WHEN 2 THEN '全部用户'
+        WHEN 3 THEN '会员用户'
+        WHEN 4 THEN '非会员用户'
+        WHEN 5 THEN '自定义'
+        ELSE ''
+        END sendTarget,
+        tc.limit_number  limitNumber,
+        tc.send_time  sendTime,
+        tc.create_time  createTime,
+        CASE tc.audit_status
+            WHEN 2 THEN '审核通过'
+            WHEN 3 THEN '审核拒绝'
+            ELSE '审核中'
+            END auditStatus
+        FROM t_coupon tc
+        WHERE del_flag = 0
+        <if test="param.auditStatus!=null and param.auditStatus!=''">
+            AND tc.audit_status = #{param.auditStatus}
+        </if>
+        <if test="param.couponName!=null and param.couponName!=''">
+            AND tc.coupon_name LIKE CONCAT('%',#{param.couponName},'%')
+        </if>
+        <if test="param.createStartTime!=null and param.createStartTime!=''">
+            AND tc.create_time &gt;= #{param.createStartTime}
+        </if>
+        <if test="param.createEndTime!=null and param.createEndTime!=''">
+            AND tc.create_time &lt;= #{param.createEndTime}
+        </if>
+    </select>
 </mapper>
diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/dto/MgtMemberOrderPageDto.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/dto/MgtMemberOrderPageDto.java
index 4400e3e..da83c8c 100644
--- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/dto/MgtMemberOrderPageDto.java
+++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/dto/MgtMemberOrderPageDto.java
@@ -1,11 +1,8 @@
 package com.ruoyi.order.domain.dto;
 
-import com.ruoyi.system.api.domain.dto.MgtBaseDto;
 import com.ruoyi.system.api.domain.dto.MgtPageDto;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
-
-import java.util.Date;
 
 /**
  * @author jqs34
@@ -27,10 +24,10 @@
     private Integer orderStatus;
 
     @ApiModelProperty(value = "订单开始日期")
-    private Date startOrderDate;
+    private String startOrderDate;
 
     @ApiModelProperty(value = "订单结束日期")
-    private Date endOrderDate;
+    private String endOrderDate;
 
     @ApiModelProperty(value = "订单来源1.店铺商品2.平台秒杀活动3.线下创建")
     private Integer orderFrom;
diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/dto/MgtMemberOrderTotalDto.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/dto/MgtMemberOrderTotalDto.java
index 06acb79..fd8fd4d 100644
--- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/dto/MgtMemberOrderTotalDto.java
+++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/dto/MgtMemberOrderTotalDto.java
@@ -26,9 +26,9 @@
     private Integer orderStatus;
 
     @ApiModelProperty(value = "订单开始日期")
-    private Date startOrderDate;
+    private String startOrderDate;
 
     @ApiModelProperty(value = "订单结束日期")
-    private Date endOrderDate;
+    private String endOrderDate;
 
 }
diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MgtShopOrderPageDto.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MgtShopOrderPageDto.java
new file mode 100644
index 0000000..0638a94
--- /dev/null
+++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MgtShopOrderPageDto.java
@@ -0,0 +1,22 @@
+package com.ruoyi.order.domain.vo;
+
+import com.ruoyi.system.api.domain.dto.MgtPageDto;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @ClassName MgtShopOrderPageDto
+ * @Description TODO
+ * @Author jqs
+ * @Date 2023/6/15 17:07
+ * @Version 1.0
+ */
+@Data
+public class MgtShopOrderPageDto extends MgtPageDto {
+
+    @ApiModelProperty(value = "关键词")
+    private String keyword;
+
+
+
+}
diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/MerFollowAgencyTaskDto.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/MerFollowAgencyTaskDto.java
index ae9252b..a9c89c9 100644
--- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/MerFollowAgencyTaskDto.java
+++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/MerFollowAgencyTaskDto.java
@@ -1,5 +1,6 @@
 package com.ruoyi.shop.domain.dto;
 
+import com.fasterxml.jackson.annotation.JsonFormat;
 import com.ruoyi.system.api.domain.dto.MerBaseDto;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
@@ -26,6 +27,7 @@
     private String callPhone;
 
     @ApiModelProperty("电话时间")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
     private Date callTime;
 
     @ApiModelProperty("跟踪内容")
diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/MgtChangeCoopDto.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/MgtChangeCoopDto.java
index 64eae23..da39bfe 100644
--- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/MgtChangeCoopDto.java
+++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/MgtChangeCoopDto.java
@@ -20,9 +20,9 @@
     private Long shopId;
 
     @ApiModelProperty("合作开始时间")
-    private Date coopStartTime;
+    private String coopStartTime;
 
     @ApiModelProperty("合作结束时间")
-    private Date coopEndTime;
+    private String coopEndTime;
 
 }
diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/MgtShopCertificatePageDto.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/MgtShopCertificatePageDto.java
index ed0cda2..856f1a1 100644
--- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/MgtShopCertificatePageDto.java
+++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/MgtShopCertificatePageDto.java
@@ -21,10 +21,10 @@
     private String keyword;
 
     @ApiModelProperty(value = "提交开始时间")
-    private Date createStartTime;
+    private String createStartTime;
 
     @ApiModelProperty(value = "提交结束时间")
-    private Date createEndTime;
+    private String createEndTime;
 
     @ApiModelProperty(value = "证书状态0待审核1审核通过2审核拒绝")
     private Integer cerStatus;
diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/MgtShopPageDto.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/MgtShopPageDto.java
index 4d77ad7..19d6079 100644
--- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/MgtShopPageDto.java
+++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/MgtShopPageDto.java
@@ -32,7 +32,7 @@
     private String shopAreaCode;
 
     @ApiModelProperty(value = "签约时间")
-    private Date signTime;
+    private String signTime;
 
     @ApiModelProperty(value = "签约省code")
     private String signProvinceCode;
diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/MgtShopSuggestPageDto.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/MgtShopSuggestPageDto.java
index fbb59cf..a4dcbea 100644
--- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/MgtShopSuggestPageDto.java
+++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/MgtShopSuggestPageDto.java
@@ -21,10 +21,10 @@
     private String keyword;
 
     @ApiModelProperty(value = "提交开始时间")
-    private Date createStartTime;
+    private String createStartTime;
 
     @ApiModelProperty(value = "提交结束时间")
-    private Date createEndTime;
+    private String createEndTime;
 
     @ApiModelProperty(value = "建议状态0未回复1已回复")
     private Integer suggestStatus;
@@ -33,10 +33,10 @@
     private String tags;
 
     @ApiModelProperty(value = "复开始时间")
-    private Date replayStartTime;
+    private String replayStartTime;
 
     @ApiModelProperty(value = "回复结束时间")
-    private Date replayEndTime;
+    private String replayEndTime;
 
 
 }
diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/vo/MgtShopAuthPageVo.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/vo/MgtShopAuthPageVo.java
index da02e39..9c23ba2 100644
--- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/vo/MgtShopAuthPageVo.java
+++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/vo/MgtShopAuthPageVo.java
@@ -30,5 +30,8 @@
     private String mainType;
 
     @ApiModelProperty("审核状态")
-    private String auditStatus;
+    private Integer auditStatus;
+
+    @ApiModelProperty("审核状态描述")
+    private String auditStatusDesc;
 }
diff --git a/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopMapper.xml b/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopMapper.xml
index c446cf7..137eca5 100644
--- a/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopMapper.xml
+++ b/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopMapper.xml
@@ -505,18 +505,19 @@
         CASE tsa.main_mype
             WHEN 1 THEN '个人'
             WHEN 2 THEN '企业'
-            END mainType
+            END mainType,
+        tsa.audit_status auditStatus,
         CASE tsa.audit_status
-            WHEN 0 THEN '未提交'
-            WHEN 1 THEN '资料校验中'
-            WHEN 2 THEN '待账户验证'
-            WHEN 3 THEN '资料校验中'
-            WHEN 4 THEN '待账户验证'
-            WHEN 5 THEN '资料校验中'
-            WHEN 6 THEN '待账户验证'
-            WHEN 7 THEN '资料校验中'
-            WHEN 8 THEN '待账户验证'
-        END audit_status
+            WHEN 0 THEN '待审核'
+            WHEN 1 THEN '审核中'
+            WHEN 2 THEN '审核中'
+            WHEN 3 THEN '审核中'
+            WHEN 4 THEN '已拒绝'
+            WHEN 5 THEN '审核中'
+            WHEN 6 THEN '已通过'
+            WHEN 7 THEN '已拒绝'
+            WHEN 8 THEN '已拒绝'
+        END auditStatusDesc
         FROM t_shop ts
         INNER JOIN t_shop_authentication tsa ON ts.shop_id = tsa.shop_id AND tsa.del_flag = 0
         WHERE ts.del_flag = 0
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/GeneratorMybatisPlus.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/GeneratorMybatisPlus.java
index 96f9e8f..c7fcae2 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/GeneratorMybatisPlus.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/GeneratorMybatisPlus.java
@@ -44,7 +44,7 @@
         DataSourceConfig dataSourceConfig = new DataSourceConfig();
         dataSourceConfig.setDbType(DbType.MYSQL);
         dataSourceConfig.setTypeConvert(new MySqlTypeConvert());
-        dataSourceConfig.setUrl("jdbc:mysql://47.109.78.184:10010/hrt_goods?tinyInt1isBit=false");
+        dataSourceConfig.setUrl("jdbc:mysql://47.109.78.184:10010/hrt_member?tinyInt1isBit=false");
         dataSourceConfig.setDriverName("com.mysql.cj.jdbc.Driver");
         dataSourceConfig.setUsername("root");
         dataSourceConfig.setPassword("hrt123456");
@@ -53,7 +53,7 @@
         // 包名配置
         PackageConfig packageConfig = new PackageConfig();
         // 父包和子包名分开处理
-        packageConfig.setParent("com.ruoyi.goods");
+        packageConfig.setParent("com.ruoyi.member");
         packageConfig.setController("app");
         packageConfig.setEntity("domain.pojo");
         packageConfig.setMapper("mapper");
@@ -74,7 +74,7 @@
         strategy.setControllerMappingHyphenStyle(true);
         //表和前缀处理
         String[] table = {
-                "t_activity_total"
+                "t_birthday_gift","t_birthday_card"
         };
         strategy.setInclude(table);
         String[] tablePre = new String[]{"t_"};
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/management/MgtConfigController.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/management/MgtConfigController.java
index 015e3db..ce9a105 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/management/MgtConfigController.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/management/MgtConfigController.java
@@ -264,6 +264,14 @@
         return R.ok();
     }
 
+    @RequestMapping(value = "/deleteActiveness", method = RequestMethod.POST)
+    @ApiOperation(value = "删除活跃度")
+    public R deleteMgtActiveness(@RequestBody MgtBaseGetDto mgtBaseGetDto) {
+        mgtBaseGetDto.setUserId(SecurityUtils.getUserId());
+        activenessService.deleteMgtActiveness(mgtBaseGetDto);
+        return R.ok();
+    }
+
     @RequestMapping(value = "/pageClassification", method = RequestMethod.POST)
     @ApiOperation(value = "分页获取分类列表")
     public R<Page<MgtClassificationPageVo>> pageClassification(@RequestBody MgtClassificationPageDto mgtClassificationPageDto) {
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtArticleEditDto.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtArticleEditDto.java
index 46df575..98678b8 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtArticleEditDto.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtArticleEditDto.java
@@ -4,8 +4,6 @@
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
-import java.util.Date;
-
 /**
  * @ClassName MgtArticleEditDto
  * @Description TODO
@@ -33,9 +31,6 @@
 
     @ApiModelProperty(value = "文章封面")
     private String articleCover;
-
-    @ApiModelProperty(value = "文章标题")
-    private Date createTime;
 
     @ApiModelProperty(value = "文章视频")
     private String articleVideo;
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtArticlePageDto.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtArticlePageDto.java
index 87c12fa..9541f75 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtArticlePageDto.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtArticlePageDto.java
@@ -4,8 +4,6 @@
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
-import java.util.Date;
-
 /**
  * @ClassName MgtArticlePageDto
  * @Description TODO
@@ -20,8 +18,8 @@
     private String articleTitle;
 
     @ApiModelProperty(value = "创建开始时间")
-    private Date createStartTime;
+    private String createStartTime;
 
     @ApiModelProperty(value = "创建结束时间")
-    private Date createEndTime;
+    private String createEndTime;
 }
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtOperLogPageDto.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtOperLogPageDto.java
index 54352d5..cacda7f 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtOperLogPageDto.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtOperLogPageDto.java
@@ -4,8 +4,6 @@
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
-import java.util.Date;
-
 /**
  * @ClassName MgtOperLogPageDto
  * @Description TODO
@@ -24,10 +22,10 @@
     private String operTitle;
 
     @ApiModelProperty(value = "操作开始时间")
-    private Date operStartTime;
+    private String operStartTime;
 
     @ApiModelProperty(value = "操作结束时间")
-    private Date operEndTime;
+    private String operEndTime;
 
 
 }
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtOtherConfigEditDto.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtOtherConfigEditDto.java
index eac770e..f9445c4 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtOtherConfigEditDto.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtOtherConfigEditDto.java
@@ -4,6 +4,8 @@
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
+import javax.validation.constraints.NotNull;
+
 /**
  * @ClassName MgtOtherConfigEditDto
  * @Description TODO
@@ -15,23 +17,30 @@
 public class MgtOtherConfigEditDto extends MgtBaseDto {
 
     @ApiModelProperty(value = "分享小程序可获得积分")
+    @NotNull(message = "分享小程序可获得积分不能为空")
     private Integer shareIntegral;
 
     @ApiModelProperty(value = "平台建议可获得积分")
+    @NotNull(message = "平台建议可获得积分不能为空")
     private Integer suggestPlatformIntegral;
 
     @ApiModelProperty(value = "每日签到可获得积分")
+    @NotNull(message = "每日签到可获得积分不能为空")
     private Integer signInIntegral;
 
     @ApiModelProperty(value = "门店建议可获得积分")
+    @NotNull(message = "门店建议可获得积分不能为空")
     private Integer suggestShopIntegral;
 
     @ApiModelProperty(value = "购物满1元可获得积分")
+    @NotNull(message = "购物满1元可获得积分不能为空")
     private Integer payMoneyIntegral;
 
     @ApiModelProperty(value = "C端订单自动取消时间")
+    @NotNull(message = "C端订单自动取消时间不能为空")
     private Integer orderAutoCancelTime;
 
     @ApiModelProperty(value = "首页风格1.鸿瑞堂2.古引坊")
+    @NotNull(message = "首页风格不能为空")
     private Integer homeStyle;
 }
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtPopEditDto.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtPopEditDto.java
index 09bcc29..ea15b11 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtPopEditDto.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtPopEditDto.java
@@ -4,8 +4,6 @@
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
-import java.util.Date;
-
 /**
  * @ClassName MgtpopEditDto
  * @Description TODO
@@ -38,9 +36,9 @@
     private Integer popSort;
 
     @ApiModelProperty(value = "展示开始时间 yyyy-MM-dd")
-    private Date showStartTime;
+    private String showStartTime;
 
     @ApiModelProperty(value = "展示结束时间  yyyy-MM-dd")
-    private Date showEndTime;
+    private String showEndTime;
 
 }
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtStaffSuggestPageDto.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtStaffSuggestPageDto.java
index 1474b8f..3b8f800 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtStaffSuggestPageDto.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtStaffSuggestPageDto.java
@@ -4,8 +4,6 @@
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
-import java.util.Date;
-
 /**
  * @author jqs34
  * @version 1.0
@@ -24,10 +22,10 @@
     private Long deptId;
 
     @ApiModelProperty(value = "提交开始时间")
-    private Date createStartTime;
+    private String createStartTime;
 
     @ApiModelProperty(value = "提交结束时间")
-    private Date createEndTime;
+    private String createEndTime;
 
     @ApiModelProperty(value = "建议状态0未回复1已回复")
     private Integer suggestStatus;
@@ -36,9 +34,9 @@
     private String tags;
 
     @ApiModelProperty(value = "回复开始时间")
-    private Date replayStartTime;
+    private String replayStartTime;
 
     @ApiModelProperty(value = "回复结束时间")
-    private Date replayEndTime;
+    private String replayEndTime;
 
 }
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/config/ActivenessService.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/config/ActivenessService.java
index 580e48f..f9426ea 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/config/ActivenessService.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/config/ActivenessService.java
@@ -1,6 +1,7 @@
 package com.ruoyi.system.service.config;
 
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.ruoyi.system.api.domain.dto.MgtBaseGetDto;
 import com.ruoyi.system.api.domain.poji.config.Activeness;
 import com.ruoyi.system.domain.dto.MgtActivenessEditDto;
 
@@ -32,4 +33,13 @@
      */
     void editMgtActiveness(MgtActivenessEditDto mgtActivenessEditDto);
 
+    /**
+     * @description  删除活跃度
+     * @author  jqs
+     * @date    2023/6/15 16:15
+     * @param mgtBaseGetDto
+     * @return  void
+     */
+    void deleteMgtActiveness(MgtBaseGetDto mgtBaseGetDto);
+
 }
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/config/ActivenessServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/config/ActivenessServiceImpl.java
index 154aa74..0a40e9d 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/config/ActivenessServiceImpl.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/config/ActivenessServiceImpl.java
@@ -1,6 +1,7 @@
 package com.ruoyi.system.service.impl.config;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.ruoyi.system.api.domain.dto.MgtBaseGetDto;
 import com.ruoyi.system.api.domain.poji.config.Activeness;
 import com.ruoyi.system.domain.dto.MgtActivenessEditDto;
 import com.ruoyi.system.mapper.config.ActivenessMapper;
@@ -62,4 +63,20 @@
         activeness.setEndDay(mgtActivenessEditDto.getEndDay());
         this.saveOrUpdate(activeness);
     }
+
+    /**
+     * @description  删除活跃度
+     * @author  jqs
+     * @date    2023/6/15 16:15
+     * @param mgtBaseGetDto
+     * @return  void
+     */
+    @Override
+    public void deleteMgtActiveness(MgtBaseGetDto mgtBaseGetDto){
+        Activeness activeness = this.getById(Long.valueOf(mgtBaseGetDto.getId()));
+        activeness.setDelFlag(1);
+        activeness.setUpdateTime(new Date());
+        activeness.setUpdateUserId(mgtBaseGetDto.getUserId());
+        this.saveOrUpdate(activeness);
+    }
 }
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/config/CustomConfigServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/config/CustomConfigServiceImpl.java
index 21e970f..4d3fc24 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/config/CustomConfigServiceImpl.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/config/CustomConfigServiceImpl.java
@@ -71,6 +71,7 @@
         if (customConfig == null) {
             customConfig = new CustomConfig();
             customConfig.setCreateTime(new Date());
+            customConfig.setDelFlag(0);
         }
         // 设置配置的类型、键、名称、值和更新时间
         customConfig.setConfigType(ConfigEnum.PLATFORM_SERVICE_PHONE.getKeyType());
@@ -232,41 +233,36 @@
             customConfig.setConfigType(configEnum.getKeyType());
             customConfig.setConfigKey(configEnum.getKey());
             customConfig.setConfigName(configEnum.getKeyName());
-            customConfig.setConfigValue(getConfigValue(configEnum, mgtOtherConfigEditDto));
             customConfig.setCreateTime(updateTime);
             customConfig.setUpdateTime(updateTime);
-            this.saveOrUpdate(customConfig);
+            switch (configEnum) {
+                case SHARE_INTEGRAL:
+                    customConfig.setConfigValue(mgtOtherConfigEditDto.getShareIntegral().toString());
+                    this.saveOrUpdate(customConfig);
+                case SUGGEST_PLATFORM_INTEGRAL:
+                    customConfig.setConfigValue(mgtOtherConfigEditDto.getSuggestPlatformIntegral().toString());
+                    this.saveOrUpdate(customConfig);
+                case SIGN_IN_INTEGRAL:
+                    customConfig.setConfigValue(mgtOtherConfigEditDto.getSignInIntegral().toString());
+                    this.saveOrUpdate(customConfig);
+                case SUGGEST_SHOP_INTEGRAL:
+                    customConfig.setConfigValue(mgtOtherConfigEditDto.getSuggestShopIntegral().toString());
+                    this.saveOrUpdate(customConfig);
+                case ORDER_AUTO_CANCEL_TIME:
+                    customConfig.setConfigValue(mgtOtherConfigEditDto.getOrderAutoCancelTime().toString());
+                    this.saveOrUpdate(customConfig);
+                case PAY_MONEY_INTEGRAL:
+                    customConfig.setConfigValue(mgtOtherConfigEditDto.getPayMoneyIntegral().toString());
+                    this.saveOrUpdate(customConfig);
+                case HOME_STYLE:
+                    customConfig.setConfigValue(mgtOtherConfigEditDto.getHomeStyle().toString());
+                    this.saveOrUpdate(customConfig);
+                default:
+                    break;
+            }
         }
     }
 
-    /**
-     * @param configEnum
-     * @param mgtOtherConfigEditDto
-     * @return String
-     * @description 获取配置参数
-     * @author jqs
-     * @date 2023/6/7 16:37
-     */
-    private String getConfigValue(ConfigEnum configEnum, MgtOtherConfigEditDto mgtOtherConfigEditDto) {
-        switch (configEnum) {
-            case SHARE_INTEGRAL:
-                return mgtOtherConfigEditDto.getShareIntegral().toString();
-            case SUGGEST_PLATFORM_INTEGRAL:
-                return mgtOtherConfigEditDto.getSuggestPlatformIntegral().toString();
-            case SIGN_IN_INTEGRAL:
-                return mgtOtherConfigEditDto.getSignInIntegral().toString();
-            case SUGGEST_SHOP_INTEGRAL:
-                return mgtOtherConfigEditDto.getSuggestShopIntegral().toString();
-            case ORDER_AUTO_CANCEL_TIME:
-                return mgtOtherConfigEditDto.getOrderAutoCancelTime().toString();
-            case PAY_MONEY_INTEGRAL:
-                return mgtOtherConfigEditDto.getPayMoneyIntegral().toString();
-            case HOME_STYLE:
-                return mgtOtherConfigEditDto.getHomeStyle().toString();
-            default:
-                throw new IllegalArgumentException("Invalid ConfigEnum");
-        }
-    }
 
     /**
      * @param mgtShopConfigEditDto
diff --git a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/config/ArticleMapper.xml b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/config/ArticleMapper.xml
index 83b7682..f8c9f56 100644
--- a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/config/ArticleMapper.xml
+++ b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/config/ArticleMapper.xml
@@ -18,13 +18,13 @@
         LEFT JOIN t_sys_classification tsc ON tsc.class_id = ta.class_id
         WHERE ta.del_flag = 0
         <if test="param.articleTitle!=null and param.articleTitle!=''">
-            ta.article_title LIKE CONCAT('%',#{param.articleTitle},'%')
+            AND ta.article_title LIKE CONCAT('%',#{param.articleTitle},'%')
         </if>
         <if test="param.createStartTime!=null and param.createStartTime!=''">
-            ta.create_time &gt;= #{createStartTime}
+            AND ta.create_time &gt;= #{param.createStartTime}
         </if>
         <if test="param.createEndTime!=null and param.createEndTime!=''">
-            ta.create_time &lt;= #{createEndTime}
+            AND ta.create_time &lt;= #{param.createEndTime}
         </if>
         ORDER BY ta.create_time DESC
     </select>

--
Gitblit v1.7.1