From 7e03e6abb11ef40df75827eca5eb9b512f9836bb Mon Sep 17 00:00:00 2001
From: 陶杰 <1378534974@qq.com>
Date: 星期五, 30 八月 2024 15:11:44 +0800
Subject: [PATCH] 1.优惠券-用户:详情返回商户信息

---
 src/main/java/com/mzl/flower/dto/response/coupon/CouponTemplateCustomerVO.java          |   20 ++++++++++
 src/main/java/com/mzl/flower/dto/response/coupon/CouponTemplateVO.java                  |    5 ++
 src/main/java/com/mzl/flower/dto/response/coupon/CouponTemplateUserVO.java              |    4 ++
 src/main/java/com/mzl/flower/mapper/coupon/CouponTemplateMapperCustom.java              |    9 ++++
 src/main/java/com/mzl/flower/service/coupon/CouponTemplateCustomerService.java          |    9 ++++
 src/main/java/com/mzl/flower/service/impl/coupon/CouponTemplateCustomerServiceImpl.java |   21 +++++++++-
 src/main/java/com/mzl/flower/service/impl/coupon/CouponTemplateServiceImpl2.java        |   13 ++++--
 src/main/resources/mapper/coupon/CouponTemplateMapperCustom.xml                         |   14 +++++++
 8 files changed, 87 insertions(+), 8 deletions(-)

diff --git a/src/main/java/com/mzl/flower/dto/response/coupon/CouponTemplateCustomerVO.java b/src/main/java/com/mzl/flower/dto/response/coupon/CouponTemplateCustomerVO.java
new file mode 100644
index 0000000..96ba5b4
--- /dev/null
+++ b/src/main/java/com/mzl/flower/dto/response/coupon/CouponTemplateCustomerVO.java
@@ -0,0 +1,20 @@
+package com.mzl.flower.dto.response.coupon;
+
+import com.mzl.flower.base.AbstractTransDTO;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+@Data
+public class CouponTemplateCustomerVO extends AbstractTransDTO {
+
+    @ApiModelProperty("用户id")
+    private String id;
+
+    @ApiModelProperty("名称")
+    private String name;
+
+    @ApiModelProperty("电话")
+    private String tel;
+
+
+}
diff --git a/src/main/java/com/mzl/flower/dto/response/coupon/CouponTemplateUserVO.java b/src/main/java/com/mzl/flower/dto/response/coupon/CouponTemplateUserVO.java
index 99fd2eb..5593b1f 100644
--- a/src/main/java/com/mzl/flower/dto/response/coupon/CouponTemplateUserVO.java
+++ b/src/main/java/com/mzl/flower/dto/response/coupon/CouponTemplateUserVO.java
@@ -10,6 +10,7 @@
 
 import java.math.BigDecimal;
 import java.time.LocalDateTime;
+import java.util.List;
 
 @Data
 @ApiModel("用户优惠券")
@@ -96,4 +97,7 @@
     @ApiModelProperty(value = "操作人")
     private String createByName;
 
+    @ApiModelProperty(value = "商户列表")
+    List<CouponTemplateCustomerVO> customerList;
+
 }
diff --git a/src/main/java/com/mzl/flower/dto/response/coupon/CouponTemplateVO.java b/src/main/java/com/mzl/flower/dto/response/coupon/CouponTemplateVO.java
index 8181d9b..d7f8a5a 100644
--- a/src/main/java/com/mzl/flower/dto/response/coupon/CouponTemplateVO.java
+++ b/src/main/java/com/mzl/flower/dto/response/coupon/CouponTemplateVO.java
@@ -3,13 +3,13 @@
 import com.fasterxml.jackson.annotation.JsonFormat;
 import com.mzl.flower.base.AbstractTransDTO;
 import com.mzl.flower.base.annotation.DictTrans;
-import com.mzl.flower.entity.coupon.CouponTemplateDO;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import org.springframework.format.annotation.DateTimeFormat;
 
 import java.math.BigDecimal;
 import java.time.LocalDateTime;
+import java.util.List;
 
 @Data
 public class CouponTemplateVO extends AbstractTransDTO {
@@ -229,4 +229,7 @@
     @ApiModelProperty(value = "会员等级")
     private String vipGrade;
 
+    @ApiModelProperty(value = "商户列表")
+    List<CouponTemplateCustomerVO> customerList;
+
 }
diff --git a/src/main/java/com/mzl/flower/mapper/coupon/CouponTemplateMapperCustom.java b/src/main/java/com/mzl/flower/mapper/coupon/CouponTemplateMapperCustom.java
index 142bbfa..5b8cb6c 100644
--- a/src/main/java/com/mzl/flower/mapper/coupon/CouponTemplateMapperCustom.java
+++ b/src/main/java/com/mzl/flower/mapper/coupon/CouponTemplateMapperCustom.java
@@ -6,6 +6,7 @@
 import com.mzl.flower.dto.request.coupon.QueryActivePointCouponDTO;
 import com.mzl.flower.dto.request.coupon.QueryActivityEffectCouponDTO;
 import com.mzl.flower.dto.request.coupon.QueryCouponDTO;
+import com.mzl.flower.dto.response.coupon.CouponTemplateCustomerVO;
 import com.mzl.flower.dto.response.coupon.CouponTemplateVO;
 import com.mzl.flower.entity.coupon.CouponTemplateDO;
 import org.apache.ibatis.annotations.Param;
@@ -49,4 +50,12 @@
     Page<CouponTemplateVO> getPointPage(Page page,@Param("param") QueryActivePointCouponDTO dto);
 
     List<CouponTemplateVO> getActivityEffectList(@Param("param") QueryActivityEffectCouponDTO dto);
+
+    /**
+     * 获取关联的用户信息
+     * @param id
+     * @return
+     */
+    List<CouponTemplateCustomerVO> getCouponCustomerList(@Param("id") String id);
+
 }
diff --git a/src/main/java/com/mzl/flower/service/coupon/CouponTemplateCustomerService.java b/src/main/java/com/mzl/flower/service/coupon/CouponTemplateCustomerService.java
index bea9410..8388ac4 100644
--- a/src/main/java/com/mzl/flower/service/coupon/CouponTemplateCustomerService.java
+++ b/src/main/java/com/mzl/flower/service/coupon/CouponTemplateCustomerService.java
@@ -2,6 +2,7 @@
 
 import com.mzl.flower.entity.coupon.CouponTemplateCustomerDO;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.mzl.flower.entity.customer.Customer;
 
 import java.util.List;
 
@@ -28,4 +29,12 @@
      * @return
      */
     boolean deleteByCouponTemplateId(String couponTemplateId);
+
+    /**
+     * 根据优惠券的模版ID查找用户列表
+     * @param id
+     * @return
+     */
+    List<Customer> getPointCustomerList(String id);
+
 }
diff --git a/src/main/java/com/mzl/flower/service/impl/coupon/CouponTemplateCustomerServiceImpl.java b/src/main/java/com/mzl/flower/service/impl/coupon/CouponTemplateCustomerServiceImpl.java
index df405c4..61177ea 100644
--- a/src/main/java/com/mzl/flower/service/impl/coupon/CouponTemplateCustomerServiceImpl.java
+++ b/src/main/java/com/mzl/flower/service/impl/coupon/CouponTemplateCustomerServiceImpl.java
@@ -1,13 +1,17 @@
 package com.mzl.flower.service.impl.coupon;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.mzl.flower.entity.coupon.CouponTemplateCustomerDO;
-import com.mzl.flower.mapper.coupon.CouponTemplateCustomerMapper;
-import com.mzl.flower.service.coupon.CouponTemplateCustomerService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.mzl.flower.entity.coupon.CouponTemplateCustomerDO;
+import com.mzl.flower.entity.customer.Customer;
+import com.mzl.flower.mapper.coupon.CouponTemplateCustomerMapper;
+import com.mzl.flower.mapper.customer.CustomerMapper;
+import com.mzl.flower.service.coupon.CouponTemplateCustomerService;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import java.util.List;
+import java.util.stream.Collectors;
 
 /**
  * <p>
@@ -19,6 +23,9 @@
  */
 @Service
 public class CouponTemplateCustomerServiceImpl extends ServiceImpl<CouponTemplateCustomerMapper, CouponTemplateCustomerDO> implements CouponTemplateCustomerService {
+
+    @Autowired
+    private CustomerMapper customerMapper;
 
     @Override
     public List<CouponTemplateCustomerDO> getPointCustomReList(String id) {
@@ -33,4 +40,12 @@
         queryWrapper.lambda().eq(CouponTemplateCustomerDO::getCouponId,couponTemplateId);
         return baseMapper.delete(queryWrapper)>0;
     }
+
+    @Override
+    public List<Customer> getPointCustomerList(String id) {
+        final List<CouponTemplateCustomerDO> pointCustomReList = getPointCustomReList(id);
+        final List<Long> customerList = pointCustomReList.stream().map(CouponTemplateCustomerDO::getCustomId).collect(Collectors.toList());
+        final List<Customer> customers = customerMapper.selectBatchIds(customerList);
+        return customers;
+    }
 }
diff --git a/src/main/java/com/mzl/flower/service/impl/coupon/CouponTemplateServiceImpl2.java b/src/main/java/com/mzl/flower/service/impl/coupon/CouponTemplateServiceImpl2.java
index 6364853..2f7632c 100644
--- a/src/main/java/com/mzl/flower/service/impl/coupon/CouponTemplateServiceImpl2.java
+++ b/src/main/java/com/mzl/flower/service/impl/coupon/CouponTemplateServiceImpl2.java
@@ -10,6 +10,7 @@
 import com.mzl.flower.constant.Constants;
 import com.mzl.flower.dto.request.coupon.*;
 import com.mzl.flower.dto.response.coupon.CouponPointStatisVO;
+import com.mzl.flower.dto.response.coupon.CouponTemplateCustomerVO;
 import com.mzl.flower.dto.response.coupon.CouponTemplateVO;
 import com.mzl.flower.entity.coupon.CouponRecordDO;
 import com.mzl.flower.entity.coupon.CouponTemplateCustomerDO;
@@ -17,7 +18,6 @@
 import com.mzl.flower.entity.customer.Customer;
 import com.mzl.flower.entity.point.CustomerPoint;
 import com.mzl.flower.entity.point.CustomerPointDetail;
-import com.mzl.flower.entity.point.PointGoodsRecord;
 import com.mzl.flower.enums.*;
 import com.mzl.flower.mapper.coupon.CouponTemplateMapper;
 import com.mzl.flower.mapper.coupon.CouponTemplateMapperCustom;
@@ -27,8 +27,6 @@
 import com.mzl.flower.service.coupon.CouponRecordService;
 import com.mzl.flower.service.coupon.CouponTemplateCustomerService;
 import com.mzl.flower.service.coupon.CouponTemplateService2;
-import com.mzl.flower.service.payment.OrderService;
-import com.mzl.flower.utils.UUIDGenerator;
 import org.apache.commons.collections4.CollectionUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.BeanUtils;
@@ -72,6 +70,8 @@
 
     @Autowired
     private CustomerPointDetailMapper customerPointDetailMapper;
+
+
 
     @Transactional
     @Override
@@ -160,7 +160,12 @@
         dto.setId(id);
         final List<CouponTemplateVO> list = getList(dto);
         if (CollectionUtils.isNotEmpty(list)) {
-            return list.get(0);
+            CouponTemplateVO vo =list.get(0);
+            if(vo.getCategory().equals(CouponCategoryEnum.USER.getStatus())){
+                List<CouponTemplateCustomerVO> customerList= couponTemplateMapperCustom.getCouponCustomerList(id);
+                vo.setCustomerList(customerList);
+            }
+            return vo;
         }
         return null;
     }
diff --git a/src/main/resources/mapper/coupon/CouponTemplateMapperCustom.xml b/src/main/resources/mapper/coupon/CouponTemplateMapperCustom.xml
index 6340109..5053646 100644
--- a/src/main/resources/mapper/coupon/CouponTemplateMapperCustom.xml
+++ b/src/main/resources/mapper/coupon/CouponTemplateMapperCustom.xml
@@ -73,6 +73,20 @@
     <select id="getActivityEffectList" resultType="com.mzl.flower.dto.response.coupon.CouponTemplateVO">
 
     </select>
+    <select id="getCouponCustomerList"
+            resultType="com.mzl.flower.dto.response.coupon.CouponTemplateCustomerVO">
+        select ci.id,ci.name,u.tel
+        from t_coupon_template c
+        left JOIN t_coupon_template_customer cc
+        on c.id=cc.coupon_id
+        left join t_customer_info ci
+        on cc.custom_id=ci.id
+        left join t_user u
+        on ci.user_id=u.id
+        where c.deleted= false
+        and c.id=#{id}
+
+    </select>
 
     <sql id="QueryPointSql">
         select *

--
Gitblit v1.9.3