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; }
}