|
@@ -4,7 +4,9 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
import com.xynet.marketing.entity.MercCoupon;
|
|
|
+import com.xynet.marketing.enums.MemberCouponStatusEnum;
|
|
|
import com.xynet.marketing.mapper.MercCouponMapper;
|
|
|
+import com.xynet.marketing.service.MemberCouponService;
|
|
|
import com.xynet.marketing.service.MercCouponService;
|
|
|
import com.xynet.marketing.service.MercProjectDeviceService;
|
|
|
import com.xynet.marketing.service.MercProjectGoodsService;
|
|
@@ -19,6 +21,7 @@ import org.springframework.stereotype.Service;
|
|
|
|
|
|
import java.util.List;
|
|
|
import java.util.Map;
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
|
* a
|
|
@@ -35,6 +38,8 @@ public class MercCouponServiceImpl extends ServiceImpl<MercCouponMapper, MercCou
|
|
|
private MercProjectGoodsService goodsService;
|
|
|
private MercProjectDeviceService deviceService;
|
|
|
|
|
|
+ private MemberCouponService memberCouponService;
|
|
|
+
|
|
|
private static String ACT_TYPE = "coupon";
|
|
|
|
|
|
private LambdaQueryWrapper<MercCoupon> commonQueryWrapper(JMap<String, Object> param) {
|
|
@@ -79,7 +84,21 @@ public class MercCouponServiceImpl extends ServiceImpl<MercCouponMapper, MercCou
|
|
|
LambdaQueryWrapper<MercCoupon> lqw = commonQueryWrapper(param).orderByAsc(MercCoupon::getId);
|
|
|
Page<MercCoupon> page = new Page<>(param.getInt("pageNum"), param.getInt("pageSize"), true);
|
|
|
Page<MercCoupon> list = page(page, lqw);
|
|
|
- return JHashMap.copy(list);
|
|
|
+ Page<Map<String, Object>> result = JHashMap.copy(list);
|
|
|
+ if (Emptys.check(list.getRecords())) {
|
|
|
+ List<Integer> idList = list.getRecords().stream().map(i -> i.getId()).collect(Collectors.toList());
|
|
|
+ Map<Integer, Integer> allStatusNumMap = memberCouponService.mercStatistic(idList, null);
|
|
|
+ Map<Integer, Integer> unusedStatusNumMap = memberCouponService.mercStatistic(idList, MemberCouponStatusEnum.UNUSED.getCode());
|
|
|
+ Map<Integer, Integer> usedStatusNumMap = memberCouponService.mercStatistic(idList, MemberCouponStatusEnum.USED.getCode());
|
|
|
+ Map<Integer, Integer> disabledStatusNumMap = memberCouponService.mercStatistic(idList, MemberCouponStatusEnum.DISABLED.getCode());
|
|
|
+ result.getRecords().forEach(i -> {
|
|
|
+ i.put("allStatusNum", allStatusNumMap.getOrDefault(i.get("id"), 0));
|
|
|
+ i.put("unusedStatusNum", unusedStatusNumMap.getOrDefault(i.get("id"), 0));
|
|
|
+ i.put("usedStatusNum", usedStatusNumMap.getOrDefault(i.get("id"), 0));
|
|
|
+ i.put("disabledStatusNum", disabledStatusNumMap.getOrDefault(i.get("id"), 0));
|
|
|
+ });
|
|
|
+ }
|
|
|
+ return result;
|
|
|
}
|
|
|
|
|
|
@Override
|