From affc1e10a37ef1428dd637c6fbe0fab39538911a Mon Sep 17 00:00:00 2001 From: xiaolipro <2357729423@qq.com> Date: Fri, 13 Sep 2024 16:09:44 +0800 Subject: [PATCH] =?UTF-8?q?=E3=80=90=20=20=20=201.=20=E8=BD=A8=E8=BF=B9?= =?UTF-8?q?=E6=A8=A1=E6=9D=BF=E9=A1=B5=E9=9D=A2=E6=96=B0=E5=A2=9E=E7=BC=96?= =?UTF-8?q?=E8=BE=91=E5=BC=B9=E7=AA=97=E5=A2=9E=E5=8A=A0=E5=88=86=E7=B1=BB?= =?UTF-8?q?=E5=92=8C=E5=AE=A2=E6=88=B72=E4=B8=AA=E5=AD=97=E6=AE=B5?= =?UTF-8?q?=EF=BC=8C=E9=9D=9E=E5=BF=85=E5=A1=AB=EF=BC=8C=E9=99=90=E5=88=B6?= =?UTF-8?q?{=E5=AD=90=E7=B3=BB=E7=BB=9F+=E6=A8=A1=E6=9D=BF=E5=90=8D?= =?UTF-8?q?=E7=A7=B0+=E6=A8=A1=E6=9D=BF=E4=BB=A3=E7=A0=81+=E5=88=86?= =?UTF-8?q?=E7=B1=BB+=E5=AE=A2=E6=88=B7}=E5=94=AF=E4=B8=80=E3=80=91=20http?= =?UTF-8?q?s://www.tapd.cn/60863849/prong/tasks/view/1160863849001027903?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Dtos/TrackTemplates/GetTrackDetailDto.cs | 11 +++++++--- .../TrackTemplates/TrackTemplateService.cs | 20 ++++++++++++++----- .../TrackTemplateEntity.cs | 12 +++++++++++ 3 files changed, 35 insertions(+), 8 deletions(-) diff --git a/src/SJZY.Track.Application.Contract/Dtos/TrackTemplates/GetTrackDetailDto.cs b/src/SJZY.Track.Application.Contract/Dtos/TrackTemplates/GetTrackDetailDto.cs index 04634cb5..ca3e1777 100644 --- a/src/SJZY.Track.Application.Contract/Dtos/TrackTemplates/GetTrackDetailDto.cs +++ b/src/SJZY.Track.Application.Contract/Dtos/TrackTemplates/GetTrackDetailDto.cs @@ -1,4 +1,4 @@ -namespace SJZY.Track.Application.Contract.Dtos.TrackTemplates; +namespace SJZY.Track.Application.Contract.Dtos.TrackTemplates; /// /// 获取轨迹模版详情 @@ -103,7 +103,12 @@ public class EditTrackTemplateInput public string? Code { set; get; } /// - /// 显示原轨迹 + /// 分类id /// - public bool ShowOrigin { get; set; } + public int CategoryId { get; set; } + + /// + /// 客户id + /// + public int CustomerId { get; set; } } diff --git a/src/SJZY.Track.Application/Services/TrackTemplates/TrackTemplateService.cs b/src/SJZY.Track.Application/Services/TrackTemplates/TrackTemplateService.cs index 4a93668c..2d849b44 100644 --- a/src/SJZY.Track.Application/Services/TrackTemplates/TrackTemplateService.cs +++ b/src/SJZY.Track.Application/Services/TrackTemplates/TrackTemplateService.cs @@ -200,16 +200,18 @@ public class TrackTemplateService : ApplicationService { #region 业务校验 + if (await _trackTemplateRepository.IsAnyAsync(a => + a.SubSystemId == input.SubSystemId && a.Code == input.Code && a.Name == input.Name && + a.CategoryId == input.CategoryId && a.CustomerId == input.CustomerId)) + { + throw new BusinessException(message: "该子系统下该分类的客户模版已存在"); + } + //校验模版代码唯一性 - //var templateEntity = - // await _trackTemplateRepository.GetFirstAsync( - // a => a.SubSystemId == input.SubSystemId && a.Code == input.Code); var templateEntitys = await _trackTemplateRepository.GetListAsync(a => a.SubSystemId == input.SubSystemId && (a.Code == input.Code || a.Name == input.Name)); if (templateEntitys.Any()) { - //throw new BusinessException(message: _stringLocalizer["TemplateExist"]); - //throw new BusinessException(message: "模板代码已存在于当前选择的子系统下"); var trackTemplateCode = templateEntitys.FirstOrDefault(t => t.Code == input.Code); if (trackTemplateCode != null) { @@ -235,6 +237,14 @@ public class TrackTemplateService : ApplicationService { #region 业务校验 + if (await _trackTemplateRepository.IsAnyAsync(a => + a.Id != input.Id && + a.SubSystemId == input.SubSystemId && a.Code == input.Code && a.Name == input.Name && + a.CategoryId == input.CategoryId && a.CustomerId == input.CustomerId)) + { + throw new BusinessException(message: "该子系统下该分类的客户模版已存在"); + } + var templateEntitys = await _trackTemplateRepository.GetListAsync(a => a.Id != input.Id && a.SubSystemId == input.SubSystemId && (a.Code == input.Code || a.Name == input.Name)); if (templateEntitys.Any()) diff --git a/src/SJZY.Track.Domain/Aggregates/TrackTemplateAggregate/TrackTemplateEntity.cs b/src/SJZY.Track.Domain/Aggregates/TrackTemplateAggregate/TrackTemplateEntity.cs index e1236990..d525300f 100644 --- a/src/SJZY.Track.Domain/Aggregates/TrackTemplateAggregate/TrackTemplateEntity.cs +++ b/src/SJZY.Track.Domain/Aggregates/TrackTemplateAggregate/TrackTemplateEntity.cs @@ -29,4 +29,16 @@ public class TrackTemplateEntity : IFullAuditedBasicEntitys, IAggregateRoot /// [SugarColumn(ColumnName = "SubSystemId")] public int SubSystemId { get; set; } + + /// + /// 分类id + /// + [SugarColumn(ColumnName = "CategoryId")] + public int CategoryId { get; set; } + + /// + /// 客户id + /// + [SugarColumn(ColumnName = "CustomerId")] + public int CustomerId { get; set; } }