diff --git a/src/SJZY.Track.Application.Contract/Dtos/ProvideServices/GetOrderDetailsInput.cs b/src/SJZY.Track.Application.Contract/Dtos/ProvideServices/GetOrderDetailsInput.cs
index 0060f442..45b0af3f 100644
--- a/src/SJZY.Track.Application.Contract/Dtos/ProvideServices/GetOrderDetailsInput.cs
+++ b/src/SJZY.Track.Application.Contract/Dtos/ProvideServices/GetOrderDetailsInput.cs
@@ -1,23 +1,5 @@
namespace SJZY.Track.Application.Contract.Dtos.ProvideServices;
-public class GetOrderDetailsInput
-{
- ///
- /// 轨迹订单id
- ///
- public int OrderId { get; set; }
-
- ///
- /// 子系统id
- ///
- public int SubSystemId { get; set; }
-
- ///
- /// 轨迹模板Id
- ///
- public List? TrackTemplateIds { get; set; } = new List();
-}
-
public class TrackOrderDetailDto
{
///
@@ -43,7 +25,7 @@ public class TrackOrderDetailDto
///
/// 轨迹代码
///
- public string? Code { get; set; }
+ public string Code { get; set; }
///
/// 轨迹内容
diff --git a/src/SJZY.Track.Application.Contract/Dtos/ProvideServices/GetTrackInput.cs b/src/SJZY.Track.Application.Contract/Dtos/ProvideServices/GetTrackInput.cs
index f1eec9c9..fbfeef37 100644
--- a/src/SJZY.Track.Application.Contract/Dtos/ProvideServices/GetTrackInput.cs
+++ b/src/SJZY.Track.Application.Contract/Dtos/ProvideServices/GetTrackInput.cs
@@ -4,12 +4,12 @@ namespace SJZY.Track.Application.Contract.Dtos.ProvideServices;
public class GetTrackInput : OrderNosInfo
{
+ private float? _timeZone;
+
///
/// 时区 +8 +8.25 -8.5 -9
/// 不传默认+8
///
- private float? _timeZone;
-
public float? TimeZone
{
get => _timeZone ?? 8;
diff --git a/src/SJZY.Track.Application.Contract/Dtos/TrackContents/EditTrackContentInput.cs b/src/SJZY.Track.Application.Contract/Dtos/TrackContents/EditTrackContentInput.cs
index d8b4f995..02a883f3 100644
--- a/src/SJZY.Track.Application.Contract/Dtos/TrackContents/EditTrackContentInput.cs
+++ b/src/SJZY.Track.Application.Contract/Dtos/TrackContents/EditTrackContentInput.cs
@@ -41,6 +41,11 @@ public class EditTrackContentInput
/// 轨迹标记id
///
public int TrackFlagId { get; set; }
+
+ ///
+ /// 是否对外
+ ///
+ public bool IsExternal { get; set; }
}
public class GetTrackContentDetailDto
diff --git a/src/SJZY.Track.Application.Contract/Dtos/TrackTemplates/EditTrackTemplateContentInput.cs b/src/SJZY.Track.Application.Contract/Dtos/TrackTemplates/EditTrackTemplateContentInput.cs
index e354acf2..e990ce39 100644
--- a/src/SJZY.Track.Application.Contract/Dtos/TrackTemplates/EditTrackTemplateContentInput.cs
+++ b/src/SJZY.Track.Application.Contract/Dtos/TrackTemplates/EditTrackTemplateContentInput.cs
@@ -11,16 +11,6 @@ public class EditTrackTemplateContentInput
///
public int? Id { get; set; }
- ///
- /// 是否可删
- ///
- public bool? IsCanDelete { get; set; }
-
- ///
- /// 是否对外
- ///
- public bool? IsExternal { get; set; }
-
///
/// 轨迹内容id
///
diff --git a/src/SJZY.Track.Application/Services/ProvideServices/TrackService.Query.cs b/src/SJZY.Track.Application/Services/ProvideServices/TrackService.Query.cs
index 620c9af5..e5bb28c6 100644
--- a/src/SJZY.Track.Application/Services/ProvideServices/TrackService.Query.cs
+++ b/src/SJZY.Track.Application/Services/ProvideServices/TrackService.Query.cs
@@ -54,36 +54,13 @@ public partial class TrackService
res.Add(item);
}
- await TrackDetailSort(res, input);
+ TracksOrdered(res, input);
return new UnifyResultDto>(true, res, "操作成功");
}
- private async Task TrackDetailSort(List list, GetTrackInput input)
+ private void TracksOrdered(List list, GetTrackInput input)
{
- var orderTemplates = await _provideQueries
- .GetOrderTemplateLinksAsync(input.OrderType, input.OrderNos);
- var distinctTemplateIds = orderTemplates.Select(x => x.TemplateId).Distinct().ToList();
- var templateContent = await _provideQueries.GetOrderedTrackCodesAsync(distinctTemplateIds);
-
- list.ForEach(item =>
- {
- var codes = new List();
- // 多模板拼接显示
- foreach (var orderTemplate in orderTemplates.Where(x => x.OrderNo == item.OrderNo))
- {
- codes.AddRange(templateContent
- .Where(t => t.TemplateId == orderTemplate.TemplateId) // 按模板
- .Where(t => t.IsExternal) // 过滤不对外的
- .Select(t => t.Code));
- }
-
- item.TrackDetails = item.TrackDetails
- .Where(x => codes.Contains(x.Code)) // 剔除不在模板内容中的元素
- .OrderBy(x => codes.IndexOf(x.Code)) // 按照在模板内容的位置排序
- .ToList();
- });
-
switch (input.SortMethod)
{
case SortMethod.ByTrackTime:
@@ -98,17 +75,5 @@ public partial class TrackService
default:
throw new ArgumentOutOfRangeException(nameof(input.SortMethod), input.SortMethod, "不支持的排序方式");
}
-
- // 显示原轨迹
- list.ForEach(item =>
- {
- item.TrackDetails.ForEach(track =>
- {
- if (templateContent.First(x => x.Code == track.Code).ShowOrigin)
- {
- track.Content = track.OriginContent;
- }
- });
- });
}
}
diff --git a/src/SJZY.Track.Application/Services/ProvideServices/TrackService.cs b/src/SJZY.Track.Application/Services/ProvideServices/TrackService.cs
index 3b9183a0..3edb1e64 100644
--- a/src/SJZY.Track.Application/Services/ProvideServices/TrackService.cs
+++ b/src/SJZY.Track.Application/Services/ProvideServices/TrackService.cs
@@ -107,10 +107,9 @@ public partial class TrackService : ApplicationService, ITrackService
throw new BusinessException(message: $"订单:{input.OrderNo}不存在");
}
- var codes = await _provideQueries.GetCanDeleteTrackCodesAsync(new List
- {
- order.Id
- }, input.TrackCodes);
+ // todo:判断是否可以删除取决于这条轨迹的创建人是否是系统,这里要改
+ // todo:这里重构吧,加入一个追踪id,然后根据追踪id删除,既可以防止误删,又可以减少查询
+ var codes = input.TrackCodes;
if (codes.Count == 0)
{
@@ -130,7 +129,7 @@ public partial class TrackService : ApplicationService, ITrackService
var @event = new TrackDeleteEvent
{
OrderIds = new[] { order.Id },
- TrackCodes = codes.Select(x => x.TrackCode).ToList(),
+ TrackCodes = codes,
SubSystemId = order.SubSystemId,
OperationMan = name
};
@@ -157,9 +156,8 @@ public partial class TrackService : ApplicationService, ITrackService
}
);
- var codes = await _provideQueries.GetCanDeleteTrackCodesAsync(
- orders.Select(x => x.Id).ToList(), input.TrackCodes
- );
+ // todo:判断是否可以删除取决于这条轨迹的创建人是否是系统,这里要改
+ var codes = input.TrackCodes;
if (codes.Count == 0)
{
@@ -175,18 +173,20 @@ public partial class TrackService : ApplicationService, ITrackService
var name = userInfo.Data.UserName;
- // 删除轨迹
- foreach (var group in codes.GroupBy(x => x.OrderId))
- {
- var @event = new TrackDeleteEvent
- {
- OrderIds = group.Select(x => x.OrderId).ToArray(),
- TrackCodes = input.TrackCodes,
- SubSystemId = orders.First(x => x.Id == group.Key).SubSystemId,
- OperationMan = name
- };
- await _capPublisher.PublishAsync(GlobalConst.TrackDeleteSubscribe, @event);
- }
+ // todo:重构
+
+ // // 删除轨迹
+ // foreach (var group in codes.GroupBy(x => x.OrderId))
+ // {
+ // var @event = new TrackDeleteEvent
+ // {
+ // OrderIds = group.Select(x => x.OrderId).ToArray(),
+ // TrackCodes = input.TrackCodes,
+ // SubSystemId = orders.First(x => x.Id == group.Key).SubSystemId,
+ // OperationMan = name
+ // };
+ // await _capPublisher.PublishAsync(GlobalConst.TrackDeleteSubscribe, @event);
+ // }
return new UnifyResultDto(true, true);
}
diff --git a/src/SJZY.Track.Application/Services/TrackContents/TrackContentService.cs b/src/SJZY.Track.Application/Services/TrackContents/TrackContentService.cs
index b2b5905a..bec1a467 100644
--- a/src/SJZY.Track.Application/Services/TrackContents/TrackContentService.cs
+++ b/src/SJZY.Track.Application/Services/TrackContents/TrackContentService.cs
@@ -166,7 +166,6 @@ public class TrackContentService : ApplicationService
a.Content == input.Content || a.EnContent == input.EnContent));
if (trackContentEntitys.Any())
{
- //throw new BusinessException(message: _stringLocalizer["TrackContentExist"]);
var codes = trackContentEntitys.FirstOrDefault(a => a.Code == input.Code);
if (codes != null)
{
@@ -184,7 +183,6 @@ public class TrackContentService : ApplicationService
{
throw new BusinessException(message: "该子系统下轨迹内容英文已存在");
}
- //throw new BusinessException(message: "当前子系统下,轨迹代码或轨迹内容或轨迹内容英文存在");
}
#endregion 业务逻辑校验
@@ -199,26 +197,24 @@ public class TrackContentService : ApplicationService
{
#region 业务逻辑校验
- var trackContentEntitys = await _trackContentRepository.GetListAsync(a => a.Id != input.Id &&
- a.SubSystemId == input.SubSystemId && (a.Code == input.Code ||
- a.Content == input.Content || a.EnContent == input.EnContent));
- if (trackContentEntitys.Any())
+ var trackContentEntities = await _trackContentRepository.GetListAsync(
+ a => a.Id != input.Id && a.SubSystemId == input.SubSystemId &&
+ (a.Code == input.Code || a.Content == input.Content || a.EnContent == input.EnContent));
+ if (trackContentEntities.Any())
{
- //throw new BusinessException(message: _stringLocalizer["TrackContentExist"]);
- //throw new BusinessException(message: "当前子系统下,轨迹代码或轨迹内容或轨迹内容英文存在");
- var codes = trackContentEntitys.FirstOrDefault(a => a.Code == input.Code);
+ var codes = trackContentEntities.FirstOrDefault(a => a.Code == input.Code);
if (codes != null)
{
throw new BusinessException(message: "该子系统下轨迹代码已存在");
}
- var contents = trackContentEntitys.FirstOrDefault(a => a.Content == input.Content);
+ var contents = trackContentEntities.FirstOrDefault(a => a.Content == input.Content);
if (contents != null)
{
throw new BusinessException(message: "该子系统下轨迹内容已存在");
}
- var contentEns = trackContentEntitys.FirstOrDefault(a => a.EnContent == input.EnContent);
+ var contentEns = trackContentEntities.FirstOrDefault(a => a.EnContent == input.EnContent);
if (contentEns != null)
{
throw new BusinessException(message: "该子系统下轨迹内容英文已存在");
@@ -228,14 +224,19 @@ public class TrackContentService : ApplicationService
#endregion 业务逻辑校验
//更新的时候需要覆盖内容映射轨迹代码
- var templateEntity = await _trackContentRepository.GetFirstAsync(a => a.Id == input.Id);
+ var trackContent = await _trackContentRepository.GetFirstAsync(a => a.Id == input.Id);
+
+ if (trackContent == null)
+ {
+ throw new BusinessException(message: "轨迹内容不存在");
+ }
bool isTrue;
using (var ts = TransactionScopeHelper.Create())
{
// 如果轨迹内容的子系统和code发生变化,同步到轨迹映射表
- if (templateEntity.SubSystemId != input.SubSystemId || templateEntity.Code != input.Code)
+ if (trackContent.SubSystemId != input.SubSystemId || trackContent.Code != input.Code)
{
await _trackContentRepository.UpdateMapAsync(
x => new TrackContentMapEntity
@@ -253,9 +254,9 @@ public class TrackContentService : ApplicationService
}, x => x.MapTrackContentId == input.Id);
}
- ObjectMapper.Map(input, templateEntity);
+ ObjectMapper.Map(input, trackContent);
- isTrue = await _trackContentRepository.UpdateAsync(templateEntity);
+ isTrue = await _trackContentRepository.UpdateAsync(trackContent);
ts.Complete();
}
diff --git a/src/SJZY.Track.Application/Services/TrackOrders/TrackOrderService.cs b/src/SJZY.Track.Application/Services/TrackOrders/TrackOrderService.cs
index d3c42d60..0c38b766 100644
--- a/src/SJZY.Track.Application/Services/TrackOrders/TrackOrderService.cs
+++ b/src/SJZY.Track.Application/Services/TrackOrders/TrackOrderService.cs
@@ -1,4 +1,3 @@
-using System.Diagnostics;
using SJZY.Track.Application.Contract.Dtos.ProvideServices;
using SJZY.Track.Application.Contract.Dtos.TrackOrder;
using SJZY.Track.Domain.Aggregates.OrderAggregate;
@@ -7,7 +6,6 @@ using SJZY.Track.Domain.Aggregates.TrackDetailsAggregate;
using SJZY.Track.Domain.Aggregates.TrackPushAggregate;
using SJZY.Track.Domain.Consts;
using SJZY.Track.Domain.Dtos.Order;
-using SJZY.Track.Domain.Dtos.TrackTemplate;
using SJZY.Track.Domain.Enums;
using SJZY.Track.Domain.Queries;
@@ -112,75 +110,69 @@ public class TrackOrderService : ApplicationService
return res;
}
- #region 轨迹订单明细
-
///
- /// 根据轨迹订单id获取轨迹订单明细列表
+ /// 根据订单id获取轨迹明细列表
///
- ///
+ ///
///
[HttpPost("GetDetails")]
- public async Task> GetOrderDetails(GetOrderDetailsInput input)
+ public async Task> GetTracksAsync(int orderId)
{
- var trackDetails = await _trackDetailsRepository.GetListAsync(input.OrderId);
- if (!trackDetails.IsNullOrEmpty())
+ var subSystemId = await _orderRepository.GetFirstAsync(x => x.Id == orderId, x => x.SubSystemId);
+ if (subSystemId == default)
{
- var list = ObjectMapper.Map, List>(trackDetails);
- var trackCodes = list.Where(a => !a.Code.IsNullOrWhiteSpace()).Select(a => a.Code).Distinct().ToList();
-
- var trackContents = await _trackContentRepository.GetTrackContentAttributeValue(
- new GetTemplateContentAttributeValueInputVO
- {
- SubSystemId = input.SubSystemId,
- TrackTemplateIds = input.TrackTemplateIds,
- TrackCodes = trackCodes
- });
- Debug.Assert(input.TrackTemplateIds != null, "input.TrackTemplateIds != null");
- input.TrackTemplateIds = input.TrackTemplateIds.Where(a => a > 0).ToList();
- list.ForEach(a =>
- {
- var trackContentsOfTemplates = trackContents.Where(b =>
- b.SubSystemId == input.SubSystemId && b.TrackCode == a.Code &&
- input.TrackTemplateIds.Contains(b.TrackTemplateId))
- .ToList();
- GetTemplateContentAttributeValueVO? trackContent = null;
- var insertData = input.TrackTemplateIds
- .Intersect(trackContentsOfTemplates.Select(aa => aa.TrackTemplateId)).ToList();
- if (!insertData.IsNullOrEmpty())
- {
- trackContent =
- trackContentsOfTemplates.FirstOrDefault(it =>
- it.TrackTemplateId == insertData.FirstOrDefault());
- }
-
- if (trackContent != null)
- {
- a.IsExternal = trackContent.IsExternal;
- }
-
- if (a.TrackTimeZoneValue == 0f)
- {
- a.TrackTimeZone = "GTM +00:00";
- }
- else if (Math.Abs(a.TrackTimeZoneValue - GlobalConst.NoneTrackTimeZone) < 1)
- {
- a.TrackTimeZone = "--";
- }
- else
- {
- // 将小数形式的小时转换为时区偏移量
- int hours = (int) a.TrackTimeZoneValue; // 提取整数部分作为小时
- int minutes = (int) ((a.TrackTimeZoneValue - hours) * 60); // 将小数部分乘以 60 转换为分钟
- TimeSpan offset = new TimeSpan(hours, minutes, 0);
- string timeZoneStr = offset.ToString();
- string flag = a.TrackTimeZoneValue > 0f ? "+" : "";
- a.TrackTimeZone = $"GTM {flag}{timeZoneStr.RemovePostFix(":00")}";
- }
- });
- return list;
+ throw new BusinessException(message: "订单不存在");
}
- return new List();
+ var trackDetails = await _trackDetailsRepository.GetListAsync(orderId);
+ if (trackDetails.IsNullOrEmpty())
+ {
+ return new List();
+ }
+
+ var list = ObjectMapper.Map, List>(trackDetails);
+
+ var trackCodes = list.Select(x => x.Code)
+ .Where(x => x != GlobalConst.EmptyString)
+ .Distinct()
+ .ToList();
+
+ // 是否对外
+ if (!trackCodes.IsNullOrEmpty())
+ {
+ var trackContents = await _trackContentRepository.GetListAsync(x =>
+ x.SubSystemId == subSystemId && trackCodes.Contains(x.Code), x => new
+ {
+ x.Code,
+ x.IsExternal
+ });
+
+ list.ForEach(x => x.IsExternal = trackContents.FirstOrDefault(y => y.Code == x.Code)?.IsExternal ?? false);
+ }
+
+ // 计算时区
+ list.ForEach(a =>
+ {
+ if (a.TrackTimeZoneValue == 0f)
+ {
+ a.TrackTimeZone = "GTM +00:00";
+ }
+ else if (Math.Abs(a.TrackTimeZoneValue - GlobalConst.NoneTrackTimeZone) < 1)
+ {
+ a.TrackTimeZone = "--";
+ }
+ else
+ {
+ // 将小数形式的小时转换为时区偏移量
+ var hours = (int) a.TrackTimeZoneValue; // 提取整数部分作为小时
+ var minutes = (int) ((a.TrackTimeZoneValue - hours) * 60); // 将小数部分乘以 60 转换为分钟
+ var offset = new TimeSpan(hours, minutes, 0);
+ var timeZoneStr = offset.ToString();
+ var flag = a.TrackTimeZoneValue > 0f ? "+" : "";
+ a.TrackTimeZone = $"GTM {flag}{timeZoneStr.RemovePostFix(":00")}";
+ }
+ });
+ return list;
}
///
@@ -202,6 +194,4 @@ public class TrackOrderService : ApplicationService
await _trackDetailsRepository.DeleteTrackByIdAsync(trackId, track.IndexName);
return true;
}
-
- #endregion
}
diff --git a/src/SJZY.Track.Application/Validations/TrackTemplates/EditTrackTemplateContentInputValidation.cs b/src/SJZY.Track.Application/Validations/TrackTemplates/EditTrackTemplateContentInputValidation.cs
index 273362fe..5fdf076c 100644
--- a/src/SJZY.Track.Application/Validations/TrackTemplates/EditTrackTemplateContentInputValidation.cs
+++ b/src/SJZY.Track.Application/Validations/TrackTemplates/EditTrackTemplateContentInputValidation.cs
@@ -32,12 +32,6 @@ public class EditTrackTemplateContentInputValidation : AbstractValidator x.Options != OptionTypeNoNull.删除, () =>
{
- RuleFor(x => x.IsCanDelete).NotNull().WithMessage(stringLocalizer[SjzyBasicLocalization.Validation_NotNull,
- nameof(EditTrackTemplateContentInput.IsCanDelete)]);
-
- RuleFor(x => x.IsExternal).NotNull().WithMessage(stringLocalizer[SjzyBasicLocalization.Validation_NotNull,
- nameof(EditTrackTemplateContentInput.IsExternal)]);
-
RuleFor(x => x.TrackContentId).NotNull().WithMessage(stringLocalizer[
SjzyBasicLocalization.Validation_NotNull, nameof(EditTrackTemplateContentInput.TrackContentId)]);
diff --git a/src/SJZY.Track.Domain/Aggregates/TrackContentAggregate/ITrackContentRepository.cs b/src/SJZY.Track.Domain/Aggregates/TrackContentAggregate/ITrackContentRepository.cs
index 7ebad5f1..000dbe3b 100644
--- a/src/SJZY.Track.Domain/Aggregates/TrackContentAggregate/ITrackContentRepository.cs
+++ b/src/SJZY.Track.Domain/Aggregates/TrackContentAggregate/ITrackContentRepository.cs
@@ -1,5 +1,4 @@
using SJZY.Track.Domain.Dtos.TrackContents;
-using SJZY.Track.Domain.Dtos.TrackTemplate;
namespace SJZY.Track.Domain.Aggregates.TrackContentAggregate;
@@ -27,7 +26,4 @@ public interface ITrackContentRepository : IBasicRepository
Expression> whereExpression);
Task GetTemplateIsExist(int trackContentId);
-
- Task> GetTrackContentAttributeValue(
- GetTemplateContentAttributeValueInputVO input);
}
diff --git a/src/SJZY.Track.Domain/Aggregates/TrackContentAggregate/TrackContentEntity.cs b/src/SJZY.Track.Domain/Aggregates/TrackContentAggregate/TrackContentEntity.cs
index 324888ec..b021473d 100644
--- a/src/SJZY.Track.Domain/Aggregates/TrackContentAggregate/TrackContentEntity.cs
+++ b/src/SJZY.Track.Domain/Aggregates/TrackContentAggregate/TrackContentEntity.cs
@@ -47,4 +47,10 @@ public class TrackContentEntity : IFullAuditedBasicEntitys, IAggregateRoot
///
[SugarColumn(ColumnName = "TrackStatusId")]
public int TrackStatusId { get; set; }
+
+ ///
+ /// 是否对外
+ ///
+ [SugarColumn(ColumnName = "IsExternal")]
+ public bool IsExternal { get; set; }
}
diff --git a/src/SJZY.Track.Domain/Aggregates/TrackDetailsAggregate/TrackDetailsIndex.cs b/src/SJZY.Track.Domain/Aggregates/TrackDetailsAggregate/TrackDetailsIndex.cs
index 8db3675a..0e3311c7 100644
--- a/src/SJZY.Track.Domain/Aggregates/TrackDetailsAggregate/TrackDetailsIndex.cs
+++ b/src/SJZY.Track.Domain/Aggregates/TrackDetailsAggregate/TrackDetailsIndex.cs
@@ -82,18 +82,28 @@ public class TrackDetailsIndex : IdBaseIndex
///
public DateTime ZeroTrackTime { get; set; }
- /// 是否可删
+ ///
+ /// 是否可删
+ ///
public bool IsCanDelete { get; set; }
- /// 创建人
+ ///
+ /// 创建人
+ ///
public string? CreateUser { get; set; }
- /// 创建时间
+ ///
+ /// 创建时间
+ ///
public DateTime CreateTime { get; set; }
- /// 修改人
+ ///
+ /// 修改人
+ ///
public string? UpdateUser { get; set; }
- /// 修改时间
+ ///
+ /// 修改时间
+ ///
public DateTime? UpdateTime { get; set; }
}
diff --git a/src/SJZY.Track.Domain/Aggregates/TrackStatusAggregate/TrackStatusEntity.cs b/src/SJZY.Track.Domain/Aggregates/TrackStatusAggregate/TrackStatusEntity.cs
index fee02514..67088e76 100644
--- a/src/SJZY.Track.Domain/Aggregates/TrackStatusAggregate/TrackStatusEntity.cs
+++ b/src/SJZY.Track.Domain/Aggregates/TrackStatusAggregate/TrackStatusEntity.cs
@@ -13,16 +13,10 @@ public class TrackStatusEntity : IFullAuditedBasicEntitys, IAggregateRoot
public int Id { get; set; }
///
- /// 轨迹状态代码
+ /// 子系统id
///
- [SugarColumn(ColumnName = "Code")]
- public string Code { get; set; } = null!;
-
- ///
- /// 轨迹状态英文
- ///
- [SugarColumn(ColumnName = "EnStatus")]
- public string EnStatus { get; set; } = null!;
+ [SugarColumn(ColumnName = "SubSystemId")]
+ public int SubSystemId { get; set; }
///
/// 所属节点(来自表 t_track_node) 之前是枚举,后续调整为表
@@ -30,6 +24,12 @@ public class TrackStatusEntity : IFullAuditedBasicEntitys, IAggregateRoot
[SugarColumn(ColumnName = "Node")]
public int Node { get; set; }
+ ///
+ /// 轨迹状态代码
+ ///
+ [SugarColumn(ColumnName = "Code")]
+ public string Code { get; set; } = null!;
+
///
/// 轨迹状态
///
@@ -37,8 +37,8 @@ public class TrackStatusEntity : IFullAuditedBasicEntitys, IAggregateRoot
public string Status { get; set; } = null!;
///
- /// 子系统id
+ /// 轨迹状态英文
///
- [SugarColumn(ColumnName = "SubSystemId")]
- public int SubSystemId { get; set; }
+ [SugarColumn(ColumnName = "EnStatus")]
+ public string EnStatus { get; set; } = null!;
}
diff --git a/src/SJZY.Track.Domain/Aggregates/TrackTemplateAggregate/TrackTemplateContentEntity.cs b/src/SJZY.Track.Domain/Aggregates/TrackTemplateAggregate/TrackTemplateContentEntity.cs
index 46f8806b..f8874401 100644
--- a/src/SJZY.Track.Domain/Aggregates/TrackTemplateAggregate/TrackTemplateContentEntity.cs
+++ b/src/SJZY.Track.Domain/Aggregates/TrackTemplateAggregate/TrackTemplateContentEntity.cs
@@ -12,18 +12,6 @@ public class TrackTemplateContentEntity : IFullAuditedBasicEntitys, IEntity
[SugarColumn(ColumnName = "Id", IsPrimaryKey = true, IsIdentity = true)]
public int Id { get; set; }
- ///
- /// 是否可删
- ///
- [SugarColumn(ColumnName = "IsCanDelete")]
- public bool IsCanDelete { get; set; }
-
- ///
- /// 是否对外
- ///
- [SugarColumn(ColumnName = "IsExternal")]
- public bool IsExternal { get; set; }
-
///
/// 排序
///
diff --git a/src/SJZY.Track.Domain/Aggregates/TrackTemplateAggregate/TrackTemplateEntity.cs b/src/SJZY.Track.Domain/Aggregates/TrackTemplateAggregate/TrackTemplateEntity.cs
index 93b68c16..e1236990 100644
--- a/src/SJZY.Track.Domain/Aggregates/TrackTemplateAggregate/TrackTemplateEntity.cs
+++ b/src/SJZY.Track.Domain/Aggregates/TrackTemplateAggregate/TrackTemplateEntity.cs
@@ -29,10 +29,4 @@ public class TrackTemplateEntity : IFullAuditedBasicEntitys, IAggregateRoot
///
[SugarColumn(ColumnName = "SubSystemId")]
public int SubSystemId { get; set; }
-
- ///
- /// 显示原轨迹
- ///
- [SugarColumn(ColumnName = "ShowOrigin")]
- public bool ShowOrigin { get; set; }
}
diff --git a/src/SJZY.Track.Domain/Dtos/TrackTemplate/GetTemplateContentAttributeValueInputVO.cs b/src/SJZY.Track.Domain/Dtos/TrackTemplate/GetTemplateContentAttributeValueInputVO.cs
deleted file mode 100644
index b9d80fcb..00000000
--- a/src/SJZY.Track.Domain/Dtos/TrackTemplate/GetTemplateContentAttributeValueInputVO.cs
+++ /dev/null
@@ -1,57 +0,0 @@
-namespace SJZY.Track.Domain.Dtos.TrackTemplate;
-
-public class GetTemplateContentAttributeValueInputVO
-{
- ///
- /// 子系统id
- ///
- public int SubSystemId { get; set; }
-
- ///
- /// 轨迹代码
- ///
- public List? TrackCodes { get; set; }
-
- ///
- /// 轨迹模板Id
- ///
- public List? TrackTemplateIds { get; set; }
-
- /////
- ///// 订单id
- /////
- //public int OrderId { get; set; }
-}
-
-public class GetTemplateContentAttributeValueVO
-{
- ///
- /// 轨迹内容id
- ///
- public int TrackContenId { get; set; }
-
- ///
- /// 模版id
- ///
- public int TrackTemplateId { get; set; }
-
- ///
- /// 轨迹内容代码
- ///
- public string TrackCode { get; set; }
-
- ///
- /// 子系统id
- ///
- public int SubSystemId { get; set; }
-
- ///
- /// 是否可删
- ///
- public bool IsCanDelete { get; set; }
-
- ///
- /// 是否对外
- ///
- public bool IsExternal { get; set; }
-}
diff --git a/src/SJZY.Track.Domain/Queries/IProvideQueries.cs b/src/SJZY.Track.Domain/Queries/IProvideQueries.cs
index 14c5b80c..92d5f54b 100644
--- a/src/SJZY.Track.Domain/Queries/IProvideQueries.cs
+++ b/src/SJZY.Track.Domain/Queries/IProvideQueries.cs
@@ -1,7 +1,6 @@
using SJZY.Track.Domain.Dtos.Order;
using SJZY.Track.Domain.Dtos.TrackContents;
using SJZY.Track.Domain.Dtos.TrackDetails;
-using SJZY.Track.Domain.Dtos.TrackTemplate;
namespace SJZY.Track.Domain.Queries;
@@ -10,21 +9,6 @@ namespace SJZY.Track.Domain.Queries;
///
public interface IProvideQueries
{
- ///
- /// 根据订单号,获取订单模板
- ///
- /// 订单类型
- /// 订单号
- ///
- Task> GetOrderTemplateLinksAsync(int orderType, List orderNumbers);
-
- ///
- /// 根据订单模板,获取有序的轨迹code
- ///
- /// 模板id
- ///
- Task> GetOrderedTrackCodesAsync(List templateIds);
-
///
/// 根据订单id找到订单模板,匹配模板命中的轨迹内容
///
@@ -33,14 +17,6 @@ public interface IProvideQueries
///
Task> MatchTrackContentAsync(int[] orderIds, string code);
- ///
- /// 获取可删除的订单轨迹代码
- ///
- ///
- ///
- ///
- Task> GetCanDeleteTrackCodesAsync(List orderIds, List trackCodes);
-
///
/// 根据子系统内容映射,得到映射后的轨迹code
///
diff --git a/src/SJZY.Track.Repository/Queries/ProvideQueries.cs b/src/SJZY.Track.Repository/Queries/ProvideQueries.cs
index dad52683..76d227b7 100644
--- a/src/SJZY.Track.Repository/Queries/ProvideQueries.cs
+++ b/src/SJZY.Track.Repository/Queries/ProvideQueries.cs
@@ -5,7 +5,6 @@ using SJZY.Track.Domain.Aggregates.TrackTemplateAggregate;
using SJZY.Track.Domain.Dtos.Order;
using SJZY.Track.Domain.Dtos.TrackContents;
using SJZY.Track.Domain.Dtos.TrackDetails;
-using SJZY.Track.Domain.Dtos.TrackTemplate;
using SJZY.Track.Domain.Queries;
using SJZY.Track.Domain.VEntities;
@@ -25,38 +24,6 @@ public class ProvideQueries : ISugarRepository, IProvideQueries,
Context = SqlsugarScopeBasic.GetContextSafely("default");
}
- ///
- public async Task> GetOrderTemplateLinksAsync(int orderType, List orderNumbers)
- {
- return await Context.Queryable()
- .LeftJoin((a, b) => a.Id == b.OrderId)
- .Where(a => a.OrderType == orderType && orderNumbers.Contains(a.OrderNo))
- .Select((a, b) => new OrderTemplateLinkDto
- {
- OrderNo = a.OrderNo,
- TemplateId = b.TrackTemplateId
- })
- .ToListAsync();
- }
-
- ///
- public async Task> GetOrderedTrackCodesAsync(List templateIds)
- {
- return await Context.Queryable()
- .LeftJoin((a, b) => a.Id == b.TrackTemplateId)
- .LeftJoin((a, b, c) => b.TrackContentId == c.Id)
- .Where(a => templateIds.Contains(a.Id))
- .OrderBy((a, b) => b.Sort)
- .Select((a, b, c) => new OrderedTrackCodeDto
- {
- TemplateId = a.Id,
- ShowOrigin = a.ShowOrigin,
- Code = c.Code,
- IsExternal = b.IsExternal
- })
- .ToListAsync();
- }
-
///
public async Task> MatchTrackContentAsync(int[] orderIds, string code)
{
@@ -72,25 +39,7 @@ public class ProvideQueries : ISugarRepository, IProvideQueries,
TrackCode = b.Code,
Content = b.Content,
EnContent = b.EnContent,
- Status = c.Status,
- IsCanDelete = a.IsCanDelete
- })
- .ToListAsync();
- }
-
- ///
- public async Task> GetCanDeleteTrackCodesAsync(List orderIds,
- List trackCodes)
- {
- return await Context.Queryable()
- .LeftJoin((x, a) => x.TrackTemplateId == a.TrackTemplateId && a.IsCanDelete)
- .LeftJoin((x, a, b) => a.TrackContentId == b.Id)
- .Where((x, a, b) => orderIds.Contains(x.OrderId)
- && trackCodes.Contains(b.Code) && a.IsCanDelete)
- .Select((x, a, b) => new CanDeleteTrackCodeVO
- {
- OrderId = x.OrderId,
- TrackCode = b.Code
+ Status = c.Status
})
.ToListAsync();
}
diff --git a/src/SJZY.Track.Repository/Repositories/TrackContentRepository.cs b/src/SJZY.Track.Repository/Repositories/TrackContentRepository.cs
index a0d8ca0d..3e885233 100644
--- a/src/SJZY.Track.Repository/Repositories/TrackContentRepository.cs
+++ b/src/SJZY.Track.Repository/Repositories/TrackContentRepository.cs
@@ -4,7 +4,6 @@ using SJZY.Track.Domain.Aggregates.TrackFlagAggregate;
using SJZY.Track.Domain.Aggregates.TrackStatusAggregate;
using SJZY.Track.Domain.Aggregates.TrackTemplateAggregate;
using SJZY.Track.Domain.Dtos.TrackContents;
-using SJZY.Track.Domain.Dtos.TrackTemplate;
using SJZY.Track.Domain.VEntities;
namespace SJZY.Track.Repository.Repositories;
@@ -90,35 +89,6 @@ public class TrackContentRepository : BasicRepository, ITrac
return pagedList;
}
- ///
- /// 获取轨迹内容属性值
- ///
- ///
- public async Task> GetTrackContentAttributeValue(
- GetTemplateContentAttributeValueInputVO input)
- {
- var list = await Context.Queryable()
- .LeftJoin((a, b) =>
- a.Id == b.TrackContentId && b.TrackTemplateId > 0 && b.IsDeleted == false)
- .LeftJoin((a, b, c) => b.TrackTemplateId == c.Id && c.IsDeleted == false)
- .WhereIF(!input.TrackCodes.IsNullOrEmpty(), (a, b, c) => input.TrackCodes!.Contains(a.Code))
- .WhereIF(input.SubSystemId > 0, (a, b, c) => a.SubSystemId == input.SubSystemId)
- .WhereIF(!input.TrackTemplateIds.IsNullOrEmpty(), (a, b, c) => input.TrackTemplateIds!.Contains(c.Id))
- .Where((a, b, c) => c.Id > 0)
- //.OrderByIF(!input.TrackTemplateIds.IsNullOrEmpty(), (a, b, c) => SqlFunc.IIF(input.TrackTemplateIds.Contains(a.Id), SqlFunc.DateAdd(SqlFunc.GetDate(), 1), c.CreateTime), OrderByType.Desc)
- .Select((a, b, c) => new GetTemplateContentAttributeValueVO
- {
- IsCanDelete = b.IsCanDelete,
- IsExternal = b.IsExternal,
- SubSystemId = a.SubSystemId,
- TrackCode = a.Code,
- TrackContenId = a.Id,
- TrackTemplateId = c.Id
- }).ToListAsync();
-
- return list;
- }
-
///
/// 获取轨迹模版是否存在
///
diff --git a/src/SJZY.Track.Repository/Repositories/TrackTemplateRepository.cs b/src/SJZY.Track.Repository/Repositories/TrackTemplateRepository.cs
index 7250b1e2..60302e81 100644
--- a/src/SJZY.Track.Repository/Repositories/TrackTemplateRepository.cs
+++ b/src/SJZY.Track.Repository/Repositories/TrackTemplateRepository.cs
@@ -28,8 +28,7 @@ public class TrackTemplateRepository : BasicRepository, ITr
Code = a.Code,
Name = a.Name,
SubSystemId = a.SubSystemId,
- SubSystem = b.CnName,
- ShowOrigin = a.ShowOrigin
+ SubSystem = b.CnName
}).FirstAsync();
return detail;
@@ -181,14 +180,4 @@ public class TrackTemplateRepository : BasicRepository, ITr
return await Context.Updateable().SetColumns(columns).Where(whereExpression)
.ExecuteCommandHasChangeAsync();
}
-
- ///
- /// 获取轨迹内容属性值
- ///
- ///
- public async Task GetTrackContentAttributeValue(
- GetTemplateContentAttributeValueInputVO input)
- {
- return null;
- }
}