cloudroam
2024-09-03 49726442d0bad78c9211b7ea13d688c03b916ff6
Merge remote-tracking branch 'origin/master-v2' into master-v2
已修改20个文件
已添加1个文件
182 ■■■■ 文件已修改
src/main/java/com/mzl/flower/dto/request/coupon/CreateCouponRecordAppDTO.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/mzl/flower/dto/request/coupon/CreateCouponTemplateDTO.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/mzl/flower/dto/request/coupon/CreateCouponTemplatePointDTO.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/mzl/flower/dto/request/coupon/CreateCouponTemplateUserDTO.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/mzl/flower/dto/request/coupon/QueryCouponRecordDTO.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/mzl/flower/dto/response/coupon/CouponRecordResultVO.java 60 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/mzl/flower/dto/response/coupon/CouponTemplateVipVO.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/mzl/flower/entity/coupon/CouponRecordDO.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/mzl/flower/schedule/ScheduleService.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/mzl/flower/service/coupon/CouponRecordService.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/mzl/flower/service/impl/coupon/CouponRecordServiceImpl.java 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/mzl/flower/service/impl/coupon/CouponTemplateServiceImpl2.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/mzl/flower/web/v2/coupon/CouponRecordController.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/mzl/flower/web/v2/coupon/CouponTemplateActivyController.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/mzl/flower/web/v2/coupon/CouponTemplateAppController.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/mzl/flower/web/v2/coupon/CouponTemplatePointController.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/mzl/flower/web/v2/coupon/CouponTemplateUserController.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/mzl/flower/web/v2/coupon/CouponTemplateVipController.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/coupon/CouponRecordMapper.xml 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/coupon/CouponRecordMapperCustom.xml 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/coupon/CouponTemplateMapperCustom.xml 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/mzl/flower/dto/request/coupon/CreateCouponRecordAppDTO.java
对比新文件
@@ -0,0 +1,21 @@
package com.mzl.flower.dto.request.coupon;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotEmpty;
@Data
public class CreateCouponRecordAppDTO {
    /**
     * 优惠券ID
     */
    @ApiModelProperty(value = "优惠券ID")
    @NotEmpty(message = "优惠券ID不能为空")
    private String couponId;
    @ApiModelProperty(value = "商户ID",hidden = true)
    private Long customerId;
}
src/main/java/com/mzl/flower/dto/request/coupon/CreateCouponTemplateDTO.java
@@ -2,9 +2,6 @@
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mzl.flower.base.BaseAutoEntity;
import com.mzl.flower.base.BaseEntity;
import com.mzl.flower.base.annotation.DictTrans;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
@@ -13,7 +10,6 @@
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;
@Data
public class CreateCouponTemplateDTO  {
@@ -139,9 +135,6 @@
    @NotNull(message = "每人限领不能为空")
    private Integer getLimit;
    @ApiModelProperty(value = "领取后有效类型名称")
    private String usageTimeTypeName;
}
src/main/java/com/mzl/flower/dto/request/coupon/CreateCouponTemplatePointDTO.java
@@ -87,8 +87,4 @@
    @ApiModelProperty(value = "领取后有效类型名称")
    private String usageTimeTypeName;
}
src/main/java/com/mzl/flower/dto/request/coupon/CreateCouponTemplateUserDTO.java
@@ -74,8 +74,4 @@
    @NotNull(message = "指定的用户列表id不能为空")
    private List<Long> pointCostomIdList;
    @ApiModelProperty(value = "领取后有效类型名称")
    private String usageTimeTypeName;
}
src/main/java/com/mzl/flower/dto/request/coupon/QueryCouponRecordDTO.java
@@ -35,4 +35,7 @@
    @ApiModelProperty(value = "领取用户类型-全部用户,指定用户")
    private String getUserType;
    @ApiModelProperty(value = "优惠券模版ID")
    private String couponId;
}
src/main/java/com/mzl/flower/dto/response/coupon/CouponRecordResultVO.java
@@ -3,7 +3,6 @@
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;
@@ -125,5 +124,64 @@
    @ApiModelProperty(value = "订单号")
    private String orderNo;
    /**
     * 优惠券ID
     */
    @ApiModelProperty(value = "优惠券ID")
    private String couponId;
    /**
     * 用户id
     */
    @ApiModelProperty(value = "用户id")
    private String userId;
    /**
     * 商户ID
     */
    @ApiModelProperty(value = "商户ID")
    private Long customerId;
    /**
     * 使用订单
     */
    @ApiModelProperty(value = "使用订单")
    private String orderId;
    /**
     * 使用时间
     */
    @ApiModelProperty(value = "使用时间")
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss" ,timezone="GMT+8")
    @DateTimeFormat
    private LocalDateTime usedTime;
    /**
     * 优惠券种类(活动优惠券、用户优惠券、会员优惠券,积分优惠券)
     */
    @ApiModelProperty(value = "优惠券种类(活动优惠券、用户优惠券、会员优惠券,积分优惠券)")
    @DictTrans(target = "categoryName",codeType = "COUPON_CATEGORY")
    private String category;
    /**
     * 优惠券代码
     */
    @ApiModelProperty(value = "优惠券代码")
    private String couponCode;
    /**
     * 积分数量
     */
    @ApiModelProperty(value = "积分数量")
    private Integer point;
    /**
     * 会员等级
     */
    @ApiModelProperty(value = "会员等级")
    private Integer memberId;
    @ApiModelProperty(value = "优惠券种类名称")
    private String categoryName;
}
src/main/java/com/mzl/flower/dto/response/coupon/CouponTemplateVipVO.java
@@ -147,4 +147,10 @@
    @ApiModelProperty(value = "每人限领")
    private Integer getLimit;
    /**
     * 发放数量
     */
    @ApiModelProperty(value = "发放数量")
    private Integer couponAmount;
}
src/main/java/com/mzl/flower/entity/coupon/CouponRecordDO.java
@@ -100,11 +100,6 @@
    private Integer point;
    /**
     * 订单号
     */
    private String orderNo;
    /**
     * 会员等级
     */
    private Integer memberId;
src/main/java/com/mzl/flower/schedule/ScheduleService.java
@@ -9,6 +9,7 @@
import com.mzl.flower.mapper.flower.FlowerCategoryMapper;
import com.mzl.flower.mapper.partner.PartnerMapper;
import com.mzl.flower.mapper.payment.OrderMapper;
import com.mzl.flower.service.coupon.CouponRecordService;
import com.mzl.flower.service.flower.FlowerCategoryService;
import com.mzl.flower.service.flower.FlowerService;
import com.mzl.flower.service.menber.impl.GrowthValueDealService;
@@ -61,6 +62,9 @@
    @Autowired
    private GrowthValueDealService growthValueDealService;
    @Autowired
    private CouponRecordService couponRecordService;
    @Scheduled(cron = "1 0/20 * * * ?")
    public void calculateAvePrice() {
@@ -210,4 +214,20 @@
        log.info("成长值扣除结束:" + DateFormatUtils.format(System.currentTimeMillis(), "yyyy-MM-dd HH:mm:ss"));
    }
    @Scheduled(cron = "0 30 0 1 * ?")
    public void grantVipCouponRecordList() {
        log.info("会员优惠券开始:" + DateFormatUtils.format(System.currentTimeMillis(), "yyyy-MM-dd HH:mm:ss"));
        couponRecordService.grantVipCouponRecordList();
        log.info("会员优惠券结束:" + DateFormatUtils.format(System.currentTimeMillis(), "yyyy-MM-dd HH:mm:ss"));
    }
    @Scheduled(cron = "0 30 0 1 * ?")
    public void expiredCouponRecordLastMon() {
        log.info("会员优惠券开始:" + DateFormatUtils.format(System.currentTimeMillis(), "yyyy-MM-dd HH:mm:ss"));
        couponRecordService.expiredCouponRecordLastMon();
        log.info("会员优惠券结束:" + DateFormatUtils.format(System.currentTimeMillis(), "yyyy-MM-dd HH:mm:ss"));
    }
}
src/main/java/com/mzl/flower/service/coupon/CouponRecordService.java
@@ -41,7 +41,7 @@
     * 根据当月日期设置上个月的日期的优惠券过期
     * @return
     */
    boolean expiredCouponRecordByListCurMonth();
    boolean expiredCouponRecordLastMon();
    Integer statisCouponTemplateCount(QueryCouponStatisticsBO queryCouponStatisticsBO);
src/main/java/com/mzl/flower/service/impl/coupon/CouponRecordServiceImpl.java
@@ -292,6 +292,9 @@
                couponTemplateDO.setGetStartDate(firstDayStart);
                couponTemplateDO.setGetEndDate(lastDayEnd);
                // 设置总数为当前会员的人数
                couponTemplateDO.setCouponAmount(CollectionUtils.isNotEmpty(customerList)?customerList.size():0);
                // 设置默认类型固定
                couponTemplateDO.setUsageType(CouponUsageTypeEnum.FIXED.getType());
@@ -311,7 +314,7 @@
    }
    @Override
    public boolean expiredCouponRecordByListCurMonth() {
    public boolean expiredCouponRecordLastMon() {
        try{
            LocalDateTime now = LocalDateTime.now();
@@ -461,9 +464,11 @@
    public boolean cancelCouponUsage(String couponId, String orderId) {
        // 查询订单使用的优惠券
        final CouponRecordDO couponRecordDO = getCouponByOrderId(orderId);
        // TODO
        couponRecordDO.setStatus(CouponUsedStatusEnum.UNUSED.getType());
        couponRecordDO.setUsedTime(null);
        couponRecordDO.setOrderId(null);
        return false;
        return baseMapper.updateById(couponRecordDO)>0;
    }
    @Override
src/main/java/com/mzl/flower/service/impl/coupon/CouponTemplateServiceImpl2.java
@@ -132,6 +132,8 @@
            final List<CouponTemplateCustomerDO> couponCustomList = dto.getPointCostomIdList().stream().map(customId -> {
                CouponTemplateCustomerDO customReDO = new CouponTemplateCustomerDO();
                // 解决本地不加ID不报错,线上报错问题
                customReDO.setId(IdUtil.simpleUUID());
                customReDO.setCouponId(couponTemplateDO.getId());
                customReDO.setCustomId(customId);
                return customReDO;
src/main/java/com/mzl/flower/web/v2/coupon/CouponRecordController.java
@@ -42,7 +42,6 @@
    private CouponTemplateService2 couponTemplateService;
    @PostMapping("")
    @ApiOperation(value = "新增", notes = "新增")
    public ResponseEntity<ReturnDataDTO> create(@Validated @RequestBody CreateCouponRecordDTO dto) {
@@ -58,7 +57,6 @@
        if(StringUtils.isNotBlank(couponTemplateDO.getStatus()) && couponTemplateDO.getStatus().equals(CouponStatusEnum.EXPIRED.getStatus())){
            throw new ValidationException("优惠券已下架");
        }
        couponRecordService.createCouponRecord(dto);
        return returnData(R.SUCCESS.getCode(), null);
src/main/java/com/mzl/flower/web/v2/coupon/CouponTemplateActivyController.java
@@ -78,6 +78,7 @@
        }
        CreateCouponTemplateBO couponTemplateBO = new CreateCouponTemplateBO();
        BeanUtils.copyProperties(couponTemplateDO,couponTemplateBO);
        BeanUtils.copyProperties(dto, couponTemplateBO);
        // 设置成积分优惠券
src/main/java/com/mzl/flower/web/v2/coupon/CouponTemplateAppController.java
@@ -7,22 +7,26 @@
import com.mzl.flower.base.ReturnDataDTO;
import com.mzl.flower.config.exception.ValidationException;
import com.mzl.flower.config.security.SecurityUtils;
import com.mzl.flower.dto.request.coupon.CreateCouponRecordAppDTO;
import com.mzl.flower.dto.request.coupon.CreateCouponRecordDTO;
import com.mzl.flower.dto.request.coupon.QueryActivityEffectCouponDTO;
import com.mzl.flower.dto.request.coupon.QueryMineCouponRecordDTO;
import com.mzl.flower.dto.response.coupon.CouponTemplateAppVO;
import com.mzl.flower.dto.response.coupon.CouponTemplateVO;
import com.mzl.flower.dto.response.customer.CustomerDTO;
import com.mzl.flower.entity.coupon.CouponTemplateDO;
import com.mzl.flower.enums.CouponCategoryEnum;
import com.mzl.flower.enums.CouponGetTypeEnum;
import com.mzl.flower.enums.CouponStatusEnum;
import com.mzl.flower.enums.CouponUsedStatusEnum;
import com.mzl.flower.mapper.customer.CustomerMapper;
import com.mzl.flower.service.coupon.CouponRecordService;
import com.mzl.flower.service.coupon.CouponTemplateService2;
import com.mzl.flower.utils.ConverterUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.validation.annotation.Validated;
@@ -44,6 +48,10 @@
    @Autowired
    CouponRecordService couponRecordService;
    @Autowired
   CustomerMapper customerMapper;
    @GetMapping("/home/list")
    @ApiOperation(value = "查询-首页弹框", notes = "查询-首页弹框")
@@ -117,7 +125,7 @@
    @PostMapping("/receive")
    @ApiOperation(value = "优惠券领取", notes = "优惠券领取")
    public ResponseEntity<ReturnDataDTO> create(@Validated @RequestBody CreateCouponRecordDTO dto) {
    public ResponseEntity<ReturnDataDTO> create(@Validated @RequestBody CreateCouponRecordAppDTO dto) {
        final CouponTemplateDO couponTemplateDO = couponTemplateService.getById(dto.getCouponId());
        if(null==couponTemplateDO){
@@ -131,8 +139,18 @@
            throw new ValidationException("优惠券已下架");
        }
        // 根据当前获取获取商户的ID
        CustomerDTO currentCustomer = customerMapper.getCurrentCustomer(SecurityUtils.getUserId());
        if(null==currentCustomer){
            throw new ValidationException("当前登录的用户记录不存在");
        }
        // 设置当前用户为登录用户
        dto.setCustomerId(currentCustomer.getId());
        couponRecordService.createCouponRecord(dto);
        CreateCouponRecordDTO dtoTrans=new CreateCouponRecordDTO();
        BeanUtils.copyProperties(dto,dtoTrans);
        couponRecordService.createCouponRecord(dtoTrans);
        return returnData(R.SUCCESS.getCode(), null);
    }
src/main/java/com/mzl/flower/web/v2/coupon/CouponTemplatePointController.java
@@ -76,6 +76,7 @@
        }
        CreateCouponTemplateBO couponTemplateBO = new CreateCouponTemplateBO();
        BeanUtils.copyProperties(couponTemplateDO,couponTemplateBO);
        BeanUtils.copyProperties(dto, couponTemplateBO);
        // 设置成积分优惠券
src/main/java/com/mzl/flower/web/v2/coupon/CouponTemplateUserController.java
@@ -94,6 +94,7 @@
        }
        CreateCouponTemplateBO couponTemplateBO = new CreateCouponTemplateBO();
        BeanUtils.copyProperties(couponTemplateDO,couponTemplateBO);
        BeanUtils.copyProperties(dto, couponTemplateBO);
         // 设置成指定用户
src/main/java/com/mzl/flower/web/v2/coupon/CouponTemplateVipController.java
@@ -75,6 +75,7 @@
        }
        CreateCouponTemplateBO couponTemplateBO = new CreateCouponTemplateBO();
        BeanUtils.copyProperties(couponTemplateDO,couponTemplateBO);
        BeanUtils.copyProperties(dto, couponTemplateBO);
        // 设置成积分优惠券
src/main/resources/mapper/coupon/CouponRecordMapper.xml
@@ -25,7 +25,6 @@
        <result column="coupon_name" property="couponName" />
        <result column="point" property="point" />
        <result column="order_no" property="orderNo" />
    </resultMap>
src/main/resources/mapper/coupon/CouponRecordMapperCustom.xml
@@ -28,7 +28,6 @@
        <result column="get_user_type" property="getUserType" />
        <result column="point" property="point" />
        <result column="order_no" property="orderNo" />
    </resultMap>
    <update id="checkCouponExpired">
@@ -116,6 +115,10 @@
            AND (t.customerName like  concat('%', #{param.keyword},'%')
                     or t.user_id like  concat('%', #{param.keyword},'%') )
        </if>
        <if test="param.couponId != null and param.couponId != ''">
            and t.coupon_id =  #{param.couponId}
        </if>
        order by t.create_time desc
    </sql>
src/main/resources/mapper/coupon/CouponTemplateMapperCustom.xml
@@ -34,8 +34,9 @@
        <result column="status" property="status" />
        <result column="point" property="point" />
        <result column="member_id" property="memberId" />
    </resultMap>
    <update id="activeBatchCouponTemplate">
        update t_coupon_template set status='active',update_by=#{param.updateBy},update_time=now() where id in
        <foreach collection="param.idList" item="item" open="(" separator="," close=")">