Browse Source

fix 优惠卷不可用原因

zoujiajian 3 years ago
parent
commit
7f76d3c8bb

+ 0 - 1
netflix-dao/src/main/java/com/cyksj/model/entity/CouponUser.java

@@ -64,7 +64,6 @@ public class CouponUser extends BaseEntity {
 		used("used", "已使用"),
 		unused("unused", "未使用"),
 		expired("expired", "已过期"),
-		stop("stop", "未启用"),
 		invalid("invalid", "已失效"),
 		notEffective("notEffective", "未生效"),
 		;

+ 6 - 0
netflix-dao/src/main/java/com/cyksj/model/views/CouponUserView.java

@@ -142,6 +142,12 @@ public class CouponUserView {
 	@DbIgnore
 	private Boolean isAvailable;
 
+	/**
+	 * 不可用原因
+	 */
+	@DbIgnore
+	private String reason;
+
 	@DbField("cu.created_time")
 	private Date createdTime;
 }

+ 7 - 5
netflix-service/src/main/java/com/cyksj/service/coupon/impl/CouponFontServiceImpl.java

@@ -162,9 +162,12 @@ public class CouponFontServiceImpl implements CouponFontService {
 					data.setValidStartTime(data.getCreatedTime());
 					data.setValidEndTime(DateUtil.offsetDay(data.getValidStartTime(), data.getValidDays()));
 				}
-				this.setCouponUserStatus(data, now);
 				String str = couponSkuMapper.selectGoodsSkuStr(data.getCouponId());
 				data.setGoodsSkuStr(str.replaceAll(",", "/").replaceAll(";", ""));
+				if (!data.getIsAvailable()) {
+					data.setReason(String.format("仅限%s", data.getGoodsSkuStr()));
+				}
+				this.setCouponUserStatus(data, now);
 			});
 		});
 		return availableCouponList;
@@ -180,18 +183,17 @@ public class CouponFontServiceImpl implements CouponFontService {
 			if (data.getExpiryStatus() != null && !data.getExpiryStatus()) {
 				data.setCouponUserStatus(CouponUser.Status.invalid);
 				data.setIsAvailable(false);
-				isFlag = true;
-			}else if (data.getExpiryStatus() != null && !data.getStatus()) {
-				data.setCouponUserStatus(CouponUser.Status.stop);
-				data.setIsAvailable(false);
+				data.setReason("该优惠卷已失效");
 				isFlag = true;
 			} else if (now.isAfter(data.getValidEndTime())) {
 				data.setCouponUserStatus(CouponUser.Status.expired);
 				data.setIsAvailable(false);
+				data.setReason("该优惠卷已过期");
 				isFlag = true;
 			} else if (now.isBefore(data.getValidStartTime())) {
 				data.setCouponUserStatus(CouponUser.Status.notEffective);
 				data.setIsAvailable(false);
+				data.setReason("该优惠卷未生效");
 				isFlag = true;
 			}
 		}