| @@ -5,6 +5,9 @@ import com.iformall.common.ErrorCode; | |||||
| import com.iformall.common.Result; | import com.iformall.common.Result; | ||||
| import com.iformall.common.ResultData; | import com.iformall.common.ResultData; | ||||
| import com.iformall.domain.po.WxCouponOrder; | import com.iformall.domain.po.WxCouponOrder; | ||||
| import com.iformall.domain.vo.WxCouponOrderCVo; | |||||
| import com.iformall.enums.EnumCouponChannelActivityStatus; | |||||
| import com.iformall.enums.EnumCouponOrderValidStatus; | |||||
| import com.iformall.exception.MallinkException; | import com.iformall.exception.MallinkException; | ||||
| import com.iformall.service.WxCouponOrderService; | import com.iformall.service.WxCouponOrderService; | ||||
| import io.swagger.annotations.Api; | import io.swagger.annotations.Api; | ||||
| @@ -17,6 +20,7 @@ import org.slf4j.LoggerFactory; | |||||
| import org.springframework.beans.factory.annotation.Autowired; | import org.springframework.beans.factory.annotation.Autowired; | ||||
| import org.springframework.web.bind.annotation.*; | import org.springframework.web.bind.annotation.*; | ||||
| import java.util.Date; | |||||
| import java.util.Map; | import java.util.Map; | ||||
| @RestController | @RestController | ||||
| @@ -113,6 +117,25 @@ public class WxCouponOrderController extends BaseController { | |||||
| logger.error("couponOrderId参数不正确: " + paramMap.toString()); | logger.error("couponOrderId参数不正确: " + paramMap.toString()); | ||||
| return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL); | return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL); | ||||
| } | } | ||||
| WxCouponOrderCVo wxCouponOrderCVo = wxCouponOrderService.detailCUserVo(getUser().getId(), couponOrderIdStr); | |||||
| if (wxCouponOrderCVo == null) | |||||
| return new ResultData(ErrorCode.COUPON_ORDER_IS_NULL); | |||||
| if (wxCouponOrderCVo.getValidStartDate() != null && wxCouponOrderCVo.getValidEndDate() != null ) { | |||||
| Date now = new Date(); | |||||
| if (wxCouponOrderCVo.getValidStartDate().getTime() > now.getTime()) { | |||||
| logger.error("此券有效期未开始:" + couponOrderIdStr); | |||||
| return new ResultData(ErrorCode.COUPON_ORDER_IS_EARLIER_THAN_VALIDDATE); | |||||
| } | |||||
| if (wxCouponOrderCVo.getValidEndDate().getTime() < now.getTime()) { | |||||
| logger.error("此券有效期已结束:" + couponOrderIdStr); | |||||
| return new ResultData(ErrorCode.COUPON_ORDER_IS_LATER_THAN_VALIDDATE); | |||||
| } | |||||
| } | |||||
| WxCouponOrder couponOrder = null; | WxCouponOrder couponOrder = null; | ||||
| try { | try { | ||||
| couponOrder = wxCouponOrderService.verify(couponOrderId, getUser().getId()); | couponOrder = wxCouponOrderService.verify(couponOrderId, getUser().getId()); | ||||
| @@ -1,12 +1,15 @@ | |||||
| package com.iformall.controller; | package com.iformall.controller; | ||||
| import com.github.pagehelper.PageInfo; | |||||
| import com.iformall.common.ErrorCode; | import com.iformall.common.ErrorCode; | ||||
| import com.iformall.common.ResultData; | import com.iformall.common.ResultData; | ||||
| import com.iformall.domain.po.WxCUser; | import com.iformall.domain.po.WxCUser; | ||||
| import com.iformall.domain.po.WxCouponOrder; | import com.iformall.domain.po.WxCouponOrder; | ||||
| import com.iformall.domain.vo.WxCardCVo; | import com.iformall.domain.vo.WxCardCVo; | ||||
| import com.iformall.domain.vo.WxCouponOrderCVo; | import com.iformall.domain.vo.WxCouponOrderCVo; | ||||
| import com.iformall.enums.EnumCouponChannelActivityStatus; | |||||
| import com.iformall.enums.EnumCouponOrderStatus; | import com.iformall.enums.EnumCouponOrderStatus; | ||||
| import com.iformall.enums.EnumCouponOrderValidStatus; | |||||
| import com.iformall.service.WxCouponOrderService; | import com.iformall.service.WxCouponOrderService; | ||||
| import io.swagger.annotations.Api; | import io.swagger.annotations.Api; | ||||
| import io.swagger.annotations.ApiImplicitParam; | import io.swagger.annotations.ApiImplicitParam; | ||||
| @@ -19,10 +22,7 @@ import org.springframework.beans.factory.annotation.Autowired; | |||||
| import org.springframework.data.redis.core.StringRedisTemplate; | import org.springframework.data.redis.core.StringRedisTemplate; | ||||
| import org.springframework.web.bind.annotation.*; | import org.springframework.web.bind.annotation.*; | ||||
| import java.util.ArrayList; | |||||
| import java.util.HashMap; | |||||
| import java.util.List; | |||||
| import java.util.Map; | |||||
| import java.util.*; | |||||
| @RestController | @RestController | ||||
| @RequestMapping("/api/couponOrder") | @RequestMapping("/api/couponOrder") | ||||
| @@ -55,7 +55,23 @@ public class WxCouponOrderController extends BaseController { | |||||
| wxCouponOrder.setSortColumns(WxCouponOrder.Field.CreateDate_DESC); | wxCouponOrder.setSortColumns(WxCouponOrder.Field.CreateDate_DESC); | ||||
| else | else | ||||
| wxCouponOrder.setSortColumns(WxCouponOrder.Field.UpdateDate_DESC); | wxCouponOrder.setSortColumns(WxCouponOrder.Field.UpdateDate_DESC); | ||||
| return wxCouponOrderService.listCUserVoAsPage(wxCouponOrder, pageNum, pageSize); | |||||
| PageInfo<WxCouponOrderCVo> page = wxCouponOrderService.listCUserVoAsPage(wxCouponOrder, pageNum, pageSize); | |||||
| Date now = new Date(); | |||||
| page.getList().stream().forEach(co->{ | |||||
| if (co.getValidStartDate() != null && co.getValidEndDate() != null ) { | |||||
| if (co.getValidStartDate().getTime() > now.getTime()) { | |||||
| co.setValidStatus(EnumCouponOrderValidStatus.PREPARED.getCode()); | |||||
| } else if (co.getValidEndDate().getTime() < now.getTime()) { | |||||
| co.setValidStatus(EnumCouponOrderValidStatus.ENDED.getCode()); | |||||
| } else { | |||||
| co.setValidStatus(EnumCouponChannelActivityStatus.STARTED.getCode()); | |||||
| } | |||||
| } | |||||
| }); | |||||
| return new ResultData(page); | |||||
| } | } | ||||
| @ApiOperation(value = "券详情接口") | @ApiOperation(value = "券详情接口") | ||||
| @@ -68,8 +84,19 @@ public class WxCouponOrderController extends BaseController { | |||||
| if (couponOrderId == null) { | if (couponOrderId == null) { | ||||
| return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL); | return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL); | ||||
| } | } | ||||
| WxCouponOrderCVo wxCouponOrderCVo = wxCouponOrderService.detailCUserVo(getUser().getId(), couponOrderId); | |||||
| Date now = new Date(); | |||||
| if (wxCouponOrderCVo.getValidStartDate() != null && wxCouponOrderCVo.getValidEndDate() != null ) { | |||||
| if (wxCouponOrderCVo.getValidStartDate().getTime() > now.getTime()) { | |||||
| wxCouponOrderCVo.setValidStatus(EnumCouponOrderValidStatus.PREPARED.getCode()); | |||||
| } else if (wxCouponOrderCVo.getValidEndDate().getTime() < now.getTime()) { | |||||
| wxCouponOrderCVo.setValidStatus(EnumCouponOrderValidStatus.ENDED.getCode()); | |||||
| } else { | |||||
| wxCouponOrderCVo.setValidStatus(EnumCouponChannelActivityStatus.STARTED.getCode()); | |||||
| } | |||||
| } | |||||
| return wxCouponOrderService.detailCUserVo(getUser().getId(), couponOrderId); | |||||
| return new ResultData(wxCouponOrderCVo); | |||||
| } | } | ||||
| @ApiOperation(value = "卡券状态接口") | @ApiOperation(value = "卡券状态接口") | ||||
| @@ -9,9 +9,7 @@ import com.iformall.domain.po.WxCouponChannel; | |||||
| import com.iformall.domain.po.WxOrder; | import com.iformall.domain.po.WxOrder; | ||||
| import com.iformall.domain.vo.WxOrderCouponPressVo; | import com.iformall.domain.vo.WxOrderCouponPressVo; | ||||
| import com.iformall.domain.vo.WxOrderCouponVo; | import com.iformall.domain.vo.WxOrderCouponVo; | ||||
| import com.iformall.enums.EnumCouponChannelStatus; | |||||
| import com.iformall.enums.EnumCouponChannelType; | |||||
| import com.iformall.enums.EnumOrderStatus; | |||||
| import com.iformall.enums.*; | |||||
| import com.iformall.exception.MallinkException; | import com.iformall.exception.MallinkException; | ||||
| import com.iformall.service.WxCouponChannelService; | import com.iformall.service.WxCouponChannelService; | ||||
| import com.iformall.service.WxOrderService; | import com.iformall.service.WxOrderService; | ||||
| @@ -251,6 +249,21 @@ public class WxOrderController extends BaseController { | |||||
| wxOrder.setcUserId(getUser().getId()); | wxOrder.setcUserId(getUser().getId()); | ||||
| wxOrder.setSortColumns(WxOrder.Field.UpdateDate_DESC); | wxOrder.setSortColumns(WxOrder.Field.UpdateDate_DESC); | ||||
| final PageInfo<WxOrderCouponVo> page = wxOrderService.listCUserVoAsPage(wxOrder, pageNum, pageSize); | final PageInfo<WxOrderCouponVo> page = wxOrderService.listCUserVoAsPage(wxOrder, pageNum, pageSize); | ||||
| Date now = new Date(); | |||||
| page.getList().stream().forEach(oc->{ | |||||
| if (oc.getValidStartDate() != null && oc.getValidEndDate() != null ) { | |||||
| if (oc.getValidStartDate().getTime() > now.getTime()) { | |||||
| oc.setValidStatus(EnumCouponOrderValidStatus.PREPARED.getCode()); | |||||
| } else if (oc.getValidEndDate().getTime() < now.getTime()) { | |||||
| oc.setValidStatus(EnumCouponOrderValidStatus.ENDED.getCode()); | |||||
| } else { | |||||
| oc.setValidStatus(EnumCouponChannelActivityStatus.STARTED.getCode()); | |||||
| } | |||||
| } | |||||
| }); | |||||
| return new ResultData(page); | return new ResultData(page); | ||||
| } | } | ||||
| @@ -274,6 +287,19 @@ public class WxOrderController extends BaseController { | |||||
| WxOrderCouponVo wxOrderCVo = wxOrderService.detailCUserVo(wxOrder); | WxOrderCouponVo wxOrderCVo = wxOrderService.detailCUserVo(wxOrder); | ||||
| if (wxOrderCVo == null) | if (wxOrderCVo == null) | ||||
| return new ResultData(ErrorCode.ORDER_IS_NOT_FIND); | return new ResultData(ErrorCode.ORDER_IS_NOT_FIND); | ||||
| Date now = new Date(); | |||||
| if (wxOrderCVo.getValidStartDate() != null && wxOrderCVo.getValidEndDate() != null ) { | |||||
| if (wxOrderCVo.getValidStartDate().getTime() > now.getTime()) { | |||||
| wxOrderCVo.setValidStatus(EnumCouponOrderValidStatus.PREPARED.getCode()); | |||||
| } else if (wxOrderCVo.getValidEndDate().getTime() < now.getTime()) { | |||||
| wxOrderCVo.setValidStatus(EnumCouponOrderValidStatus.ENDED.getCode()); | |||||
| } else { | |||||
| wxOrderCVo.setValidStatus(EnumCouponChannelActivityStatus.STARTED.getCode()); | |||||
| } | |||||
| } | |||||
| return new ResultData(wxOrderCVo); | return new ResultData(wxOrderCVo); | ||||
| } | } | ||||
| @@ -149,6 +149,8 @@ public enum ErrorCode{ | |||||
| COUPON_ORDER_IS_INVALID(4003, "卡券已经作废"), | COUPON_ORDER_IS_INVALID(4003, "卡券已经作废"), | ||||
| COUPON_ORDER_BUSER_IS_NULL(4004, "卡券B端用户不存在"), | COUPON_ORDER_BUSER_IS_NULL(4004, "卡券B端用户不存在"), | ||||
| COUPON_ORDER_MERANT_IS_NULL(4005, "卡券商户不存在"), | COUPON_ORDER_MERANT_IS_NULL(4005, "卡券商户不存在"), | ||||
| COUPON_ORDER_IS_EARLIER_THAN_VALIDDATE(4006, "卡券使用期还未开始"), | |||||
| COUPON_ORDER_IS_LATER_THAN_VALIDDATE(4007, "卡券使用期已结束"), | |||||
| /** | /** | ||||
| * 卡 | * 卡 | ||||
| @@ -45,6 +45,17 @@ public class WxCouponOrderCVo extends WxCouponOrder { | |||||
| this.ids = ids; | this.ids = ids; | ||||
| } | } | ||||
| @Transient | |||||
| private Integer validStatus; | |||||
| public Integer getValidStatus() { | |||||
| return validStatus; | |||||
| } | |||||
| public void setValidStatus(Integer validStatus) { | |||||
| this.validStatus = validStatus; | |||||
| } | |||||
| /* 基础购买到的券信息 */ | /* 基础购买到的券信息 */ | ||||
| /***/ | /***/ | ||||
| @@ -109,7 +120,12 @@ public class WxCouponOrderCVo extends WxCouponOrder { | |||||
| /*购买须知**/ | /*购买须知**/ | ||||
| @io.swagger.annotations.ApiModelProperty(value="购买须知",name="remark") | @io.swagger.annotations.ApiModelProperty(value="购买须知",name="remark") | ||||
| private String remark; | private String remark; | ||||
| /**有效日期-开始**/ | |||||
| @io.swagger.annotations.ApiModelProperty(value="有效日期-开始",name="validStartDate") | |||||
| private Date validStartDate; | |||||
| /**有效日期-结束**/ | |||||
| @io.swagger.annotations.ApiModelProperty(value="有效日期-结束",name="validEndDate") | |||||
| private Date validEndDate; | |||||
| /*发券商户信息*/ | /*发券商户信息*/ | ||||
| /*使用商户名**/ | /*使用商户名**/ | ||||
| @@ -270,4 +286,20 @@ public class WxCouponOrderCVo extends WxCouponOrder { | |||||
| public void setSendChannelType(Integer sendChannelType) { | public void setSendChannelType(Integer sendChannelType) { | ||||
| this.sendChannelType = sendChannelType; | this.sendChannelType = sendChannelType; | ||||
| } | } | ||||
| public Date getValidStartDate() { | |||||
| return validStartDate; | |||||
| } | |||||
| public void setValidStartDate(Date validStartDate) { | |||||
| this.validStartDate = validStartDate; | |||||
| } | |||||
| public Date getValidEndDate() { | |||||
| return validEndDate; | |||||
| } | |||||
| public void setValidEndDate(Date validEndDate) { | |||||
| this.validEndDate = validEndDate; | |||||
| } | |||||
| } | } | ||||
| @@ -1,6 +1,8 @@ | |||||
| package com.iformall.domain.vo; | package com.iformall.domain.vo; | ||||
| import com.fasterxml.jackson.annotation.JsonIgnoreProperties; | import com.fasterxml.jackson.annotation.JsonIgnoreProperties; | ||||
| import javax.persistence.Transient; | |||||
| import java.util.Date; | import java.util.Date; | ||||
| import java.util.List; | import java.util.List; | ||||
| @@ -23,6 +25,18 @@ public class WxOrderCouponVo { | |||||
| this.id = id; | this.id = id; | ||||
| } | } | ||||
| @Transient | |||||
| private Integer validStatus; | |||||
| public Integer getValidStatus() { | |||||
| return validStatus; | |||||
| } | |||||
| public void setValidStatus(Integer validStatus) { | |||||
| this.validStatus = validStatus; | |||||
| } | |||||
| /* 基础购买到的券信息 */ | /* 基础购买到的券信息 */ | ||||
| @@ -62,6 +76,12 @@ public class WxOrderCouponVo { | |||||
| @io.swagger.annotations.ApiModelProperty(value="更新时间",name="updateDate") | @io.swagger.annotations.ApiModelProperty(value="更新时间",name="updateDate") | ||||
| private Date updateDate; | private Date updateDate; | ||||
| /**有效日期-开始**/ | |||||
| @io.swagger.annotations.ApiModelProperty(value="有效日期-开始",name="validStartDate") | |||||
| private Date validStartDate; | |||||
| /**有效日期-结束**/ | |||||
| @io.swagger.annotations.ApiModelProperty(value="有效日期-结束",name="validEndDate") | |||||
| private Date validEndDate; | |||||
| /*券ID-产品ID将来的产品都会放在coupon表里**/ | /*券ID-产品ID将来的产品都会放在coupon表里**/ | ||||
| @io.swagger.annotations.ApiModelProperty(value="券包中券ID",name="couponOrderId") | @io.swagger.annotations.ApiModelProperty(value="券包中券ID",name="couponOrderId") | ||||
| @@ -292,4 +312,20 @@ public class WxOrderCouponVo { | |||||
| public void setSupportTransfer(Integer supportTransfer) { | public void setSupportTransfer(Integer supportTransfer) { | ||||
| this.supportTransfer = supportTransfer; | this.supportTransfer = supportTransfer; | ||||
| } | } | ||||
| public Date getValidStartDate() { | |||||
| return validStartDate; | |||||
| } | |||||
| public void setValidStartDate(Date validStartDate) { | |||||
| this.validStartDate = validStartDate; | |||||
| } | |||||
| public Date getValidEndDate() { | |||||
| return validEndDate; | |||||
| } | |||||
| public void setValidEndDate(Date validEndDate) { | |||||
| this.validEndDate = validEndDate; | |||||
| } | |||||
| } | } | ||||
| @@ -0,0 +1,37 @@ | |||||
| package com.iformall.enums; | |||||
| /** | |||||
| * Created by Stormeye on 2018/08/09. | |||||
| */ | |||||
| public enum EnumCouponOrderValidStatus { | |||||
| PREPARED(0, "未到使用期"), | |||||
| STARTED(1, "可使用"), | |||||
| ENDED(1, "已过使用期"), | |||||
| ; | |||||
| public static EnumCouponOrderValidStatus getEnum(Integer code) { | |||||
| for (EnumCouponOrderValidStatus value : values()) { | |||||
| if (value.getCode().equals(code)) { | |||||
| return value; | |||||
| } | |||||
| } | |||||
| return null; | |||||
| } | |||||
| private Integer code; | |||||
| private String message; | |||||
| EnumCouponOrderValidStatus(Integer code, String message) { | |||||
| this.code = code; | |||||
| this.message = message; | |||||
| } | |||||
| public Integer getCode() { | |||||
| return code; | |||||
| } | |||||
| public String getMessage() { | |||||
| return message; | |||||
| } | |||||
| } | |||||
| @@ -4,10 +4,7 @@ import com.github.pagehelper.PageInfo; | |||||
| import com.iformall.common.ResultData; | import com.iformall.common.ResultData; | ||||
| import com.iformall.domain.po.WxCouponOrder; | import com.iformall.domain.po.WxCouponOrder; | ||||
| import com.iformall.domain.po.WxMerchantBUser; | import com.iformall.domain.po.WxMerchantBUser; | ||||
| import com.iformall.domain.vo.CUserDateAmountVo; | |||||
| import com.iformall.domain.vo.WxCardCVo; | |||||
| import com.iformall.domain.vo.WxCouponOrderBVo; | |||||
| import com.iformall.domain.vo.WxCouponOrderCarCVo; | |||||
| import com.iformall.domain.vo.*; | |||||
| import javax.servlet.http.HttpServletRequest; | import javax.servlet.http.HttpServletRequest; | ||||
| import javax.servlet.http.HttpServletResponse; | import javax.servlet.http.HttpServletResponse; | ||||
| @@ -103,14 +100,14 @@ public interface WxCouponOrderService { | |||||
| * @param record C端用户 | * @param record C端用户 | ||||
| */ | */ | ||||
| ResultData listCUserVoAsPage(WxCouponOrder record, Integer pageIndex, Integer pageSize); | |||||
| PageInfo<WxCouponOrderCVo> listCUserVoAsPage(WxCouponOrder record, Integer pageIndex, Integer pageSize); | |||||
| /** | /** | ||||
| * C用户查券详情 | * C用户查券详情 | ||||
| * | * | ||||
| * @param cUserId C端用户 | * @param cUserId C端用户 | ||||
| */ | */ | ||||
| ResultData detailCUserVo(Long cUserId, String couponOrderId); | |||||
| WxCouponOrderCVo detailCUserVo(Long cUserId, String couponOrderId); | |||||
| /** | /** | ||||
| * C用户查券carlist | * C用户查券carlist | ||||
| @@ -193,13 +193,13 @@ public class WxCouponOrderServiceImpl implements WxCouponOrderService { | |||||
| } | } | ||||
| @Override | @Override | ||||
| public ResultData listCUserVoAsPage(WxCouponOrder record, Integer pageIndex, Integer pageSize) { | |||||
| public PageInfo<WxCouponOrderCVo> listCUserVoAsPage(WxCouponOrder record, Integer pageIndex, Integer pageSize) { | |||||
| return new ResultData(PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxCouponOrderMapper.findListOfCUser(record))); | |||||
| return PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxCouponOrderMapper.findListOfCUser(record)); | |||||
| } | } | ||||
| @Override | @Override | ||||
| public ResultData detailCUserVo(Long cUserId, String couponOrderId) { | |||||
| public WxCouponOrderCVo detailCUserVo(Long cUserId, String couponOrderId) { | |||||
| WxCUser wxCuser = wxCUserMapper.selectByPrimaryKey(cUserId); | WxCUser wxCuser = wxCUserMapper.selectByPrimaryKey(cUserId); | ||||
| if (wxCuser == null) { | if (wxCuser == null) { | ||||
| logger.error("用户不存在:" + cUserId); | logger.error("用户不存在:" + cUserId); | ||||
| @@ -208,8 +208,8 @@ public class WxCouponOrderServiceImpl implements WxCouponOrderService { | |||||
| WxCouponOrderCVo wxCouponOrderCVo = wxCouponOrderMapper.findDetailOfCUser(Long.valueOf(couponOrderId)); | WxCouponOrderCVo wxCouponOrderCVo = wxCouponOrderMapper.findDetailOfCUser(Long.valueOf(couponOrderId)); | ||||
| if (wxCouponOrderCVo == null) | if (wxCouponOrderCVo == null) | ||||
| return new ResultData(ErrorCode.COUPON_ORDER_IS_NULL); | |||||
| return new ResultData(wxCouponOrderCVo); | |||||
| throw new MallinkException(ErrorCode.COUPON_ORDER_IS_NULL); | |||||
| return wxCouponOrderCVo; | |||||
| } | } | ||||
| @@ -505,6 +505,8 @@ | |||||
| <result column="price" jdbcType="INTEGER" property="price" /> | <result column="price" jdbcType="INTEGER" property="price" /> | ||||
| <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_end_date" jdbcType="TIMESTAMP" property="validEndDate"/> | |||||
| <result column="send_channel_type" jdbcType="INTEGER" property="sendChannelType" /> | <result column="send_channel_type" jdbcType="INTEGER" property="sendChannelType" /> | ||||
| @@ -212,6 +212,8 @@ | |||||
| <result column="price" jdbcType="INTEGER" property="price"/> | <result column="price" jdbcType="INTEGER" property="price"/> | ||||
| <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_end_date" jdbcType="TIMESTAMP" property="validEndDate"/> | |||||
| <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"/> | ||||