优惠券 泛型转换

This commit is contained in:
2025-03-05 17:49:03 +08:00
parent 74ffcb53ed
commit 97de3a748e

View File

@@ -4,6 +4,8 @@ import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.date.DateUtil; import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson2.JSON;
import com.alibaba.fastjson2.JSONObject;
import com.czg.account.dto.QueryReceiveDto; import com.czg.account.dto.QueryReceiveDto;
import com.czg.account.dto.ShopCouponDTO; import com.czg.account.dto.ShopCouponDTO;
import com.czg.account.entity.ShopActivateCouponRecord; import com.czg.account.entity.ShopActivateCouponRecord;
@@ -21,7 +23,6 @@ import com.czg.service.account.mapper.ShopCouponMapper;
import com.czg.utils.PageUtil; import com.czg.utils.PageUtil;
import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
import com.google.gson.JsonObject;
import com.mybatisflex.core.paginate.Page; import com.mybatisflex.core.paginate.Page;
import com.mybatisflex.spring.service.impl.ServiceImpl; import com.mybatisflex.spring.service.impl.ServiceImpl;
import jakarta.annotation.Resource; import jakarta.annotation.Resource;
@@ -111,14 +112,14 @@ public class ShopCouponServiceImpl extends ServiceImpl<ShopCouponMapper, ShopCou
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("HH:mm:ss"); DateTimeFormatter formatter = DateTimeFormatter.ofPattern("HH:mm:ss");
//券id 券使用描述 //券id 券使用描述
Map<Long, JsonObject> coupons = new HashMap<>(); Map<Long, JSONObject> coupons = new HashMap<>();
for (UserCouponVo tbUserCouponVo : tbUserCouponVos) { for (UserCouponVo tbUserCouponVo : tbUserCouponVos) {
if (!coupons.containsKey(tbUserCouponVo.getCouponId())) { if (!coupons.containsKey(tbUserCouponVo.getCouponId())) {
setCouponInfo(coupons, tbUserCouponVo, null, week, now, formatter); setCouponInfo(coupons, tbUserCouponVo, null, week, now, formatter);
} }
JsonObject couponJson = coupons.get(tbUserCouponVo.getCouponId()); JSONObject couponJson = coupons.get(tbUserCouponVo.getCouponId());
tbUserCouponVo.setUseRestrictions(couponJson.get("useRestrictions").toString()); tbUserCouponVo.setUseRestrictions(couponJson.getString("useRestrictions"));
tbUserCouponVo.setUse(couponJson.get("isUse").getAsBoolean()); tbUserCouponVo.setUse(couponJson.getBoolean("isUse"));
} }
tbUserCouponVos.sort(Comparator.comparing(UserCouponVo::isUse).reversed()); tbUserCouponVos.sort(Comparator.comparing(UserCouponVo::isUse).reversed());
@@ -148,8 +149,8 @@ public class ShopCouponServiceImpl extends ServiceImpl<ShopCouponMapper, ShopCou
.update(); .update();
} }
private void setCouponInfo(Map<Long, JsonObject> coupons, UserCouponVo tbUserCouponVo, BigDecimal amount, String week, LocalTime now, DateTimeFormatter formatter) { private void setCouponInfo(Map<Long, JSONObject> coupons, UserCouponVo tbUserCouponVo, BigDecimal amount, String week, LocalTime now, DateTimeFormatter formatter) {
JsonObject json = new JsonObject(); JSONObject json = new JSONObject();
boolean isUse = true; boolean isUse = true;
ShopCoupon tbShopCoupon = getById(tbUserCouponVo.getCouponId()); ShopCoupon tbShopCoupon = getById(tbUserCouponVo.getCouponId());
StringBuilder useRestrictions = new StringBuilder("每天 "); StringBuilder useRestrictions = new StringBuilder("每天 ");
@@ -177,8 +178,8 @@ public class ShopCouponServiceImpl extends ServiceImpl<ShopCouponMapper, ShopCou
useRestrictions.append("全时段"); useRestrictions.append("全时段");
} }
useRestrictions.append(" 可用"); useRestrictions.append(" 可用");
json.addProperty("isUse", isUse); json.put("isUse", isUse);
json.addProperty("useRestrictions", useRestrictions.toString()); json.put("useRestrictions", useRestrictions);
coupons.put(tbUserCouponVo.getCouponId(), json); coupons.put(tbUserCouponVo.getCouponId(), json);
} }