From 4b358047c2d8b0a305c2ef9fbfe4fe7eaaea7a37 Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期三, 29 四月 2026 20:10:10 +0800
Subject: [PATCH] 修改bug
---
xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/service/impl/XpActicityServiceImpl.java | 54 +++++++++++++++++++++++++++++++++++-------------------
1 files changed, 35 insertions(+), 19 deletions(-)
diff --git a/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/service/impl/XpActicityServiceImpl.java b/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/service/impl/XpActicityServiceImpl.java
index ce44d05..e5b5920 100644
--- a/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/service/impl/XpActicityServiceImpl.java
+++ b/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/service/impl/XpActicityServiceImpl.java
@@ -5,18 +5,12 @@
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.xiaopeng.api.dto.operation.XpActivityDto;
import com.xiaopeng.api.feignClient.order.XpOrderClient;
-import com.xiaopeng.api.model.operation.XpActicityStrategy;
-import com.xiaopeng.api.model.operation.XpActicityUser;
-import com.xiaopeng.api.model.operation.XpActivity;
-import com.xiaopeng.api.model.operation.XpActivityNotice;
+import com.xiaopeng.api.model.operation.*;
import com.xiaopeng.api.query.operation.XpActivityPageListQuery;
import com.xiaopeng.common.core.utils.bean.BeanUtils;
import com.xiaopeng.common.core.web.page.PageInfo;
import com.xiaopeng.operation.mapper.XpActicityMapper;
-import com.xiaopeng.operation.service.IXpActicityService;
-import com.xiaopeng.operation.service.IXpActicityStrategyService;
-import com.xiaopeng.operation.service.IXpActicityUserService;
-import com.xiaopeng.operation.service.IXpActivityNoticeService;
+import com.xiaopeng.operation.service.*;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -49,6 +43,9 @@
@Resource
private XpOrderClient xpOrderClient;
+
+ @Resource
+ private IXpActicityCouponService xpActicityCouponService;
@@ -92,29 +89,43 @@
}
@Override
- @Transactional
public void save(XpActivityDto dto) {
XpActivity activity = new XpActivity();
BeanUtils.copyBeanProp(activity, dto);
+ activity.setActicityType(dto.getActivityType());
+ activity.setAggregateLimit(dto.getEnableTotalLimit() ? 1 : 0);
+ activity.setLimitation(dto.getTotalLimit());
+ activity.setCoverImage(dto.getImg());
+ activity.setRemarks(dto.getRichText());
save(activity);
List<XpActicityStrategy> strategy = dto.getStrategy();
List<XpActicityUser> activityUser = dto.getActivityUser();
- XpActivityNotice notice = dto.getNotice();
- strategy.forEach(e -> e.setActitcityId(activity.getId().intValue()));
- strategyService.saveBatch(strategy);
+ for (XpActicityStrategy xpActicityStrategy : strategy) {
+ xpActicityStrategy.setActitcityId(activity.getId().intValue());
+ xpActicityStrategy.setDeleted(false);
+ strategyService.save(xpActicityStrategy);
+
+ List<Long> couponIds = xpActicityStrategy.getCouponIds();
+ for (Long couponId : couponIds) {
+ XpActicityCoupon xpActicityCoupon = new XpActicityCoupon();
+ xpActicityCoupon.setActicityStrategyId(xpActicityStrategy.getId().longValue());
+ xpActicityCoupon.setCouponId(couponId);
+ xpActicityCoupon.setActivityId(activity.getId());
+ xpActicityCouponService.save(xpActicityCoupon);
+ }
+
+ }
Map<String, XpActicityStrategy> strategyMap = strategy.stream().collect(Collectors.toMap(
XpActicityStrategy::getName,
Function.identity()
));
- activityUser.forEach(item -> {
- item.setActitcityId(activity.getId().intValue());
- item.setActitcityStrategeId(strategyMap.get(item.getStrategyName()).getId());
- });
- notice.setActivityId(activity.getId());
- userService.saveBatch(activityUser);
- activityNotice.save(notice);
+ for (XpActicityUser xpActicityUser : activityUser) {
+ xpActicityUser.setActitcityId(activity.getId().intValue());
+ xpActicityUser.setActitcityStrategeId(strategyMap.get(xpActicityUser.getStrategyName()).getId());
+ userService.save(xpActicityUser);
+ }
}
@Override
@@ -122,6 +133,11 @@
XpActivity byId = getById(id);
XpActivityDto ret = new XpActivityDto();
BeanUtils.copyBeanProp(ret, byId);
+ ret.setActicityType(byId.getActicityType());
+ ret.setEnableTotalLimit(byId.getAggregateLimit() == 1);
+ ret.setTotalLimit(byId.getLimitation());
+ ret.setImg(byId.getCoverImage());
+ ret.setRichText(byId.getRemarks());
ret.setStrategy(strategyService.listByActicityId(id));
ret.setActivityUser(userService.listByActicityId(id));
return ret;
--
Gitblit v1.7.1