sync-namespace:同步命名空间

This commit is contained in:
hardstylewyl 2025-03-04 14:19:34 +08:00
parent 3382bcff76
commit 25298dc494
33 changed files with 498 additions and 514 deletions

View File

@ -1,106 +1,106 @@
namespace Track.Warning.VNext.Application.Contract.Dtos.Warning.Complete; namespace SJZY.Track.Application.Contract.Dtos.Warning.Complete;
/// <summary> /// <summary>
/// 完整预警 /// 完整预警
/// </summary> /// </summary>
public class CompleteWarningDetailsDto // todo:需要根据状态排序 public class CompleteWarningDetailsDto // todo:需要根据状态排序
{ {
/// <summary> /// <summary>
/// 预警明细唯一id /// 预警明细唯一id
/// </summary> /// </summary>
public string EsId { get; set; } public string EsId { get; set; }
/// <summary> /// <summary>
/// 子系统id /// 子系统id
/// </summary> /// </summary>
public int SubSystemId { get; set; } public int SubSystemId { get; set; }
/// <summary> /// <summary>
/// 子系统名称 /// 子系统名称
/// </summary> /// </summary>
public string SubSystemName { get; set; } // todo:id换名称 public string SubSystemName { get; set; } // todo:id换名称
/// <summary> /// <summary>
/// 订单类型 /// 订单类型
/// </summary> /// </summary>
public int OrderType { get; set; } public int OrderType { get; set; }
/// <summary> /// <summary>
/// 订单类型名称 /// 订单类型名称
/// </summary> /// </summary>
public string OrderTypeName { get; set; } // todo:type换名称 public string OrderTypeName { get; set; } // todo:type换名称
/// <summary> /// <summary>
/// 订单id /// 订单id
/// </summary> /// </summary>
public int OrderId { get; set; } public int OrderId { get; set; }
/// <summary> /// <summary>
/// 订单号 /// 订单号
/// </summary> /// </summary>
public string OrderNo { get; set; } public string OrderNo { get; set; }
/// <summary> /// <summary>
/// 状态 (待处理样式标红) /// 状态 (待处理样式标红)
/// 1:待处理,2:已处理,3:已关闭 /// 1:待处理,2:已处理,3:已关闭
/// </summary> /// </summary>
public int Status { get; set; } public int Status { get; set; }
/// <summary> /// <summary>
/// 客户id /// 客户id
/// </summary> /// </summary>
public int CustomId { get; set; } public int CustomId { get; set; }
/// <summary> /// <summary>
/// 客户简称 /// 客户简称
/// </summary> /// </summary>
public int CustomName { get; set; } // todo:id换名称 public int CustomName { get; set; } // todo:id换名称
/// <summary> /// <summary>
/// 缺失轨迹状态 /// 缺失轨迹状态
/// </summary> /// </summary>
public string MissingTrackStatus { get; set; } // todo:id换名称 public string MissingTrackStatus { get; set; } // todo:id换名称
//视图属性 todo:可以从订单主表拿到 //视图属性 todo:可以从订单主表拿到
/// <summary> /// <summary>
/// 最新轨迹状态 /// 最新轨迹状态
/// </summary> /// </summary>
public string LatestTrackStatus { get; set; } public string LatestTrackStatus { get; set; }
/// <summary> /// <summary>
/// 最新轨迹内容 /// 最新轨迹内容
/// </summary> /// </summary>
public string LatestTrackContent { get; set; } public string LatestTrackContent { get; set; }
/// <summary> /// <summary>
/// 最新轨迹发生地 /// 最新轨迹发生地
/// </summary> /// </summary>
public string LatestTrackPlace { get; set; } public string LatestTrackPlace { get; set; }
/// <summary> /// <summary>
/// 最新轨迹发生时间 /// 最新轨迹发生时间
/// </summary> /// </summary>
public DateTime LatestTrackTime { get; set; } public DateTime LatestTrackTime { get; set; }
/// <summary> /// <summary>
/// 最新轨迹发生时区 /// 最新轨迹发生时区
/// </summary> /// </summary>
public float LatestTrackTimeZone { get; set; } public float LatestTrackTimeZone { get; set; }
/// <summary> /// <summary>
/// 通知对象 /// 通知对象
/// </summary> /// </summary>
public string NotifyUserNames { get; set; } public string NotifyUserNames { get; set; }
/// <summary> /// <summary>
/// 预警创建时间 /// 预警创建时间
/// </summary> /// </summary>
public DateTime CreateTime { get; set; } public DateTime CreateTime { get; set; }
/// <summary> /// <summary>
/// 预警处理时间 /// 预警处理时间
/// </summary> /// </summary>
public DateTime? ProcessedTime { get; set; } public DateTime? ProcessedTime { get; set; }
} }

View File

@ -1,7 +1,7 @@
using Track.Warning.VNext.Application.Contract.Dtos.Common; using SJZY.Track.Application.Contract.Dtos.Warning;
using Track.Warning.VNext.Application.Contract.Dtos.Warning.Return; using SJZY.Track.Application.Contract.Dtos.Warning.Return;
namespace Track.Warning.VNext.Application.Contract.Dtos.Warning.Complete; namespace SJZY.Track.Application.Contract.Dtos.Warning.Complete;
/// <summary> /// <summary>
/// 完整预警规则配置条目 /// 完整预警规则配置条目

View File

@ -1,24 +1,23 @@
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using Track.Warning.VNext.Application.Contract.DataAnnotations; using SJZY.Track.Application.Contract.Dtos.Warning.DataAnnotations;
using Track.Warning.VNext.Application.Contract.Dtos.Common;
namespace Track.Warning.VNext.Application.Contract.Dtos.Warning.Complete; namespace SJZY.Track.Application.Contract.Dtos.Warning.Complete;
/// <summary> /// <summary>
/// 编辑完整预警配置 /// 编辑完整预警配置
/// </summary> /// </summary>
public class EditCompleteWarningRuleItemInput public class EditCompleteWarningRuleItemInput
{ {
/// <summary> /// <summary>
/// 预警规主体id /// 预警规主体id
/// </summary> /// </summary>
[IdRequired] [IdRequired]
public int WarningId { get; set; } public int WarningId { get; set; }
/// <summary> /// <summary>
/// 预警规则配置项目(列表内容传递) /// 预警规则配置项目(列表内容传递)
/// </summary> /// </summary>
public List<EditCompleteWarningRuleItemDto> Items { get; set; } = new(); public List<EditCompleteWarningRuleItemDto> Items { get; set; } = new();
} }
/// <summary> /// <summary>
@ -26,35 +25,35 @@ public class EditCompleteWarningRuleItemInput
/// </summary> /// </summary>
public class EditCompleteWarningRuleItemDto public class EditCompleteWarningRuleItemDto
{ {
/// <summary> /// <summary>
/// 规则项目唯一id(传0视为新增) /// 规则项目唯一id(传0视为新增)
/// </summary> /// </summary>
public int Id { get; set; } public int Id { get; set; }
/// <summary> /// <summary>
/// 订单类型集合(,分割) e.g. 1,2,3 /// 订单类型集合(,分割) e.g. 1,2,3
/// </summary> /// </summary>
[Required] [Required]
public string OrderTypes { get; set; } public string OrderTypes { get; set; }
/// <summary> /// <summary>
/// 检查点轨迹状态id /// 检查点轨迹状态id
/// </summary> /// </summary>
[IdRequired] [IdRequired]
public int CheckPointTrackStatusId { get; set; } public int CheckPointTrackStatusId { get; set; }
/// <summary> /// <summary>
/// 要求的轨迹状态id集合 e.g. [[1,3],[5,7]] /// 要求的轨迹状态id集合 e.g. [[1,3],[5,7]]
/// required: 集合元素(子集合)不要有交集! /// required: 集合元素(子集合)不要有交集!
/// </summary> /// </summary>
[Required] [Required]
[MinLength(1, ErrorMessage = "要求的轨迹状态id集合不能为空")] [MinLength(1, ErrorMessage = "要求的轨迹状态id集合不能为空")]
public List<List<int>> RequireTrackStatus { get; set; } public List<List<int>> RequireTrackStatus { get; set; }
/// <summary> /// <summary>
/// 通知对象用户集合 /// 通知对象用户集合
/// </summary> /// </summary>
[Required] [Required]
[MinLength(1, ErrorMessage = "通知对象用户集合不能为空")] [MinLength(1, ErrorMessage = "通知对象用户集合不能为空")]
public List<NotifyUserDto> NotifyUsers { get; set; } = new(); public List<NotifyUserDto> NotifyUsers { get; set; } = new();
} }

View File

@ -1,6 +1,6 @@
using Track.Warning.VNext.Application.Contract.DataAnnotations; using SJZY.Track.Application.Contract.Dtos.Warning.DataAnnotations;
namespace Track.Warning.VNext.Application.Contract.Dtos.Warning.Complete; namespace SJZY.Track.Application.Contract.Dtos.Warning.Complete;
/// <summary> /// <summary>
/// 获取完整预警规则条目列表 /// 获取完整预警规则条目列表

View File

@ -1,6 +1,4 @@
using Track.Warning.VNext.Application.Contract.Dtos.Common; namespace SJZY.Track.Application.Contract.Dtos.Warning.Complete;
namespace Track.Warning.VNext.Application.Contract.Dtos.Warning.Complete;
/// <summary> /// <summary>
/// 分页获取完成预警详情 /// 分页获取完成预警详情

View File

@ -1,6 +1,6 @@
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
namespace Track.Warning.VNext.Application.Contract.DataAnnotations; namespace SJZY.Track.Application.Contract.Dtos.Warning.DataAnnotations;
/// <summary> /// <summary>
/// 要求id存在并且大于0 /// 要求id存在并且大于0
@ -8,9 +8,9 @@ namespace Track.Warning.VNext.Application.Contract.DataAnnotations;
[AttributeUsage(AttributeTargets.Property | AttributeTargets.Field | AttributeTargets.Parameter, AllowMultiple = false)] [AttributeUsage(AttributeTargets.Property | AttributeTargets.Field | AttributeTargets.Parameter, AllowMultiple = false)]
public sealed class IdRequiredAttribute : RangeAttribute public sealed class IdRequiredAttribute : RangeAttribute
{ {
public IdRequiredAttribute() public IdRequiredAttribute()
: base(1, int.MaxValue) : base(1, int.MaxValue)
{ {
ErrorMessage = "{0} is required and must be greater than 0"; ErrorMessage = "{0} is required and must be greater than 0";
} }
} }

View File

@ -1,4 +1,4 @@
namespace Track.Warning.VNext.Application.Contract.Dtos.Warning; namespace SJZY.Track.Application.Contract.Dtos.Warning;
/// <summary> /// <summary>
/// 获取预警规则主体 /// 获取预警规则主体

View File

@ -1,19 +1,19 @@
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using Track.Warning.VNext.Application.Contract.DataAnnotations; using SJZY.Track.Application.Contract.Dtos.Warning.DataAnnotations;
namespace Track.Warning.VNext.Application.Contract.Dtos.Common; namespace SJZY.Track.Application.Contract.Dtos.Warning;
public sealed class NotifyUserDto public sealed class NotifyUserDto
{ {
/// <summary> /// <summary>
/// 用户id /// 用户id
/// </summary> /// </summary>
[IdRequired] [IdRequired]
public int UserId { get; set; } public int UserId { get; set; }
/// <summary> /// <summary>
/// 用户名 /// 用户名
/// </summary> /// </summary>
[Required] [Required]
public string UserName { get; set; } public string UserName { get; set; }
} }

View File

@ -1,24 +1,23 @@
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using Track.Warning.VNext.Application.Contract.DataAnnotations; using SJZY.Track.Application.Contract.Dtos.Warning.DataAnnotations;
using Track.Warning.VNext.Application.Contract.Dtos.Common;
namespace Track.Warning.VNext.Application.Contract.Dtos.Warning.Return; namespace SJZY.Track.Application.Contract.Dtos.Warning.Return;
/// <summary> /// <summary>
/// 编辑回传时效配置 /// 编辑回传时效配置
/// </summary> /// </summary>
public class EditReturnWarningRuleItemInput public class EditReturnWarningRuleItemInput
{ {
/// <summary> /// <summary>
/// 预警规主体id /// 预警规主体id
/// </summary> /// </summary>
[IdRequired] [IdRequired]
public int WarningId { get; set; } public int WarningId { get; set; }
/// <summary> /// <summary>
/// 预警规则配置项目(列表内容传递) /// 预警规则配置项目(列表内容传递)
/// </summary> /// </summary>
public List<EditReturnWarningRuleItemDto> Items { get; set; } = new(); public List<EditReturnWarningRuleItemDto> Items { get; set; } = new();
} }
/// <summary> /// <summary>
@ -26,26 +25,26 @@ public class EditReturnWarningRuleItemInput
/// </summary> /// </summary>
public class EditReturnWarningRuleItemDto public class EditReturnWarningRuleItemDto
{ {
/// <summary> /// <summary>
/// 唯一id(传0视为新增) /// 唯一id(传0视为新增)
/// </summary> /// </summary>
public int Id { get; set; } public int Id { get; set; }
/// <summary> /// <summary>
/// 轨迹状态Id集合(,分割) /// 轨迹状态Id集合(,分割)
/// </summary> /// </summary>
[Required] [Required]
public string TrackStatusIds { get; set; } public string TrackStatusIds { get; set; }
/// <summary> /// <summary>
/// 时效(单位h) /// 时效(单位h)
/// </summary> /// </summary>
[Range(0.1, float.MaxValue, ErrorMessage = "时效必须大于0.1")] [Range(0.1, float.MaxValue, ErrorMessage = "时效必须大于0.1")]
public float ReturnTimeSpan { get; set; } public float ReturnTimeSpan { get; set; }
/// <summary> /// <summary>
/// 通知对象用户集合 /// 通知对象用户集合
/// </summary> /// </summary>
[MinLength(1, ErrorMessage = "通知对象用户集合不能为空")] [MinLength(1, ErrorMessage = "通知对象用户集合不能为空")]
public List<NotifyUserDto> NotifyUsers { get; set; } = new(); public List<NotifyUserDto> NotifyUsers { get; set; } = new();
} }

View File

@ -1,6 +1,4 @@
using Track.Warning.VNext.Application.Contract.Dtos.Common; namespace SJZY.Track.Application.Contract.Dtos.Warning.Return;
namespace Track.Warning.VNext.Application.Contract.Dtos.Warning.Return;
/// <summary> /// <summary>
/// 分页获取回传预警明细输入 /// 分页获取回传预警明细输入

View File

@ -1,6 +1,6 @@
using Track.Warning.VNext.Application.Contract.DataAnnotations; using System.ComponentModel.DataAnnotations;
namespace Track.Warning.VNext.Application.Contract.Dtos.Warning.Return; namespace SJZY.Track.Application.Contract.Dtos.Warning.Return;
/// <summary> /// <summary>
/// 获取回传报文日志 /// 获取回传报文日志
@ -10,6 +10,6 @@ public class GetReturnMessageRecordInput
/// <summary> /// <summary>
/// 回传预警明细id /// 回传预警明细id
/// </summary> /// </summary>
[IdRequired] [Required]
public string WarningDetailsId { get; set; } public string WarningDetailsId { get; set; }
} }

View File

@ -1,6 +1,6 @@
using Track.Warning.VNext.Application.Contract.DataAnnotations; using SJZY.Track.Application.Contract.Dtos.Warning.DataAnnotations;
namespace Track.Warning.VNext.Application.Contract.Dtos.Warning.Return; namespace SJZY.Track.Application.Contract.Dtos.Warning.Return;
/// <summary> /// <summary>
/// 获取回传预警规则项目列表 /// 获取回传预警规则项目列表

View File

@ -1,4 +1,4 @@
namespace Track.Warning.VNext.Application.Contract.Dtos.Warning.Return; namespace SJZY.Track.Application.Contract.Dtos.Warning.Return;
/// <summary> /// <summary>
/// 回传报文日志 /// 回传报文日志
@ -23,7 +23,7 @@ public sealed class ReturnMessageRecordDto
/// <summary> /// <summary>
/// 报文内容 Json字符串 /// 报文内容 Json字符串
/// </summary> /// </summary>
public string Message { get; set; } public string Message { get; set; }
/// <summary> /// <summary>
/// 报文创建时间 /// 报文创建时间

View File

@ -1,4 +1,4 @@
namespace Track.Warning.VNext.Application.Contract.Dtos.Warning.Return; namespace SJZY.Track.Application.Contract.Dtos.Warning.Return;
/// <summary> /// <summary>
/// 回传预警明细 /// 回传预警明细
@ -45,7 +45,7 @@ public sealed class ReturnWarningDetailsDto
/// 状态 1:人工介入 2:重试中 3:推送完成 4:已关闭 /// 状态 1:人工介入 2:重试中 3:推送完成 4:已关闭
/// </summary> /// </summary>
public int Status { get; set; } public int Status { get; set; }
/// <summary> /// <summary>
/// 客户id /// 客户id
/// </summary> /// </summary>
@ -59,7 +59,7 @@ public sealed class ReturnWarningDetailsDto
/// <summary> /// <summary>
/// 轨迹状态 /// 轨迹状态
/// </summary> /// </summary>
public string TrackStatus { get; set; } public string TrackStatus { get; set; }
/// <summary> /// <summary>
/// 轨迹代码 /// 轨迹代码

View File

@ -1,6 +1,4 @@
using Track.Warning.VNext.Application.Contract.Dtos.Common; namespace SJZY.Track.Application.Contract.Dtos.Warning.Return;
namespace Track.Warning.VNext.Application.Contract.Dtos.Warning.Return;
public class ReturnWarningRuleItemDto public class ReturnWarningRuleItemDto
{ {

View File

@ -1,27 +1,26 @@
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using Track.Warning.VNext.Application.Contract.DataAnnotations; using SJZY.Track.Application.Contract.Dtos.Warning.DataAnnotations;
using Track.Warning.VNext.Application.Contract.Dtos.Common;
namespace Track.Warning.VNext.Application.Contract.Dtos.Warning.Transport; namespace SJZY.Track.Application.Contract.Dtos.Warning.Transport;
public class EditTransportWarningSceneRuleItemInput public class EditTransportWarningSceneRuleItemInput
{ {
/// <summary> /// <summary>
/// 预警规主体id /// 预警规主体id
/// </summary> /// </summary>
[IdRequired] [IdRequired]
public int WarningId { get; set; } public int WarningId { get; set; }
/// <summary> /// <summary>
/// 运输预警场景id /// 运输预警场景id
/// </summary> /// </summary>
[IdRequired] [IdRequired]
public int SceneId { get; set; } public int SceneId { get; set; }
/// <summary> /// <summary>
/// 预警规则配置项目(列表内容传递) /// 预警规则配置项目(列表内容传递)
/// </summary> /// </summary>
public List<EditTransportWarningSceneRuleItemDto> Items { get; set; } = new(); public List<EditTransportWarningSceneRuleItemDto> Items { get; set; } = new();
} }
/// <summary> /// <summary>
@ -29,38 +28,38 @@ public class EditTransportWarningSceneRuleItemInput
/// </summary> /// </summary>
public class EditTransportWarningSceneRuleItemDto public class EditTransportWarningSceneRuleItemDto
{ {
/// <summary> /// <summary>
/// 规则项目id(传0视为新增) /// 规则项目id(传0视为新增)
/// </summary> /// </summary>
public int Id { get; set; } public int Id { get; set; }
/// <summary> /// <summary>
/// 起始轨迹状态Id /// 起始轨迹状态Id
/// </summary> /// </summary>
[IdRequired] [IdRequired]
public int StartTrackStatusId { get; set; } public int StartTrackStatusId { get; set; }
/// <summary> /// <summary>
/// 截止轨迹状态Id /// 截止轨迹状态Id
/// </summary> /// </summary>
[IdRequired] [IdRequired]
public int EndTrackStatusId { get; set; } public int EndTrackStatusId { get; set; }
/// <summary> /// <summary>
/// 时效 (单位h) /// 时效 (单位h)
/// </summary> /// </summary>
[Range(0.1, float.MaxValue, ErrorMessage = "时效必须大于0.1")] [Range(0.1, float.MaxValue, ErrorMessage = "时效必须大于0.1")]
public float TransportTimeSpan { get; set; } public float TransportTimeSpan { get; set; }
/// <summary> /// <summary>
/// 起始轨迹生成预警时间 (单位h) /// 起始轨迹生成预警时间 (单位h)
/// </summary> /// </summary>
[Range(0.1, float.MaxValue, ErrorMessage = "起始轨迹生成预警时间必须大于0.1")] [Range(0.1, float.MaxValue, ErrorMessage = "起始轨迹生成预警时间必须大于0.1")]
public float StartTrackWarningTimeSpan { get; set; } public float StartTrackWarningTimeSpan { get; set; }
/// <summary> /// <summary>
/// 通知对象用户集合 /// 通知对象用户集合
/// </summary> /// </summary>
[MinLength(1, ErrorMessage = "通知对象用户集合不能为空")] [MinLength(1, ErrorMessage = "通知对象用户集合不能为空")]
public List<NotifyUserDto> NotifyUsers { get; set; } = new(); public List<NotifyUserDto> NotifyUsers { get; set; } = new();
} }

View File

@ -1,6 +1,4 @@
using Track.Warning.VNext.Application.Contract.Dtos.Common; namespace SJZY.Track.Application.Contract.Dtos.Warning.Transport;
namespace Track.Warning.VNext.Application.Contract.Dtos.Warning.Transport;
/// <summary> /// <summary>
/// 分页获取运输预警明细 /// 分页获取运输预警明细
@ -33,7 +31,7 @@ public class GetPageTransportWarningDetailsInput : PageInfoInput
public int? CustomId { get; set; } public int? CustomId { get; set; }
/// <summary> /// <summary>
/// 预警名称 /// 预警名称
/// </summary> /// </summary>
public string? WarningName { get; set; } public string? WarningName { get; set; }
@ -51,4 +49,4 @@ public class GetPageTransportWarningDetailsInput : PageInfoInput
/// 创建时间截止 /// 创建时间截止
/// </summary> /// </summary>
public DateTime? CreateTimeEnd { get; set; } public DateTime? CreateTimeEnd { get; set; }
} }

View File

@ -1,15 +1,15 @@
using Track.Warning.VNext.Application.Contract.DataAnnotations; using SJZY.Track.Application.Contract.Dtos.Warning.DataAnnotations;
namespace Track.Warning.VNext.Application.Contract.Dtos.Warning.Transport; namespace SJZY.Track.Application.Contract.Dtos.Warning.Transport;
/// <summary> /// <summary>
/// 获取运输时效预警规则场景 /// 获取运输时效预警规则场景
/// </summary> /// </summary>
public class GetTransportWarningSceneInput public class GetTransportWarningSceneInput
{ {
/// <summary> /// <summary>
/// 预警主体id /// 预警主体id
/// </summary> /// </summary>
[IdRequired] [IdRequired]
public int WarningId { get; set; } public int WarningId { get; set; }
} }

View File

@ -1,21 +1,21 @@
using Track.Warning.VNext.Application.Contract.DataAnnotations; using SJZY.Track.Application.Contract.Dtos.Warning.DataAnnotations;
namespace Track.Warning.VNext.Application.Contract.Dtos.Warning.Transport; namespace SJZY.Track.Application.Contract.Dtos.Warning.Transport;
/// <summary> /// <summary>
/// 获取运输时效预警场景规则条目列表 /// 获取运输时效预警场景规则条目列表
/// </summary> /// </summary>
public class GetTransportWarningSceneRuleItemInput public class GetTransportWarningSceneRuleItemInput
{ {
/// <summary> /// <summary>
/// 预警主体id /// 预警主体id
/// </summary> /// </summary>
[IdRequired] [IdRequired]
public int WarningId { get; set; } public int WarningId { get; set; }
/// <summary> /// <summary>
/// 运输预警场景id /// 运输预警场景id
/// </summary> /// </summary>
[IdRequired] [IdRequired]
public int SceneId { get; set; } public int SceneId { get; set; }
} }

View File

@ -1,149 +1,149 @@
namespace Track.Warning.VNext.Application.Contract.Dtos.Warning.Transport; namespace SJZY.Track.Application.Contract.Dtos.Warning.Transport;
/// <summary> /// <summary>
/// 运输时效预警明细 /// 运输时效预警明细
/// </summary> /// </summary>
public sealed class TransportWarningDetailsDto // todo:需要根据状态排序 public sealed class TransportWarningDetailsDto // todo:需要根据状态排序
{ {
/// <summary> /// <summary>
/// 预警明细唯一id /// 预警明细唯一id
/// </summary> /// </summary>
public string EsId { get; set; } public string EsId { get; set; }
/// <summary> /// <summary>
/// 子系统id /// 子系统id
/// </summary> /// </summary>
public int SubSystemId { get; set; } public int SubSystemId { get; set; }
/// <summary> /// <summary>
/// 子系统名称 /// 子系统名称
/// </summary> /// </summary>
public string SubSystemName { get; set; } // todo:id换名称 public string SubSystemName { get; set; } // todo:id换名称
/// <summary> /// <summary>
/// 客户id /// 客户id
/// </summary> /// </summary>
public int CustomId { get; set; } public int CustomId { get; set; }
/// <summary> /// <summary>
/// 客户简称 /// 客户简称
/// </summary> /// </summary>
public string CustomName { get; set; } // todo:id换名称 public string CustomName { get; set; } // todo:id换名称
/// <summary> /// <summary>
/// 订单id /// 订单id
/// </summary> /// </summary>
public int OrderId { get; set; } public int OrderId { get; set; }
/// <summary> /// <summary>
/// 订单号 /// 订单号
/// </summary> /// </summary>
public string OrderNo { get; set; } public string OrderNo { get; set; }
/// <summary> /// <summary>
/// 订单类型 /// 订单类型
/// </summary> /// </summary>
public int OrderType { get; set; } public int OrderType { get; set; }
/// <summary> /// <summary>
/// 订单类型名称 /// 订单类型名称
/// </summary> /// </summary>
public string OrderTypeName { get; set; } // todo:type换名称 public string OrderTypeName { get; set; } // todo:type换名称
// 实时属性 todo:从订单查询 // 实时属性 todo:从订单查询
/// <summary> /// <summary>
/// 最新轨迹内容 /// 最新轨迹内容
/// </summary> /// </summary>
public string LatestTrackContent { get; set; } public string LatestTrackContent { get; set; }
/// <summary> /// <summary>
/// 最新轨迹时间 /// 最新轨迹时间
/// </summary> /// </summary>
public DateTime LatestTrackTime { get; set; } public DateTime LatestTrackTime { get; set; }
/// <summary> /// <summary>
/// 最新轨迹发生时区 /// 最新轨迹发生时区
/// </summary> /// </summary>
public float LatestTrackTimeZone { get; set; } public float LatestTrackTimeZone { get; set; }
/// <summary> /// <summary>
/// 最新轨迹发生地 /// 最新轨迹发生地
/// </summary> /// </summary>
public string LatestTrackPlace { get; set; } public string LatestTrackPlace { get; set; }
/// <summary> /// <summary>
/// 通知对象 /// 通知对象
/// </summary> /// </summary>
public string NotifyUserNames { get; set; } public string NotifyUserNames { get; set; }
/// <summary> /// <summary>
/// 起始轨迹状态 /// 起始轨迹状态
/// </summary> /// </summary>
public string StartTrackStatus { get; set; } public string StartTrackStatus { get; set; }
/// <summary> /// <summary>
/// 起始轨迹内容 /// 起始轨迹内容
/// </summary> /// </summary>
public string StartTrackContent { get; set; } public string StartTrackContent { get; set; }
/// <summary> /// <summary>
/// 起始轨迹发生时间 /// 起始轨迹发生时间
/// </summary> /// </summary>
public DateTime StartTrackTime { get; set; } public DateTime StartTrackTime { get; set; }
/// <summary> /// <summary>
/// 起始轨迹时区 /// 起始轨迹时区
/// </summary> /// </summary>
public float StartTrackTimeZone { get; set; } public float StartTrackTimeZone { get; set; }
/// <summary> /// <summary>
/// 截止轨迹状态 /// 截止轨迹状态
/// </summary> /// </summary>
public string EndTrackStatus { get; set; } public string EndTrackStatus { get; set; }
/// <summary> /// <summary>
/// 截止轨迹内容 /// 截止轨迹内容
/// </summary> /// </summary>
public string? EndTrackContent { get; set; } public string? EndTrackContent { get; set; }
/// <summary> /// <summary>
/// 截止轨迹发生时间 /// 截止轨迹发生时间
/// </summary> /// </summary>
public DateTime? EndTrackTime { get; set; } public DateTime? EndTrackTime { get; set; }
/// <summary> /// <summary>
/// 截止轨迹时区 /// 截止轨迹时区
/// </summary> /// </summary>
public float? EndTrackTimeZone { get; set; } public float? EndTrackTimeZone { get; set; }
/// <summary> /// <summary>
/// 预警名称 (预警主体名称 如字节全程时效) /// 预警名称 (预警主体名称 如字节全程时效)
/// </summary> /// </summary>
public string WarningName { get; set; } public string WarningName { get; set; }
/// <summary> /// <summary>
/// 预警规则描述(用于tooltip展示) /// 预警规则描述(用于tooltip展示)
/// </summary> /// </summary>
public string WarningRuleDescription { get; set; } public string WarningRuleDescription { get; set; }
/// <summary> /// <summary>
/// 累计运输时间 /// 累计运输时间
/// </summary> /// </summary>
public string CumulativeTimeSpan { get; set; } // todo:需要转换为某个格式 public string CumulativeTimeSpan { get; set; } // todo:需要转换为某个格式
/// <summary> /// <summary>
/// 预警状态 (根据key展示对应名称,即将超时需要标红) /// 预警状态 (根据key展示对应名称,即将超时需要标红)
/// 1:即将超时 2:已超时 3:已完成 4:超时完成 5:已关闭,初始为【即将超时】 /// 1:即将超时 2:已超时 3:已完成 4:超时完成 5:已关闭,初始为【即将超时】
/// </summary> /// </summary>
public int Status { get; set; } public int Status { get; set; }
/// <summary> /// <summary>
/// 预警创建时间 /// 预警创建时间
/// </summary> /// </summary>
public DateTime CreateTime { get; set; } public DateTime CreateTime { get; set; }
} }

View File

@ -1,4 +1,4 @@
namespace Track.Warning.VNext.Application.Contract.Dtos.Warning.Transport; namespace SJZY.Track.Application.Contract.Dtos.Warning.Transport;
/// <summary> /// <summary>
/// 预警规则场景 /// 预警规则场景

View File

@ -1,6 +1,6 @@
using Track.Warning.VNext.Application.Contract.Dtos.Common; using SJZY.Track.Application.Contract.Dtos.Warning;
namespace Track.Warning.VNext.Application.Contract.Dtos.Warning.Transport; namespace SJZY.Track.Application.Contract.Dtos.Warning.Transport;
/// <summary> /// <summary>
/// 运输时效场景规则项目 /// 运输时效场景规则项目

View File

@ -1,6 +1,5 @@
using Track.Warning.VNext.Application.Contract.DataAnnotations; using SJZY.Track.Application.Contract.Dtos.Warning.DataAnnotations;
namespace SJZY.Track.Application.Contract.Dtos.Warning.Transport;
namespace Track.Warning.VNext.Application.Contract.Dtos.Warning.Transport;
public class UpsertTransportWarningSceneInput public class UpsertTransportWarningSceneInput
{ {

View File

@ -1,45 +1,45 @@
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using Track.Warning.VNext.Application.Contract.DataAnnotations; using SJZY.Track.Application.Contract.Dtos.Warning.DataAnnotations;
namespace Track.Warning.VNext.Application.Contract.Dtos.Warning; namespace SJZY.Track.Application.Contract.Dtos.Warning;
/// <summary> /// <summary>
/// 更新或者新增预警规则主体 /// 更新或者新增预警规则主体
/// </summary> /// </summary>
public class UpsertWarningRuleInput public class UpsertWarningRuleInput
{ {
/// <summary> /// <summary>
/// 唯一id(传0视为新增) /// 唯一id(传0视为新增)
/// </summary> /// </summary>
public int Id { get; set; } public int Id { get; set; }
/// <summary> /// <summary>
/// 子系统id /// 子系统id
/// </summary> /// </summary>
[IdRequired] [IdRequired]
public int SubSystemId { get; set; } //子系统id public int SubSystemId { get; set; } //子系统id
/// <summary> /// <summary>
/// 客户id /// 客户id
/// </summary> /// </summary>
[IdRequired] [IdRequired]
public int CustomId { get; set; } //客户id public int CustomId { get; set; } //客户id
/// <summary> /// <summary>
/// 预警规则名称 /// 预警规则名称
/// </summary> /// </summary>
[Required] [Required]
public string Name { get; set; } public string Name { get; set; }
/// <summary> /// <summary>
/// 是否启用 /// 是否启用
/// </summary> /// </summary>
[Required] [Required]
public bool IsEnabled { get; set; } public bool IsEnabled { get; set; }
/// <summary> /// <summary>
/// 预警类型,1:运输时效,2:回传时效,3:完整预警 /// 预警类型,1:运输时效,2:回传时效,3:完整预警
/// </summary> /// </summary>
[Range(1, 3, ErrorMessage = "预警类型只能选取以下值,1:运输时效,2:回传时效,3:完整预警")] [Range(1, 3, ErrorMessage = "预警类型只能选取以下值,1:运输时效,2:回传时效,3:完整预警")]
public int WarningType { get; set; } public int WarningType { get; set; }
} }

View File

@ -1,4 +1,4 @@
namespace Track.Warning.VNext.Application.Contract.Dtos.Warning; namespace SJZY.Track.Application.Contract.Dtos.Warning;
/// <summary> /// <summary>
/// 预警规则主体 /// 预警规则主体
@ -29,7 +29,7 @@ public sealed class WarningRuleDto
/// 客户简称 /// 客户简称
/// </summary> /// </summary>
public int CustomName { get; set; } // todo:id换name public int CustomName { get; set; } // todo:id换name
/// <summary> /// <summary>
/// 预警规则名称 /// 预警规则名称
/// </summary> /// </summary>

View File

@ -557,24 +557,24 @@ public partial class TrackService : ApplicationService, ITrackService
//查询并按比较字段过滤轨迹,当比较字段为空时则使用轨迹发生时间过滤 //查询并按比较字段过滤轨迹,当比较字段为空时则使用轨迹发生时间过滤
//tips:后续进行投影缩参优化 //tips:后续进行投影缩参优化
private async Task<List<TrackDetailsIndex>> QueryAndFilterAsync(int orderId1, string trackCode1, DateTime trackTime1, string? extra1, string? compareFields1) private async Task<List<TrackDetailsIndex>> QueryAndFilterAsync(int orderId, string trackCode, DateTime trackTime, string? extra, string? compareFields)
{ {
var tracks1 = await _trackDetailsEsRepository.GetListAsync(new[] { orderId1 }, trackCode1, true); var tracks = await _trackDetailsEsRepository.GetListAsync(new[] { orderId }, trackCode, true);
//无比较字段时使用轨迹时间参与过滤(兼容老版本) //无比较字段时使用轨迹时间参与过滤(兼容老版本)
if (string.IsNullOrWhiteSpace(compareFields1)) if (string.IsNullOrWhiteSpace(compareFields))
{ {
return tracks1.Where(x => x.TrackTime == trackTime1).ToList(); return tracks.Where(x => x.TrackTime == trackTime).ToList();
} }
return tracks1.Where(x => return tracks.Where(x =>
{ {
if (string.IsNullOrWhiteSpace(x.Extra)) if (string.IsNullOrWhiteSpace(x.Extra))
throw new BusinessException(message: "轨迹extra为空无法使用比较字段比较,请检查轨迹"); throw new BusinessException(message: "轨迹extra为空无法使用比较字段比较,请检查轨迹");
var extraJsonElement = TextJsonHelper.DeserializeToJsonElement(x.Extra); var extraJsonElement = TextJsonHelper.DeserializeToJsonElement(x.Extra);
var inputExtraJsonElement = TextJsonHelper.DeserializeToJsonElement(extra1); var inputExtraJsonElement = TextJsonHelper.DeserializeToJsonElement(extra);
return TextJsonHelper.EqByJsonElementField(extraJsonElement, inputExtraJsonElement, compareFields1); return TextJsonHelper.EqByJsonElementField(extraJsonElement, inputExtraJsonElement, compareFields);
}) })
.ToList(); .ToList();
} }

View File

@ -1,48 +1,46 @@
using Microsoft.AspNetCore.Mvc; using SJZY.Track.Application.Contract.Dtos.Warning.Complete;
using Track.Warning.VNext.Application.Contract.Dtos.Common;
using Track.Warning.VNext.Application.Contract.Dtos.Warning.Complete;
namespace Track.Warning.VNext.Controllers.Warning; namespace SJZY.Track.Application.Services.Warning;
/// <summary> /// <summary>
/// 完整预警服务 /// 完整预警服务
/// </summary> /// </summary>
[ApiController] [ApiExplorerSettings(GroupName = "预警服务")]
[Route("Warning/Complete")] [Route("Warning/Complete")]
public class CompleteWarningService : ControllerBase public class CompleteWarningService : ApplicationService
{ {
/// <summary> /// <summary>
/// 编辑完整预警规则列表 /// 编辑完整预警规则列表
/// </summary> /// </summary>
/// <param name="input"></param> /// <param name="input"></param>
/// <returns></returns> /// <returns></returns>
[HttpPost("EditCompleteWarningRuleItem")] [HttpPost("EditCompleteWarningRuleItem")]
public Task<UnifyResultDto> EditCompleteWarningRuleItem(EditCompleteWarningRuleItemInput input) public Task<UnifyResultDto> EditCompleteWarningRuleItem(EditCompleteWarningRuleItemInput input)
{ {
return Task.FromResult(new UnifyResultDto()); return Task.FromResult(new UnifyResultDto());
} }
/// <summary> /// <summary>
/// 获取完整预警规则列表 /// 获取完整预警规则列表
/// </summary> /// </summary>
/// <param name="input"></param> /// <param name="input"></param>
/// <returns></returns> /// <returns></returns>
[HttpPost("GetCompleteWarningRuleItem")] [HttpPost("GetCompleteWarningRuleItem")]
public Task<UnifyResultDto<List<CompleteWarningRuleItemDto>>> public Task<UnifyResultDto<List<CompleteWarningRuleItemDto>>>
GetCompleteWarningRuleItem(GetCompleteWarningRuleItemInput input) GetCompleteWarningRuleItem(GetCompleteWarningRuleItemInput input)
{ {
return Task.FromResult(new UnifyResultDto<List<CompleteWarningRuleItemDto>>()); return Task.FromResult(new UnifyResultDto<List<CompleteWarningRuleItemDto>>());
} }
/// <summary> /// <summary>
/// 分页获取完整预警详情 /// 分页获取完整预警详情
/// </summary> /// </summary>
/// <param name="input"></param> /// <param name="input"></param>
/// <returns></returns> /// <returns></returns>
[HttpPost("GetPageCompleteWarningDetails")] [HttpPost("GetPageCompleteWarningDetails")]
public Task<UnifyPageResultDto<CompleteWarningDetailsDto>> public Task<UnifyPageResultDto<CompleteWarningDetailsDto>>
GetPageCompleteWarningDetails(GetPageCompleteWarningDetailsInput input) GetPageCompleteWarningDetails(GetPageCompleteWarningDetailsInput input)
{ {
return Task.FromResult(new UnifyPageResultDto<CompleteWarningDetailsDto>()); return Task.FromResult(new UnifyPageResultDto<CompleteWarningDetailsDto>());
} }
} }

View File

@ -1,58 +1,54 @@
using Microsoft.AspNetCore.Mvc; using SJZY.Track.Application.Contract.Dtos.Warning.Return;
using Track.Warning.VNext.Application.Contract.Dtos.Common;
using Track.Warning.VNext.Application.Contract.Dtos.Warning.Return;
namespace Track.Warning.VNext.Controllers.Warning; namespace SJZY.Track.Application.Services.Warning;
/// <summary> /// <summary>
/// 回传预警服务 /// 回传预警服务
/// </summary> /// </summary>
[ApiController] [ApiExplorerSettings(GroupName = "预警服务")]
[Route("Warning/Return")] [Route("Warning/Return")]
public class ReturnWarningService : ControllerBase public class ReturnWarningService : ApplicationService
{ {
/// <summary> /// <summary>
/// 编辑回传预警规则列表 /// 编辑回传预警规则列表
/// </summary> /// </summary>
/// <param name="input"></param> /// <param name="input"></param>
/// <returns></returns> /// <returns></returns>
[HttpPost("EditReturnWarningRuleItem")] [HttpPost("EditReturnWarningRuleItem")]
public Task<UnifyResultDto> EditReturnWarningRuleItem(EditReturnWarningRuleItemInput input) public Task<UnifyResultDto> EditReturnWarningRuleItem(EditReturnWarningRuleItemInput input)
{ {
return Task.FromResult(new UnifyResultDto()); return Task.FromResult(new UnifyResultDto());
} }
/// <summary> /// <summary>
/// 分页获取回传预警明细 /// 分页获取回传预警明细
/// </summary> /// </summary>
/// <param name="input"></param> /// <param name="input"></param>
/// <returns></returns> /// <returns></returns>
[HttpPost("GetPageReturnWarningDetails")] [HttpPost("GetPageReturnWarningDetails")]
public Task<UnifyPageResultDto<ReturnWarningDetailsDto>> public Task<UnifyPageResultDto<ReturnWarningDetailsDto>> GetPageReturnWarningDetails(GetPageReturnWarningDetailsInput input)
GetPageReturnWarningDetails(GetPageReturnWarningDetailsInput input) {
{ return Task.FromResult(new UnifyPageResultDto<ReturnWarningDetailsDto>());
return Task.FromResult(new UnifyPageResultDto<ReturnWarningDetailsDto>()); }
}
/// <summary> /// <summary>
/// 获取回传报文日志 /// 获取回传报文日志
/// </summary> /// </summary>
[HttpPost("GetReturnMessageRecord")] [HttpPost("GetReturnMessageRecord")]
public Task<UnifyResultDto<List<ReturnMessageRecordDto>>> public Task<UnifyResultDto<List<ReturnMessageRecordDto>>> GetReturnMessageRecord(GetReturnMessageRecordInput input)
GetReturnMessageRecord(GetReturnMessageRecordInput input) {
{ return Task.FromResult(new UnifyResultDto<List<ReturnMessageRecordDto>>());
return Task.FromResult(new UnifyResultDto<List<ReturnMessageRecordDto>>()); }
}
/// <summary> /// <summary>
/// 获取回传预警规则列表 /// 获取回传预警规则列表
/// </summary> /// </summary>
/// <param name="input"></param> /// <param name="input"></param>
/// <returns></returns> /// <returns></returns>
[HttpPost("GetReturnWarningRuleItem")] [HttpPost("GetReturnWarningRuleItem")]
public Task<UnifyResultDto<List<ReturnWarningRuleItemDto>>> public Task<UnifyResultDto<List<ReturnWarningRuleItemDto>>>
GetReturnWarningRuleItem(GetReturnWarningRuleItemInput input) GetReturnWarningRuleItem(GetReturnWarningRuleItemInput input)
{ {
return Task.FromResult(new UnifyResultDto<List<ReturnWarningRuleItemDto>>()); return Task.FromResult(new UnifyResultDto<List<ReturnWarningRuleItemDto>>());
} }
} }

View File

@ -1,11 +1,11 @@
using Track.Warning.VNext.Application.Contract.Dtos.Warning.Transport; using SJZY.Track.Application.Contract.Dtos.Warning.Transport;
/// <summary> /// <summary>
/// 运输时效预警服务 /// 运输时效预警服务
/// </summary> /// </summary>
[ApiController] [ApiExplorerSettings(GroupName = "预警服务")]
[Route("Warning/Transport")] [Route("Warning/Transport")]
public class TransportWarningService : ControllerBase public class TransportWarningService : ApplicationService
{ {
/// <summary> /// <summary>

View File

@ -1,13 +1,13 @@
using Track.Warning.VNext.Application.Contract.Dtos.Warning; using SJZY.Track.Application.Contract.Dtos.Warning;
namespace Track.Warning.VNext.Controllers.Warning; namespace SJZY.Track.Application.Services.Warning;
/// <summary> /// <summary>
/// 预警规则主体 /// 预警规则主体
/// </summary> /// </summary>
[ApiController] [ApiExplorerSettings(GroupName = "预警服务")]
[Route("Warning")] [Route("Warning")]
public class WarningService : ControllerBase public class WarningService : ApplicationService
{ {
/// <summary> /// <summary>
/// 新增/修改预警规则主体 /// 新增/修改预警规则主体

View File

@ -8,6 +8,9 @@ public interface ITrackDetailsEsRepository : IElasticsearchClientService<TrackDe
{ {
Task<List<TrackDetailsIndex>> GetListAsync(int[] orderIds, string trackCode, bool forUpsert = false); Task<List<TrackDetailsIndex>> GetListAsync(int[] orderIds, string trackCode, bool forUpsert = false);
// todo:s07 获取这些订单的最新一条轨迹
// Task<List<TrackDetailsIndex>> GetLatestListAsync(HashSet<int> eventOrderIds);
Task<List<TrackDetailsIndex>> GetLatestListAsync(int[] eventOrderIds, List<string> trackCodes); Task<List<TrackDetailsIndex>> GetLatestListAsync(int[] eventOrderIds, List<string> trackCodes);
Task<List<TrackDetailsIndex>> GetListAsync(int subSystemId, int orderType, List<string> orderNos, List<string>? trackCodes = null); Task<List<TrackDetailsIndex>> GetListAsync(int subSystemId, int orderType, List<string> orderNos, List<string>? trackCodes = null);

View File

@ -2,9 +2,8 @@ using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting; using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Logging; using Microsoft.Extensions.Logging;
using SJZY.Track.Test;
namespace SJZY.OpenApi.Test; namespace SJZY.Track.Test;
public class Startup public class Startup
{ {

View File

@ -2,7 +2,7 @@ using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting; using Microsoft.Extensions.Hosting;
using Volo.Abp.AspNetCore.TestBase; using Volo.Abp.AspNetCore.TestBase;
namespace SJZY.OpenApi.Test; namespace SJZY.Track.Test;
public class TestModuleTestBase : AbpAspNetCoreIntegratedTestBase<Startup> public class TestModuleTestBase : AbpAspNetCoreIntegratedTestBase<Startup>
{ {