puzhibing
2026-04-30 4a9ca8e24317da12e3dd07d93128a5d74c8103b8
xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/controller/XpActicityController.java
@@ -99,8 +99,11 @@
    public R<XpActivity> firstEnter(HttpServletRequest request) {
        String uid = request.getHeader("XP-Uid");
        ValueOperations<String, String> ops = redisTemplate.opsForValue();
        XpActivity activity = service.activiting(Long.valueOf(uid));
        if (activity != null) {
        List<XpActivity> activityList = service.activiting(Long.valueOf(uid));
        for (XpActivity activity : activityList) {
            Duration duration = Duration.between(LocalDateTime.now(), activity.getEndTime());
            Boolean isFirst = ops.setIfAbsent(CacheConstants.firstEnterActivity(String.valueOf(activity.getId()), uid), "1", duration);
            if(isFirst){
            List<XpAppUserCoupon> couponList = appUserCouponClient.getXpAppUserCoupon(activity.getId()).getData();
            Set<Long> longSet = couponList.stream().map(XpAppUserCoupon::getCouponId).collect(Collectors.toSet());
            if (longSet.isEmpty()) {
@@ -122,13 +125,14 @@
                vo.setQuantity(count);
                couponVos.add(vo);
            }
            Duration duration = Duration.between(LocalDateTime.now(), activity.getEndTime());
            Boolean isFirst = ops.setIfAbsent(CacheConstants.firstEnterActivity(String.valueOf(activity.getId()), uid), "1", duration);
            activity.setIsFirst(isFirst);
            activity.setCoupons(couponVos);
        }
        return R.ok(activity);
    }
        }
        return R.ok();
    }
    /**