|
@@ -13,15 +13,13 @@ import com.xynet.marketing.entity.MemberCoupon;
|
|
|
import com.xynet.marketing.enums.CouponTypeEnum;
|
|
|
import com.xynet.marketing.enums.MemberCouponStatusEnum;
|
|
|
import com.xynet.marketing.mapper.MemberCouponMapper;
|
|
|
-import com.xynet.marketing.service.MemberCouponService;
|
|
|
-import com.xynet.marketing.service.MercProjectDeviceService;
|
|
|
-import com.xynet.marketing.service.MercProjectGoodsService;
|
|
|
-import com.xynet.marketing.service.MercService;
|
|
|
+import com.xynet.marketing.service.*;
|
|
|
import com.xynet.marketing.utils.Emptys;
|
|
|
import com.xynet.marketing.utils.collections.map.JHashMap;
|
|
|
import com.xynet.marketing.utils.collections.map.JMap;
|
|
|
import lombok.AllArgsConstructor;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
+import org.springframework.context.annotation.Lazy;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
import java.time.LocalDate;
|
|
@@ -41,7 +39,7 @@ import java.util.stream.Collectors;
|
|
|
*/
|
|
|
@Service
|
|
|
@Slf4j
|
|
|
-@AllArgsConstructor
|
|
|
+@AllArgsConstructor(onConstructor_ = @Lazy)
|
|
|
public class MemberCouponServiceImpl extends ServiceImpl<MemberCouponMapper, MemberCoupon> implements MemberCouponService {
|
|
|
|
|
|
private MercProjectGoodsService goodsService;
|
|
@@ -50,6 +48,8 @@ public class MemberCouponServiceImpl extends ServiceImpl<MemberCouponMapper, Mem
|
|
|
|
|
|
private MercService mercService;
|
|
|
|
|
|
+ private MercCouponService mercCouponService;
|
|
|
+
|
|
|
private LambdaQueryWrapper<MemberCoupon> commonQueryWrapper(JMap<String, Object> param) {
|
|
|
LambdaQueryWrapper<MemberCoupon> lqw = new LambdaQueryWrapper<MemberCoupon>()
|
|
|
.eq(Emptys.check(param.getInt("id")), MemberCoupon::getId, param.getInt("id"))
|
|
@@ -117,14 +117,10 @@ public class MemberCouponServiceImpl extends ServiceImpl<MemberCouponMapper, Mem
|
|
|
if (!Emptys.check(list)) {
|
|
|
return result;
|
|
|
}
|
|
|
+ //TODO 商品限制
|
|
|
for (int i = 0; i < list.size(); i++) {
|
|
|
MemberCoupon memberCoupon = list.get(i);
|
|
|
- Boolean deviceCondition = false;
|
|
|
- Boolean priceCondition = false;
|
|
|
- if (memberCoupon.getIsAllDevice()) {
|
|
|
- deviceCondition = true;
|
|
|
- //result.add(JHashMap.copy(item));
|
|
|
- } else {
|
|
|
+ if (!memberCoupon.getIsAllDevice()) {
|
|
|
//判断设备是否符合
|
|
|
List<Map<String, Object>> deviceList = deviceService.list(
|
|
|
new JHashMap<String, Object>()
|
|
@@ -132,26 +128,30 @@ public class MemberCouponServiceImpl extends ServiceImpl<MemberCouponMapper, Mem
|
|
|
.set("actId", memberCoupon.getCouponId())
|
|
|
.set("actType", "coupon")
|
|
|
);
|
|
|
- if (Emptys.check(deviceList)) {
|
|
|
- deviceCondition = true;
|
|
|
- //result.add(JHashMap.copy(item));
|
|
|
+ if (!Emptys.check(deviceList)) {
|
|
|
+ continue;
|
|
|
}
|
|
|
}
|
|
|
//判断商品是否符合
|
|
|
- if (deviceCondition) {
|
|
|
- if (Objects.equals(memberCoupon.getType(), CouponTypeEnum.T_1.getCode())) {
|
|
|
- //满减判断价格
|
|
|
- JSONArray priceJson = JSONUtil.parseArray(memberCoupon.getPrice());
|
|
|
- JSONObject priceObject = priceJson.getJSONObject(0);
|
|
|
- Integer limit = Integer.valueOf(priceObject.get("limit").toString());
|
|
|
- if (orderAmount >= limit) {
|
|
|
- priceCondition = true;
|
|
|
- }
|
|
|
+// if (!memberCoupon.getIsAllGoods()) {
|
|
|
+// List<Map<String, Object>> goodsList1 = goodsService.list(
|
|
|
+// new JHashMap<String, Object>()
|
|
|
+// .set("goodsIdList", goodsList)
|
|
|
+// .set("actId", memberCoupon.getCouponId())
|
|
|
+// .set("actType", "coupon")
|
|
|
+// );
|
|
|
+// }
|
|
|
+ //判断价格是否符合
|
|
|
+ if (Objects.equals(memberCoupon.getType(), CouponTypeEnum.T_1.getCode())) {
|
|
|
+ //满减判断价格
|
|
|
+ JSONArray priceJson = JSONUtil.parseArray(memberCoupon.getPrice());
|
|
|
+ JSONObject priceObject = priceJson.getJSONObject(0);
|
|
|
+ Integer limit = Integer.valueOf(priceObject.get("limit").toString());
|
|
|
+ if (orderAmount < limit) {
|
|
|
+ continue;
|
|
|
}
|
|
|
}
|
|
|
- if (priceCondition) {
|
|
|
- result.add(JHashMap.copy(memberCoupon));
|
|
|
- }
|
|
|
+ result.add(JHashMap.copy(memberCoupon));
|
|
|
}
|
|
|
return result;
|
|
|
}
|