|
|
@@ -3,6 +3,7 @@ package com.cyksj.web.controller.user;
|
|
|
import cn.hutool.core.collection.CollUtil;
|
|
|
import cn.hutool.core.date.DateTime;
|
|
|
import cn.hutool.core.date.DateUtil;
|
|
|
+import cn.hutool.core.util.RandomUtil;
|
|
|
import cn.hutool.core.util.StrUtil;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
|
import com.cyksj.common.constant.Constant;
|
|
|
@@ -10,10 +11,7 @@ import com.cyksj.common.util.Jsons;
|
|
|
import com.cyksj.common.util.StringUtil;
|
|
|
import com.cyksj.dto.Result;
|
|
|
import com.cyksj.enums.GatewayResponse;
|
|
|
-import com.cyksj.mapper.OrderDonMapper;
|
|
|
-import com.cyksj.mapper.UserActivityMapper;
|
|
|
-import com.cyksj.mapper.UserBenefitsOrderRecordMapper;
|
|
|
-import com.cyksj.mapper.UserCertRecordMapper;
|
|
|
+import com.cyksj.mapper.*;
|
|
|
import com.cyksj.mapper.manage.coupon.CouponSkuMapper;
|
|
|
import com.cyksj.mapper.manage.coupon.CouponUserMapper;
|
|
|
import com.cyksj.model.entity.OrderDon;
|
|
|
@@ -35,6 +33,8 @@ import org.springframework.web.bind.annotation.RestController;
|
|
|
|
|
|
import javax.servlet.http.HttpServletRequest;
|
|
|
import java.util.List;
|
|
|
+import java.util.Set;
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
|
* 项目名: yhlxj2
|
|
|
@@ -67,6 +67,31 @@ public class UserBenefitsFrontController {
|
|
|
|
|
|
private final UserActivityMapper userActivityMapper;
|
|
|
|
|
|
+ private final UserBenefitsMapper userBenefitsMapper;
|
|
|
+
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 权益分类
|
|
|
+ */
|
|
|
+ @GetMapping("/get/classification")
|
|
|
+ public Result<Set<UserBenefits.Type>> getUserBenefitsClassification() {
|
|
|
+ String key = RedisService.key.USER_BENEFITS_KEY.getName() + ":cfc";
|
|
|
+ Object o = redisService.get(key);
|
|
|
+ Set<UserBenefits.Type> classifications = null;
|
|
|
+ if (o == null) {
|
|
|
+ List<UserBenefits> userBenefits = userBenefitsMapper.selectList(Wrappers.lambdaQuery(UserBenefits.class)
|
|
|
+ .eq(UserBenefits::getStatus, true));
|
|
|
+ classifications = userBenefits.stream().map(UserBenefits::getType).collect(Collectors.toSet());
|
|
|
+ redisService.set(key, classifications, RedisService.key.USER_BENEFITS_KEY.getTimeout() + RandomUtil.randomInt(1800));
|
|
|
+ } else {
|
|
|
+ classifications = (Set<UserBenefits.Type>) o;
|
|
|
+ }
|
|
|
+ return GatewayResponse.SUCCESS.newBuilder().toResult(classifications);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 用户权益
|
|
|
+ */
|
|
|
@GetMapping("/get")
|
|
|
public Result<List<UserBenefitsFrontView>> getUserBenefits(UserBenefits.Type type) {
|
|
|
long userId = StpUserUtil.getLoginIdAsLong();
|