From 7ea060d3acfdee74d24e2207e746c2061ee78a48 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期五, 24 四月 2026 15:37:57 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/1.0' into 1.0
---
xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/service/impl/XpActicityServiceImpl.java | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 50 insertions(+), 0 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 6538351..6fbc0d8 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
@@ -1,17 +1,28 @@
package com.xiaopeng.operation.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.xiaopeng.api.dto.operation.XpActivityDto;
+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.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.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.xiaopeng.operation.service.IXpActicityStrategyService;
+import com.xiaopeng.operation.service.IXpActicityUserService;
import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+import javax.annotation.Resource;
import java.time.LocalDateTime;
import java.util.List;
+import java.util.Map;
import java.util.Random;
+import java.util.function.Function;
+import java.util.stream.Collectors;
/**
* <p>
@@ -24,6 +35,11 @@
@Service
public class XpActicityServiceImpl extends ServiceImpl<XpActicityMapper, XpActivity> implements IXpActicityService {
+ @Resource
+ private IXpActicityStrategyService strategyService;
+
+ @Resource
+ private IXpActicityUserService userService;
@Override
public PageInfo<XpActivity> pageList(XpActivityPageListQuery query) {
@@ -54,4 +70,38 @@
return null;
}
+ @Override
+ @Transactional
+ public void save(XpActivityDto dto) {
+
+ XpActivity activity = new XpActivity();
+ BeanUtils.copyBeanProp(activity, dto);
+ save(activity);
+
+ List<XpActicityStrategy> strategy = dto.getStrategy();
+ List<XpActicityUser> activityUser = dto.getActivityUser();
+ strategy.forEach(e -> e.setActitcityId(activity.getId().intValue()));
+ strategyService.saveBatch(strategy);
+
+ 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());
+ });
+ userService.saveBatch(activityUser);
+ }
+
+ @Override
+ public XpActivityDto detail(Long id) {
+ XpActivity byId = getById(id);
+ XpActivityDto ret = new XpActivityDto();
+ BeanUtils.copyBeanProp(ret, byId);
+ ret.setStrategy(strategyService.listByActicityId(id));
+ ret.setActivityUser(userService.listByActicityId(id));
+ return ret;
+ }
+
}
--
Gitblit v1.7.1