| @@ -17,6 +17,7 @@ import com.iformall.domain.vo.WxCouponOrderCVo; | |||||
| import com.iformall.enums.EnumCouponChannelActivityStatus; | import com.iformall.enums.EnumCouponChannelActivityStatus; | ||||
| import com.iformall.enums.EnumCouponOrderStatus; | import com.iformall.enums.EnumCouponOrderStatus; | ||||
| import com.iformall.enums.EnumCouponOrderValidStatus; | import com.iformall.enums.EnumCouponOrderValidStatus; | ||||
| import com.iformall.enums.EnumCouponType; | |||||
| import com.iformall.service.MemCouponFromDspService; | import com.iformall.service.MemCouponFromDspService; | ||||
| import com.iformall.service.WxCouponOrderService; | import com.iformall.service.WxCouponOrderService; | ||||
| import com.iformall.service.WxCouponService; | import com.iformall.service.WxCouponService; | ||||
| @@ -155,6 +156,10 @@ public class WxCouponOrderController extends BaseController { | |||||
| wxCouponOrderCVo.setSalePrice(wxCouponCVo.getSalePrice()); | wxCouponOrderCVo.setSalePrice(wxCouponCVo.getSalePrice()); | ||||
| wxCouponOrderCVo.setUsePrice(wxCouponCVo.getUsePrice()); | wxCouponOrderCVo.setUsePrice(wxCouponCVo.getUsePrice()); | ||||
| wxCouponOrderCVo.setPrice(wxCouponCVo.getPrice()); | wxCouponOrderCVo.setPrice(wxCouponCVo.getPrice()); | ||||
| wxCouponOrderCVo.setTailPrice(wxCouponCVo.getTailPrice()); | |||||
| wxCouponOrderCVo.setOrigPrice(wxCouponCVo.getOrigPrice()); | |||||
| wxCouponOrderCVo.setUnit(wxCouponCVo.getUnit()); | wxCouponOrderCVo.setUnit(wxCouponCVo.getUnit()); | ||||
| wxCouponOrderCVo.setDetail(wxCouponCVo.getDetail()); | wxCouponOrderCVo.setDetail(wxCouponCVo.getDetail()); | ||||
| wxCouponOrderCVo.setRemark(wxCouponCVo.getRemark()); | wxCouponOrderCVo.setRemark(wxCouponCVo.getRemark()); | ||||
| @@ -163,8 +168,12 @@ public class WxCouponOrderController extends BaseController { | |||||
| wxCouponOrderCVo.setValidEndDate(wxCouponCVo.getValidEndDate()); | wxCouponOrderCVo.setValidEndDate(wxCouponCVo.getValidEndDate()); | ||||
| wxCouponOrderCVo.setAutoRefund(wxCouponCVo.getAutoRefund()); | wxCouponOrderCVo.setAutoRefund(wxCouponCVo.getAutoRefund()); | ||||
| wxCouponOrderCVo.setPickStartDate(wxCouponCVo.getPickStartDate()); | |||||
| wxCouponOrderCVo.setPickEndDate(wxCouponCVo.getPickStartDate()); | |||||
| Date now = new Date(); | Date now = new Date(); | ||||
| if (wxCouponOrderCVo.getValidStartDate() != null && wxCouponOrderCVo.getValidEndDate() != null ) { | |||||
| if (wxCouponOrderCVo.getValidStartDate() != null && wxCouponOrderCVo.getValidEndDate() != null | |||||
| && !wxCouponOrderCVo.getType().equals(EnumCouponType.COUPON_PREORDER.getCode())) { | |||||
| if (wxCouponOrderCVo.getValidStartDate().getTime() > now.getTime()) { | if (wxCouponOrderCVo.getValidStartDate().getTime() > now.getTime()) { | ||||
| wxCouponOrderCVo.setValidStatus(EnumCouponOrderValidStatus.PREPARED.getCode()); | wxCouponOrderCVo.setValidStatus(EnumCouponOrderValidStatus.PREPARED.getCode()); | ||||
| } else if (wxCouponOrderCVo.getValidEndDate().getTime() < now.getTime()) { | } else if (wxCouponOrderCVo.getValidEndDate().getTime() < now.getTime()) { | ||||
| @@ -173,6 +182,16 @@ public class WxCouponOrderController extends BaseController { | |||||
| wxCouponOrderCVo.setValidStatus(EnumCouponChannelActivityStatus.STARTED.getCode()); | wxCouponOrderCVo.setValidStatus(EnumCouponChannelActivityStatus.STARTED.getCode()); | ||||
| } | } | ||||
| } | } | ||||
| if(wxCouponOrderCVo.getType().equals(EnumCouponType.COUPON_PREORDER.getCode()) | |||||
| && wxCouponOrderCVo.getPickStartDate() != null && wxCouponOrderCVo.getPickEndDate() != null){ | |||||
| if (wxCouponOrderCVo.getPickStartDate().getTime() > now.getTime()) { | |||||
| wxCouponOrderCVo.setValidStatus(EnumCouponOrderValidStatus.PREPARED.getCode()); | |||||
| } else if (wxCouponOrderCVo.getPickEndDate().getTime() < now.getTime()) { | |||||
| wxCouponOrderCVo.setValidStatus(EnumCouponOrderValidStatus.ENDED.getCode()); | |||||
| } else { | |||||
| wxCouponOrderCVo.setValidStatus(EnumCouponChannelActivityStatus.STARTED.getCode()); | |||||
| } | |||||
| } | |||||
| return new ResultData(wxCouponOrderCVo); | return new ResultData(wxCouponOrderCVo); | ||||
| } | } | ||||
| @@ -354,7 +354,8 @@ public class WxOrderController extends BaseController { | |||||
| Date now = new Date(); | Date now = new Date(); | ||||
| if (wxOrderCVo.getValidStartDate() != null && wxOrderCVo.getValidEndDate() != null ) { | |||||
| if (wxOrderCVo.getValidStartDate() != null && wxOrderCVo.getValidEndDate() != null | |||||
| && !wxOrderCVo.getType().equals(EnumCouponType.COUPON_PREORDER.getCode())) { | |||||
| if (wxOrderCVo.getValidStartDate().getTime() > now.getTime()) { | if (wxOrderCVo.getValidStartDate().getTime() > now.getTime()) { | ||||
| wxOrderCVo.setValidStatus(EnumCouponOrderValidStatus.PREPARED.getCode()); | wxOrderCVo.setValidStatus(EnumCouponOrderValidStatus.PREPARED.getCode()); | ||||
| } else if (wxOrderCVo.getValidEndDate().getTime() < now.getTime()) { | } else if (wxOrderCVo.getValidEndDate().getTime() < now.getTime()) { | ||||
| @@ -363,6 +364,16 @@ public class WxOrderController extends BaseController { | |||||
| wxOrderCVo.setValidStatus(EnumCouponChannelActivityStatus.STARTED.getCode()); | wxOrderCVo.setValidStatus(EnumCouponChannelActivityStatus.STARTED.getCode()); | ||||
| } | } | ||||
| } | } | ||||
| if(wxOrderCVo.getType().equals(EnumCouponType.COUPON_PREORDER.getCode()) | |||||
| && wxOrderCVo.getPickStartDate() != null && wxOrderCVo.getPickEndDate() != null){ | |||||
| if (wxOrderCVo.getPickStartDate().getTime() > now.getTime()) { | |||||
| wxOrderCVo.setValidStatus(EnumCouponOrderValidStatus.PREPARED.getCode()); | |||||
| } else if (wxOrderCVo.getPickEndDate().getTime() < now.getTime()) { | |||||
| wxOrderCVo.setValidStatus(EnumCouponOrderValidStatus.ENDED.getCode()); | |||||
| } else { | |||||
| wxOrderCVo.setValidStatus(EnumCouponChannelActivityStatus.STARTED.getCode()); | |||||
| } | |||||
| } | |||||
| return new ResultData(wxOrderCVo); | return new ResultData(wxOrderCVo); | ||||
| } | } | ||||
| @@ -2,6 +2,7 @@ package com.iformall.domain.vo; | |||||
| import com.baomidou.mybatisplus.annotation.TableField; | import com.baomidou.mybatisplus.annotation.TableField; | ||||
| import com.fasterxml.jackson.annotation.JsonIgnoreProperties; | import com.fasterxml.jackson.annotation.JsonIgnoreProperties; | ||||
| import com.iformall.common.SortColumn; | |||||
| import com.iformall.domain.po.WxCouponOrder; | import com.iformall.domain.po.WxCouponOrder; | ||||
| import lombok.Data; | import lombok.Data; | ||||
| import lombok.EqualsAndHashCode; | import lombok.EqualsAndHashCode; | ||||
| @@ -58,6 +59,36 @@ public class WxCouponOrderCVo extends WxCouponOrder { | |||||
| private Integer usePrice; | private Integer usePrice; | ||||
| @io.swagger.annotations.ApiModelProperty(value="面额",name="price") | @io.swagger.annotations.ApiModelProperty(value="面额",name="price") | ||||
| private Integer price; | private Integer price; | ||||
| @TableField(exist = false) | |||||
| @io.swagger.annotations.ApiModelProperty(value="尾款(适用于类型10)",name="tailPrice") | |||||
| private Integer tailPrice; | |||||
| @TableField(exist = false) | |||||
| @io.swagger.annotations.ApiModelProperty(value="原价(适用于类型10)",name="origPrice") | |||||
| private Integer origPrice; | |||||
| @TableField(exist = false) | |||||
| @SortColumn(column = "tail_price") | |||||
| private String tailPriceStr; | |||||
| @TableField(exist = false) | |||||
| @SortColumn(column = "orig_price") | |||||
| private String origPriceStr; | |||||
| public String getTailPriceStr() { | |||||
| if(tailPrice!=null) { | |||||
| tailPriceStr = new BigDecimal(tailPrice).divide(new BigDecimal(100)).toString(); | |||||
| } | |||||
| return tailPriceStr; | |||||
| } | |||||
| public String getOrigPriceStr() { | |||||
| if(origPrice!=null) { | |||||
| origPriceStr = new BigDecimal(origPrice).divide(new BigDecimal(100)).toString(); | |||||
| } | |||||
| return origPriceStr; | |||||
| } | |||||
| @io.swagger.annotations.ApiModelProperty(value="单位0:钱分,1:小时",name="unit") | @io.swagger.annotations.ApiModelProperty(value="单位0:钱分,1:小时",name="unit") | ||||
| private Integer unit; | private Integer unit; | ||||
| @io.swagger.annotations.ApiModelProperty(value="须知",name="detail") | @io.swagger.annotations.ApiModelProperty(value="须知",name="detail") | ||||
| @@ -70,6 +101,14 @@ public class WxCouponOrderCVo extends WxCouponOrder { | |||||
| private Date validStartDate; | private Date validStartDate; | ||||
| @io.swagger.annotations.ApiModelProperty(value="有效日期-结束",name="validEndDate") | @io.swagger.annotations.ApiModelProperty(value="有效日期-结束",name="validEndDate") | ||||
| private Date validEndDate; | private Date validEndDate; | ||||
| @TableField(exist = false) | |||||
| @io.swagger.annotations.ApiModelProperty(value="有效日期-开始",name="pickStartDate") | |||||
| private Date pickStartDate; | |||||
| @TableField(exist = false) | |||||
| @io.swagger.annotations.ApiModelProperty(value="有效日期-结束",name="pickEndDate") | |||||
| private Date pickEndDate; | |||||
| @io.swagger.annotations.ApiModelProperty(value="内容类型(0:小程序页面类型,1:富文本类型)",name="contentType") | @io.swagger.annotations.ApiModelProperty(value="内容类型(0:小程序页面类型,1:富文本类型)",name="contentType") | ||||
| private Integer contentType; | private Integer contentType; | ||||
| @io.swagger.annotations.ApiModelProperty(value="富文本内容",name="html") | @io.swagger.annotations.ApiModelProperty(value="富文本内容",name="html") | ||||
| @@ -48,6 +48,13 @@ public class WxOrderCouponVo extends TenantEntity { | |||||
| @io.swagger.annotations.ApiModelProperty(value="有效日期-结束",name="validEndDate") | @io.swagger.annotations.ApiModelProperty(value="有效日期-结束",name="validEndDate") | ||||
| private Date validEndDate; | private Date validEndDate; | ||||
| @TableField(exist = false) | |||||
| @io.swagger.annotations.ApiModelProperty(value="有效日期-开始",name="pickStartDate") | |||||
| private Date pickStartDate; | |||||
| @TableField(exist = false) | |||||
| @io.swagger.annotations.ApiModelProperty(value="有效日期-结束",name="pickEndDate") | |||||
| private Date pickEndDate; | |||||
| @io.swagger.annotations.ApiModelProperty(value="券包中券ID-产品ID将来的产品都会放在coupon表里",name="couponOrderId") | @io.swagger.annotations.ApiModelProperty(value="券包中券ID-产品ID将来的产品都会放在coupon表里",name="couponOrderId") | ||||
| private Long couponOrderId; | private Long couponOrderId; | ||||
| @io.swagger.annotations.ApiModelProperty(value="0: 未使用 1: 已核销 2:已过期 3:已退款",name="couponOrderStatus") | @io.swagger.annotations.ApiModelProperty(value="0: 未使用 1: 已核销 2:已过期 3:已退款",name="couponOrderStatus") | ||||
| @@ -68,6 +75,14 @@ public class WxOrderCouponVo extends TenantEntity { | |||||
| private Integer usePrice; | private Integer usePrice; | ||||
| @io.swagger.annotations.ApiModelProperty(value="面额",name="price") | @io.swagger.annotations.ApiModelProperty(value="面额",name="price") | ||||
| private Integer price; | private Integer price; | ||||
| @TableField(exist = false) | |||||
| @io.swagger.annotations.ApiModelProperty(value="尾款(适用于类型10)",name="tailPrice") | |||||
| private Integer tailPrice; | |||||
| @TableField(exist = false) | |||||
| @io.swagger.annotations.ApiModelProperty(value="原价(适用于类型10)",name="origPrice") | |||||
| private Integer origPrice; | |||||
| @io.swagger.annotations.ApiModelProperty(value="单位0:钱分,1:小时",name="unit") | @io.swagger.annotations.ApiModelProperty(value="单位0:钱分,1:小时",name="unit") | ||||
| private Integer unit; | private Integer unit; | ||||
| @io.swagger.annotations.ApiModelProperty(value="须知",name="detail") | @io.swagger.annotations.ApiModelProperty(value="须知",name="detail") | ||||
| @@ -242,7 +242,7 @@ | |||||
| <sql id="allCUserOrderDetailColumns"> | <sql id="allCUserOrderDetailColumns"> | ||||
| o.id,o.order_number,o.tenant_id,o.parent_tenant_id,o.c_user_id,o.coupon_channel_id,o.product_id,o.payment_type,o.payment,o.payment_time,o.order_status,o.create_date,o.update_date, | o.id,o.order_number,o.tenant_id,o.parent_tenant_id,o.c_user_id,o.coupon_channel_id,o.product_id,o.payment_type,o.payment,o.payment_time,o.order_status,o.create_date,o.update_date, | ||||
| c.type,c.cover_img,c.title,c.sub_title,c.sale_price,c.use_price,c.price,c.unit,c.detail,c.remark,c.valid_start_date,c.valid_end_date, | |||||
| c.type,c.cover_img,c.title,c.sub_title,c.sale_price,c.use_price,c.price,c.tail_price,c.orig_price,c.unit,c.detail,c.remark,c.valid_start_date,c.valid_end_date,c.pick_start_date,c.pick_end_date, | |||||
| co.id as coupon_order_id,co.coupon_order_status,c.support_transfer,c.subsidy_num | co.id as coupon_order_id,co.coupon_order_status,c.support_transfer,c.subsidy_num | ||||
| </sql> | </sql> | ||||
| @@ -305,11 +305,16 @@ | |||||
| <result column="use_price" jdbcType="INTEGER" property="usePrice"/> | <result column="use_price" jdbcType="INTEGER" property="usePrice"/> | ||||
| <result column="detail" jdbcType="VARCHAR" property="detail"/> | <result column="detail" jdbcType="VARCHAR" property="detail"/> | ||||
| <result column="price" jdbcType="INTEGER" property="price"/> | <result column="price" jdbcType="INTEGER" property="price"/> | ||||
| <result column="tail_price" jdbcType="INTEGER" property="tailPrice"/> | |||||
| <result column="orig_price" jdbcType="INTEGER" property="origPrice"/> | |||||
| <result column="unit" jdbcType="INTEGER" property="unit"/> | <result column="unit" jdbcType="INTEGER" property="unit"/> | ||||
| <result column="remark" jdbcType="VARCHAR" property="remark"/> | <result column="remark" jdbcType="VARCHAR" property="remark"/> | ||||
| <result column="valid_start_date" jdbcType="TIMESTAMP" property="validStartDate"/> | <result column="valid_start_date" jdbcType="TIMESTAMP" property="validStartDate"/> | ||||
| <result column="valid_end_date" jdbcType="TIMESTAMP" property="validEndDate"/> | <result column="valid_end_date" jdbcType="TIMESTAMP" property="validEndDate"/> | ||||
| <result column="subsidy_num" jdbcType="INTEGER" property="subsidyNum"></result> | <result column="subsidy_num" jdbcType="INTEGER" property="subsidyNum"></result> | ||||
| <result column="pick_start_date" jdbcType="TIMESTAMP" property="pickStartDate"/> | |||||
| <result column="pick_end_date" jdbcType="TIMESTAMP" property="pickEndDate"/> | |||||
| <result column="coupon_order_id" jdbcType="BIGINT" property="couponOrderId"/> | <result column="coupon_order_id" jdbcType="BIGINT" property="couponOrderId"/> | ||||
| <result column="coupon_order_status" jdbcType="INTEGER" property="couponOrderStatus"/> | <result column="coupon_order_status" jdbcType="INTEGER" property="couponOrderStatus"/> | ||||
| @@ -332,7 +337,7 @@ | |||||
| <sql id="allCUserOrderListColumns"> | <sql id="allCUserOrderListColumns"> | ||||
| o.id,o.order_number,o.tenant_id,o.parent_tenant_id,o.c_user_id,o.coupon_channel_id,o.product_id,o.payment_type,o.payment,o.payment_time,o.order_status,o.create_date,o.update_date, | o.id,o.order_number,o.tenant_id,o.parent_tenant_id,o.c_user_id,o.coupon_channel_id,o.product_id,o.payment_type,o.payment,o.payment_time,o.order_status,o.create_date,o.update_date, | ||||
| c.type,c.cover_img,c.title,c.sub_title,c.sale_price,c.use_price,c.price,c.unit,c.valid_start_date,c.valid_end_date | |||||
| c.type,c.cover_img,c.title,c.sub_title,c.sale_price,c.use_price,c.price,c.tail_price,c.orig_price,c.unit,c.valid_start_date,c.valid_end_date,c.pick_start_date,c.pick_end_date | |||||
| </sql> | </sql> | ||||
| <select id="findListOfCUser" parameterType="com.iformall.domain.po.WxOrder" resultMap="CVoResultMap"> | <select id="findListOfCUser" parameterType="com.iformall.domain.po.WxOrder" resultMap="CVoResultMap"> | ||||