Uat_IRC_Net8
he 2026-05-12 14:40:32 +08:00
parent 0f68f170ad
commit a04ae45402
1 changed files with 8 additions and 10 deletions

View File

@ -92,26 +92,24 @@ public class SegmentationService(IRepository<Segmentation> _segmentationReposito
private async Task SaveSegmentationVersionAsync(SaveSegmentationVersionAsyncInDto inDto)
{
var data = await _segmentationRepository.FirstOrDefaultNoTrackingAsync(x => x.Id == inDto.SegmentationId);
var lastVersion=await _segmentationVersionRepository
.Where(x => x.SegmentationId == inDto.SegmentationId)
// 如果是新增或修改,记录一条版本信息
var maxVersion = await _segmentationVersionRepository
.Where(x => x.SegmentationId == data.Id)
.OrderByDescending(x => x.Version)
.FirstOrDefaultAsync();
var startTime = maxVersion != null ? maxVersion.CreateTime : data.UpdateTime;
var segmentList = await _segmentRepository
.WhereIf(lastVersion!=null,x=>x.CreateTime<= lastVersion.CreateTime)
.Where(x=>x.CreateTime<= startTime)
.Where(x => x.SegmentationId == inDto.SegmentationId).OrderBy(x=>x.SegmentNumber).ProjectTo<SegmentVersionData>(_mapper.ConfigurationProvider).ToListAsync();
if (data.SEGUrl != string.Empty&&(inDto.SEGUrl!=data.SEGUrl||inDto.IsRestore))
{
// 如果是新增或修改,记录一条版本信息
var maxVersion = await _segmentationVersionRepository
.Where(x => x.SegmentationId == data.Id)
.OrderByDescending(x => x.Version)
.FirstOrDefaultAsync();
var newVersion = maxVersion == null ? 1 : maxVersion.Version + 1;
var startTime = maxVersion != null ? maxVersion.CreateTime : data.UpdateTime ;