优惠券
This commit is contained in:
@@ -1,14 +1,30 @@
|
||||
package com.starry.admin.modules.weichat.controller;
|
||||
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.starry.admin.common.aspect.CustomUserLogin;
|
||||
import com.starry.admin.common.conf.ThreadLocalRequestDetail;
|
||||
import com.starry.admin.common.exception.CustomException;
|
||||
import com.starry.admin.modules.custom.module.entity.PlayCustomUserInfoEntity;
|
||||
import com.starry.admin.modules.play.module.vo.PlayCommodityInfoVo;
|
||||
import com.starry.admin.modules.play.service.IPlayCommodityInfoService;
|
||||
import com.starry.admin.modules.shop.module.entity.PlayCouponDetailsEntity;
|
||||
import com.starry.admin.modules.shop.module.entity.PlayCouponInfoEntity;
|
||||
import com.starry.admin.modules.shop.service.IPlayCouponDetailsService;
|
||||
import com.starry.admin.modules.shop.service.IPlayCouponInfoService;
|
||||
import com.starry.admin.modules.weichat.entity.WxCouponOrderQueryVo;
|
||||
import com.starry.admin.modules.weichat.entity.WxCouponOrderReturnVo;
|
||||
import com.starry.admin.modules.weichat.entity.WxCouponReceiveReturnVo;
|
||||
import com.starry.common.result.R;
|
||||
import com.starry.common.utils.ConvertUtil;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* @author admin
|
||||
@@ -21,23 +37,90 @@ public class WxCouponController {
|
||||
|
||||
|
||||
@Resource
|
||||
IPlayCouponDetailsService couponDetailsService;
|
||||
IPlayCouponDetailsService couponDetailsService;
|
||||
|
||||
@Resource
|
||||
IPlayCouponInfoService couponInfoService;
|
||||
|
||||
@Resource
|
||||
private IPlayCommodityInfoService playCommodityInfoService;
|
||||
|
||||
|
||||
@CustomUserLogin
|
||||
@GetMapping("/custom/obtainCoupon")
|
||||
public R queryAll(@RequestParam("id") String id) {
|
||||
PlayCustomUserInfoEntity customUserInfo = ThreadLocalRequestDetail.getCustomUserInfo();
|
||||
if (StrUtil.isEmpty(id)) {
|
||||
throw new CustomException("请求参数异常,优惠券ID不能为");
|
||||
}
|
||||
PlayCouponInfoEntity entity = couponInfoService.selectPlayCouponInfoById(id);
|
||||
String msg = couponInfoService.getReasonForNotObtainingCoupons(entity, customUserInfo);
|
||||
boolean success = StrUtil.isBlank(msg);
|
||||
// 优惠券领取验证通过,发放优惠券
|
||||
if (success) {
|
||||
couponDetailsService.create(customUserInfo.getId(), customUserInfo.getNickname(), customUserInfo.getLevelId(), entity.getId(), "1", "1");
|
||||
}
|
||||
Map<String, Object> result = new HashMap<>();
|
||||
result.put("success", success);
|
||||
result.put("msg", msg);
|
||||
return R.ok(result);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 查询所有优惠券,以及本人是否可领取
|
||||
*
|
||||
* @return com.starry.common.result.R
|
||||
* @author admin
|
||||
* @since 2024/7/8 13:53
|
||||
**/
|
||||
@CustomUserLogin
|
||||
@PostMapping("/custom/queryAll")
|
||||
public R queryAll() {
|
||||
List<PlayCouponDetailsEntity> obtainedCoupons = couponDetailsService.selectByCustomId(ThreadLocalRequestDetail.getCustomUserInfo().getId());
|
||||
List<PlayCouponInfoEntity> couponInfoEntities = couponInfoService.queryAll();
|
||||
List<WxCouponReceiveReturnVo> returnVos = new ArrayList<>(couponInfoEntities.size());
|
||||
for (PlayCouponInfoEntity couponInfoEntity : couponInfoEntities) {
|
||||
if ("0".equals(couponInfoEntity.getCouponOnLineState())) {
|
||||
continue;
|
||||
}
|
||||
WxCouponReceiveReturnVo vo = ConvertUtil.entityToVo(couponInfoEntity, WxCouponReceiveReturnVo.class);
|
||||
for (PlayCouponDetailsEntity obtainedCoupon : obtainedCoupons) {
|
||||
if (obtainedCoupon.getCouponId().equals(couponInfoEntity.getId())) {
|
||||
vo.setObtained("1");
|
||||
}
|
||||
}
|
||||
returnVos.add(vo);
|
||||
}
|
||||
return R.ok(returnVos);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 顾客查询本人优惠券列表
|
||||
*/
|
||||
@CustomUserLogin
|
||||
@GetMapping("/custom/queryAll")
|
||||
public R queryAll() {
|
||||
// couponDetailsService.selectByPage()
|
||||
// List<PlayCustomLevelInfoEntity> list = levelInfoService.selectAll();
|
||||
// List<PlayCustomLevelInfoReturnVo> result = new ArrayList<>();
|
||||
// for (PlayCustomLevelInfoEntity entity : list) {
|
||||
// PlayCustomLevelInfoReturnVo vo = new PlayCustomLevelInfoReturnVo();
|
||||
// BeanUtils.copyProperties(entity, vo);
|
||||
// result.add(vo);
|
||||
// }
|
||||
return R.ok("");
|
||||
@PostMapping("/custom/queryByOrder")
|
||||
public R queryByOrder(@Validated @RequestBody WxCouponOrderQueryVo vo) {
|
||||
List<PlayCouponDetailsEntity> list = couponDetailsService.selectByCustomId(ThreadLocalRequestDetail.getCustomUserInfo().getId());
|
||||
PlayCommodityInfoVo commodityInfo = playCommodityInfoService.queryCommodityInfo(vo.getCommodityId());
|
||||
// 优惠券列表
|
||||
List<WxCouponOrderReturnVo> couponReturnVos = new ArrayList<>();
|
||||
for (PlayCouponDetailsEntity couponDetails : list) {
|
||||
PlayCouponInfoEntity couponInfo = couponInfoService.selectPlayCouponInfoById(couponDetails.getCouponId());
|
||||
WxCouponOrderReturnVo wxCouponReturnVo = ConvertUtil.entityToVo(couponDetails, WxCouponOrderReturnVo.class);
|
||||
String couponReasonForUnavailableUse = couponInfoService.getCouponReasonForUnavailableUse(couponInfo, vo.getPlaceType(), vo.getCommodityId(), vo.getCommodityQuantity(), commodityInfo.getCommodityPrice());
|
||||
if (StrUtil.isEmpty(couponReasonForUnavailableUse)) {
|
||||
wxCouponReturnVo.setAvailable("1");
|
||||
} else {
|
||||
wxCouponReturnVo.setAvailable("0");
|
||||
wxCouponReturnVo.setReasonForUnavailableUse(couponReasonForUnavailableUse);
|
||||
}
|
||||
couponReturnVos.add(wxCouponReturnVo);
|
||||
}
|
||||
return R.ok(couponReturnVos);
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package com.starry.admin.modules.weichat.controller;
|
||||
|
||||
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.alibaba.fastjson2.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.starry.admin.common.aspect.CustomUserLogin;
|
||||
@@ -30,6 +31,8 @@ import com.starry.admin.modules.order.service.IPlayOrderInfoService;
|
||||
import com.starry.admin.modules.order.service.IPlayOrderRandomInfoService;
|
||||
import com.starry.admin.modules.play.module.vo.PlayCommodityInfoVo;
|
||||
import com.starry.admin.modules.play.service.IPlayCommodityInfoService;
|
||||
import com.starry.admin.modules.shop.module.entity.PlayCouponInfoEntity;
|
||||
import com.starry.admin.modules.shop.service.IPlayCouponInfoService;
|
||||
import com.starry.admin.modules.weichat.entity.*;
|
||||
import com.starry.admin.modules.weichat.entity.clerk.PlayClerkUserInfoResultVo;
|
||||
import com.starry.admin.modules.weichat.entity.costom.PlayCustomHideLevelStateEditVo;
|
||||
@@ -53,6 +56,7 @@ import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
@@ -105,6 +109,9 @@ public class WxCustomController {
|
||||
@Resource
|
||||
private IPlayClerkGiftInfoService playClerkGiftInfoService;
|
||||
|
||||
@Resource
|
||||
private IPlayCouponInfoService playCouponInfoService;
|
||||
|
||||
|
||||
/**
|
||||
* 根据店员ID查询店员详细信息
|
||||
@@ -194,7 +201,7 @@ public class WxCustomController {
|
||||
}
|
||||
String orderId = IdUtils.getUuid();
|
||||
// 记录订单信息
|
||||
playOrderInfoService.createOrderInfo(orderId, playOrderInfoService.getOrderNo(), "3", "2", "2", "0", "1", "", "0", BigDecimal.ZERO, "", "", "0", new BigDecimal(vo.getMoney()), new BigDecimal(vo.getMoney()), BigDecimal.ZERO, userId, vo.getClerkId(), vo.getWeiChatCode(), vo.getRemark());
|
||||
playOrderInfoService.createOrderInfo(orderId, playOrderInfoService.getOrderNo(), "3", "2", "2", "0", "1", "", "0", BigDecimal.ZERO, "", "", "0", new BigDecimal(vo.getMoney()), new BigDecimal(vo.getMoney()), BigDecimal.ZERO, userId, vo.getClerkId(), vo.getWeiChatCode(), new ArrayList<>(),vo.getRemark());
|
||||
//
|
||||
// playOrderInfoService.createRewardOrder(orderId, new BigDecimal(vo.getMoney()), new BigDecimal(vo.getMoney()), userId, clerkUserInfo.getId(), vo.getRemark(), vo.getWeiChatCode());
|
||||
// 顾客减少余额
|
||||
@@ -221,7 +228,7 @@ public class WxCustomController {
|
||||
}
|
||||
String orderId = IdUtils.getUuid();
|
||||
// 记录订单信息
|
||||
playOrderInfoService.createOrderInfo(orderId, playOrderInfoService.getOrderNo(), "3", "2", "2", "1", "1", giftInfo.getId(), "0", giftInfo.getPrice(), "", giftInfo.getName(), String.valueOf(vo.getGiftQuantity()), money, money, BigDecimal.ZERO, userId, vo.getClerkId(), vo.getWeiChatCode(), vo.getRemark());
|
||||
playOrderInfoService.createOrderInfo(orderId, playOrderInfoService.getOrderNo(), "3", "2", "2", "1", "1", giftInfo.getId(), "0", giftInfo.getPrice(), "", giftInfo.getName(), String.valueOf(vo.getGiftQuantity()), money, money, BigDecimal.ZERO, userId, vo.getClerkId(), vo.getWeiChatCode(), new ArrayList<>(), vo.getRemark());
|
||||
|
||||
// playOrderInfoService.createGiftOrder(orderId, vo.getGiftId(), giftInfo.getPrice(), String.valueOf(vo.getGiftQuantity()), money, money, userId, clerkUserInfo.getId(), vo.getRemark(), vo.getWeiChatCode());
|
||||
// 顾客减少余额
|
||||
@@ -271,6 +278,16 @@ public class WxCustomController {
|
||||
public R commodityToOrdder(@Validated @RequestBody PlayOrderInfoCommodityAdd vo) {
|
||||
String customId = ThreadLocalRequestDetail.getCustomUserInfo().getId();
|
||||
PlayCommodityInfoVo commodityInfo = playCommodityInfoService.queryCommodityInfo(vo.getCommodityId());
|
||||
|
||||
for (String couponId : vo.getCouponIds()) {
|
||||
PlayCouponInfoEntity couponInfo = playCouponInfoService.selectPlayCouponInfoById(couponId);
|
||||
String couponReasonForUnavailableUse = playCouponInfoService.getCouponReasonForUnavailableUse(couponInfo, "0", vo.getCommodityId(), vo.getCommodityQuantity(), commodityInfo.getCommodityPrice());
|
||||
if (StrUtil.isNotBlank(couponReasonForUnavailableUse)) {
|
||||
throw new CustomException("优惠券不可用");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
PlayCustomUserInfoEntity customUserInfo = customUserInfoService.selectById(customId);
|
||||
PlayClerkUserInfoEntity clerkUserInfo = clerkUserInfoService.selectById(vo.getClerkId());
|
||||
BigDecimal money = commodityInfo.getCommodityPrice().multiply(new BigDecimal(vo.getCommodityQuantity()));
|
||||
@@ -281,12 +298,9 @@ public class WxCustomController {
|
||||
String orderId = IdUtils.getUuid();
|
||||
|
||||
// 记录订单信息
|
||||
playOrderInfoService.createOrderInfo(orderId, playOrderInfoService.getOrderNo(), "0", "2", "0", "", "1", commodityInfo.getCommodityId(), "1", commodityInfo.getCommodityPrice(), commodityInfo.getServiceDuration(), commodityInfo.getCommodityName(), String.valueOf(vo.getCommodityQuantity()), money, money, BigDecimal.ZERO, customId, clerkUserInfo.getId(), vo.getWeiChatCode(), vo.getRemark());
|
||||
// playOrderInfoService.createOrdinaryOrder(orderId, commodityInfo.getCommodityId(), commodityInfo.getCommodityPrice(), String.valueOf(vo.getCommodityQuantity()), commodityInfo.getCommodityName(), commodityInfo.getServiceDuration(), money, money, customId, clerkUserInfo.getId(), vo.getRemark(), vo.getWeiChatCode());
|
||||
playOrderInfoService.createOrderInfo(orderId, playOrderInfoService.getOrderNo(), "0", "2", "0", "", "1", commodityInfo.getCommodityId(), "1", commodityInfo.getCommodityPrice(), commodityInfo.getServiceDuration(), commodityInfo.getCommodityName(), String.valueOf(vo.getCommodityQuantity()), money, money, BigDecimal.ZERO, customId, clerkUserInfo.getId(), vo.getWeiChatCode(), vo.getCouponIds(), vo.getRemark());
|
||||
// 顾客减少余额
|
||||
customUserInfoService.updateAccountBalanceById(customUserInfo.getId(), customUserInfo.getAccountBalance(), customUserInfo.getAccountBalance().subtract(money), "1", "下单-指定单", money, BigDecimal.ZERO, orderId);
|
||||
// 陪聊增加余额
|
||||
// clerkUserInfoService.updateAccountBalanceById(clerkUserInfo.getId(), clerkUserInfo.getAccountBalance(), clerkUserInfo.getAccountBalance().add(money), "2", "下单-指定单", money, orderId);
|
||||
return R.ok("成功");
|
||||
}
|
||||
|
||||
@@ -311,7 +325,6 @@ public class WxCustomController {
|
||||
String orderId = IdUtils.getUuid();
|
||||
|
||||
PlayOrderRandomInfoEntity orderRandomInfo = ConvertUtil.entityToVo(vo, PlayOrderRandomInfoEntity.class);
|
||||
;
|
||||
orderRandomInfo.setCommodityId(commodityInfo.getCommodityId());
|
||||
orderRandomInfo.setCommodityName(commodityInfo.getCommodityName());
|
||||
orderRandomInfo.setCommodityPrice(commodityInfo.getCommodityPrice());
|
||||
@@ -320,7 +333,7 @@ public class WxCustomController {
|
||||
orderRandomInfo.setId(orderId);
|
||||
playOrderRandomInfoService.create(orderRandomInfo);
|
||||
// 记录订单信息
|
||||
playOrderInfoService.createOrderInfo(orderId, playOrderInfoService.getOrderNo(), "0", "2", "1", "", "1", commodityInfo.getCommodityId(), "1", commodityInfo.getCommodityPrice(), commodityInfo.getServiceDuration(), commodityInfo.getCommodityName(), String.valueOf(vo.getCommodityQuantity()), money, money, BigDecimal.ZERO, customId, "", vo.getWeiChatCode(), vo.getRemark());
|
||||
playOrderInfoService.createOrderInfo(orderId, playOrderInfoService.getOrderNo(), "0", "2", "1", "", "1", commodityInfo.getCommodityId(), "1", commodityInfo.getCommodityPrice(), commodityInfo.getServiceDuration(), commodityInfo.getCommodityName(), String.valueOf(vo.getCommodityQuantity()), money, money, BigDecimal.ZERO, customId, "", vo.getWeiChatCode(), vo.getCouponIds(), vo.getRemark());
|
||||
|
||||
// playOrderInfoService.createRandomOrder(orderId, customUserInfo.getId(), commodityInfo.getCommodityPrice(), String.valueOf(vo.getCommodityQuantity()), commodityInfo.getServiceDuration(), commodityInfo.getCommodityName(), money, money, customId, vo.getRemark(), vo.getWeiChatCode());
|
||||
// 顾客减少余额
|
||||
|
||||
@@ -0,0 +1,50 @@
|
||||
package com.starry.admin.modules.weichat.controller;
|
||||
|
||||
import com.starry.admin.common.aspect.ClerkUserLogin;
|
||||
import com.starry.admin.modules.personnel.module.entity.PlayPersonnelGroupInfoEntity;
|
||||
import com.starry.admin.modules.personnel.service.IPlayPersonnelGroupInfoService;
|
||||
import com.starry.admin.modules.weichat.entity.PlayGroupWagesQueryVo;
|
||||
import com.starry.admin.modules.weichat.entity.PlayGroupWagesReturnVo;
|
||||
import com.starry.common.result.R;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 微信查询组长工资
|
||||
*
|
||||
* @author admin
|
||||
* @since 2024/7/6 下午3:46
|
||||
**/
|
||||
@Slf4j
|
||||
@RestController
|
||||
@RequestMapping("/wx/group")
|
||||
public class WxPersonnelGroupInfoController {
|
||||
|
||||
|
||||
@Resource
|
||||
private IPlayPersonnelGroupInfoService playClerkGroupInfoService;
|
||||
|
||||
|
||||
/**
|
||||
* 查询组长公工资
|
||||
*/
|
||||
@ClerkUserLogin
|
||||
@PostMapping("/wages/listAll")
|
||||
public R listGroupWagesAll(@Validated @RequestBody PlayGroupWagesQueryVo vo) {
|
||||
List<PlayPersonnelGroupInfoEntity> list = playClerkGroupInfoService.selectAll();
|
||||
List<PlayGroupWagesReturnVo> data = new ArrayList<>();
|
||||
for (PlayPersonnelGroupInfoEntity entity : list) {
|
||||
PlayGroupWagesReturnVo bean = new PlayGroupWagesReturnVo();
|
||||
bean.setGroupName(entity.getGroupName());
|
||||
data.add(bean);
|
||||
}
|
||||
return R.ok(data);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
package com.starry.admin.modules.weichat.entity;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 组长工资查询对象
|
||||
*
|
||||
* @author admin
|
||||
* @since 2024/7/6 下午3:56
|
||||
**/
|
||||
@Data
|
||||
public class PlayGroupWagesQueryVo {
|
||||
|
||||
/**
|
||||
* 统计时间
|
||||
*/
|
||||
private List<String> statisticalTime;
|
||||
}
|
||||
@@ -0,0 +1,64 @@
|
||||
package com.starry.admin.modules.weichat.entity;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* 组长工资查询对象
|
||||
*
|
||||
* @author admin
|
||||
* @since 2024/7/6 下午3:56
|
||||
**/
|
||||
@Data
|
||||
public class PlayGroupWagesReturnVo {
|
||||
|
||||
/**
|
||||
* 组名称
|
||||
*/
|
||||
private String groupName;
|
||||
|
||||
/**
|
||||
* 订单金额
|
||||
*/
|
||||
private BigDecimal orderMoney = BigDecimal.ZERO;
|
||||
|
||||
|
||||
/**
|
||||
* 订单最终金额(支付金额)
|
||||
*/
|
||||
private BigDecimal finalAmount = BigDecimal.ZERO;
|
||||
|
||||
/**
|
||||
* 续单比例
|
||||
*/
|
||||
private final double orderContinueProportion = 0.0;
|
||||
/**
|
||||
* 续单金额
|
||||
*/
|
||||
private final BigDecimal orderTotalAmount = BigDecimal.ZERO;
|
||||
|
||||
/**
|
||||
* 续费率
|
||||
*/
|
||||
private final BigDecimal orderContinueRechargeProportion = BigDecimal.ZERO;
|
||||
/**
|
||||
* 退单率
|
||||
*/
|
||||
private final BigDecimal orderChargebackProportion = BigDecimal.ZERO;
|
||||
/**
|
||||
* 续客率
|
||||
*/
|
||||
private final BigDecimal continuousCustomProportion = BigDecimal.ZERO;
|
||||
|
||||
/**
|
||||
* 订单平均价格
|
||||
*/
|
||||
private final BigDecimal averageUnitPrice = BigDecimal.ZERO;
|
||||
|
||||
|
||||
/**
|
||||
* 组长工资
|
||||
*/
|
||||
private final BigDecimal commission = BigDecimal.ZERO;
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
package com.starry.admin.modules.weichat.entity;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 顾客优惠券下单查询对象
|
||||
*
|
||||
* @author admin
|
||||
* @since 2024/7/6 下午4:16
|
||||
**/
|
||||
@Data
|
||||
public class WxCouponOrderQueryVo {
|
||||
|
||||
|
||||
private String commodityId;
|
||||
|
||||
/**
|
||||
* 下单类型(-1:其他类型;0:指定单;1:随机单;2:打赏单)
|
||||
*/
|
||||
private String placeType;
|
||||
|
||||
|
||||
private int commodityQuantity;
|
||||
}
|
||||
@@ -0,0 +1,83 @@
|
||||
package com.starry.admin.modules.weichat.entity;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import lombok.Data;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
/**
|
||||
* 顾客优惠券下单查询返回对象
|
||||
*
|
||||
* @author admin
|
||||
* @since 2024/7/6 下午4:16
|
||||
**/
|
||||
@Data
|
||||
public class WxCouponOrderReturnVo {
|
||||
|
||||
/**
|
||||
* 优惠券ID
|
||||
*/
|
||||
private String id;
|
||||
|
||||
|
||||
/**
|
||||
* 优惠券名称
|
||||
**/
|
||||
private String couponName ="测试券";
|
||||
|
||||
|
||||
/**
|
||||
* 有效期类型(0:永久有效;1:固定时间内有效;2:领取后几天内有效)
|
||||
*/
|
||||
private String validityPeriodType;
|
||||
|
||||
/**
|
||||
* 生效时间
|
||||
*/
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||
private LocalDateTime productiveTime;
|
||||
|
||||
/**
|
||||
* 到期时间
|
||||
*/
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||
private LocalDateTime expirationTime;
|
||||
|
||||
/**
|
||||
* 生效时长,validityPeriodType=2时有效
|
||||
**/
|
||||
private Integer effectiveDay;
|
||||
|
||||
/**
|
||||
* 使用优惠券最低消费金额
|
||||
**/
|
||||
private BigDecimal useMinAmount;
|
||||
|
||||
/**
|
||||
* 优惠类型(0:满减;1:折扣)
|
||||
*/
|
||||
private String discountType;
|
||||
|
||||
/**
|
||||
* 折扣值
|
||||
*/
|
||||
private BigDecimal discountAmount;
|
||||
|
||||
private String discountContent;
|
||||
|
||||
/**
|
||||
* 优惠是否可使用(0:不可使用,1:可使用)
|
||||
*/
|
||||
private String available;
|
||||
|
||||
/**
|
||||
* 优惠券不可用的原因
|
||||
*/
|
||||
private String reasonForUnavailableUse;
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,81 @@
|
||||
package com.starry.admin.modules.weichat.entity;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import lombok.Data;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
/**
|
||||
* 顾客优惠券领取查询返回对象
|
||||
*
|
||||
* @author admin
|
||||
* @since 2024/7/6 下午4:16
|
||||
**/
|
||||
@Data
|
||||
public class WxCouponReceiveReturnVo {
|
||||
|
||||
/**
|
||||
* 优惠券ID
|
||||
*/
|
||||
private String id;
|
||||
|
||||
|
||||
/**
|
||||
* 优惠券名称
|
||||
**/
|
||||
private String couponName;
|
||||
|
||||
|
||||
/**
|
||||
* 有效期类型(0:永久有效;1:固定时间内有效;2:领取后几天内有效)
|
||||
*/
|
||||
private String validityPeriodType;
|
||||
|
||||
/**
|
||||
* 生效时间
|
||||
*/
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||
private LocalDateTime productiveTime;
|
||||
|
||||
/**
|
||||
* 到期时间
|
||||
*/
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||
private LocalDateTime expirationTime;
|
||||
|
||||
/**
|
||||
* 生效时长,validityPeriodType=2时有效
|
||||
**/
|
||||
private Integer effectiveDay;
|
||||
|
||||
/**
|
||||
* 使用优惠券最低消费金额
|
||||
**/
|
||||
private BigDecimal useMinAmount;
|
||||
|
||||
/**
|
||||
* 优惠类型(0:满减;1:折扣)
|
||||
*/
|
||||
private String discountType;
|
||||
|
||||
/**
|
||||
* 折扣值
|
||||
*/
|
||||
private BigDecimal discountAmount;
|
||||
|
||||
/**
|
||||
* 优惠内容(文字展示)
|
||||
**/
|
||||
private String discountContent;
|
||||
|
||||
/**
|
||||
* 优惠是否已领取(0:未领取,1:已领取)
|
||||
*/
|
||||
private String obtained = "0";
|
||||
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user