diff --git a/src/SJZY.Track.Application.Contract/Dtos/ProvideServices/GetTrackOutput.cs b/src/SJZY.Track.Application.Contract/Dtos/ProvideServices/GetTrackOutput.cs index 72df17e3..84c1ed15 100644 --- a/src/SJZY.Track.Application.Contract/Dtos/ProvideServices/GetTrackOutput.cs +++ b/src/SJZY.Track.Application.Contract/Dtos/ProvideServices/GetTrackOutput.cs @@ -7,6 +7,9 @@ public class GetTrackOutput /// public string OrderNo { get; set; } = null!; + /// + /// 轨迹明细列表 + /// public List TrackDetails { get; set; } = new(); } @@ -32,4 +35,70 @@ public class TrackDetail /// 是否对外 /// public bool IsDisplay { get; set; } + + /// + /// 客户是否可见 + /// + public bool IsVisibility { get; set; } + + /// + /// 数据来源:1外部服务商创建,2内部系统创建,3人工创建 + /// + public int Source { get; set; } + + /// + /// 备注 + /// + public string? Remarks { get; set; } + + /// + /// 附件集合 + /// + public List? Files { get; set; } + + /// + /// 轨迹发生地(城市) + /// + public string? TrackPlaceCity { get; set; } + + /// + /// 轨迹发生地(城市)Id + /// + public int? TrackPlaceCityId { get; set; } + + /// + /// 轨迹发生地(省/州) + /// + public string? TrackPlaceProvince { get; set; } + + /// + /// 轨迹发生地(省/州)Id + /// + public int? TrackPlaceProvinceId { get; set; } + + /// + /// 轨迹发生地(国家/地区) + /// + public string? TrackPlaceNation { get; set; } + + /// + /// 轨迹发生地(国家/地区)Id + /// + public int? TrackPlaceNationId { get; set; } + + /// + /// 轨迹发生地邮编 + /// + public string? TrackPlacePostcode { get; set; } + + + /// + /// 预计到达时间 + /// + public DateTime? EstimatedDeliveryDate { get; set; } + + /// + /// 目的地时区 + /// + public float? DestinationTimeZone { get; set; } } diff --git a/src/SJZY.Track.Application/Rabbit/TrackRefreshEventHandler.cs b/src/SJZY.Track.Application/Rabbit/TrackRefreshEventHandler.cs index 8afa7705..25367043 100644 --- a/src/SJZY.Track.Application/Rabbit/TrackRefreshEventHandler.cs +++ b/src/SJZY.Track.Application/Rabbit/TrackRefreshEventHandler.cs @@ -15,6 +15,7 @@ using SJZY.Track.Application.Contract.Services; using SJZY.Track.Application.Helpers; using SJZY.Track.Domain.Aggregates.OrderAggregate; using SJZY.Track.Domain.Aggregates.TrackDetailsAggregate; +using SJZY.Track.Domain.Enums; using Volo.Abp.DependencyInjection; namespace SJZY.Track.Application.Rabbit; @@ -258,6 +259,22 @@ public class TrackRefreshEventHandler : ITransientDependency, IRabbitHandler TrackTime = trackTime ?? DateTime.Now, TrackTimeZone = trackTimeZone ?? GlobalConst.NoneTrackTimeZone, IsAdd = true, + //S06新增 + IsVisibility = false, + Source = (int)TrackSourceEnum.ExternalServiceProvide, + Remarks = GlobalConst.EmptyString, + Files = null, + Content = GlobalConst.EmptyString, + EnStatus = GlobalConst.EmptyString, + TrackPlaceCity = GlobalConst.EmptyString, + TrackPlaceCityId = GlobalConst.NotExistId, + TrackPlaceProvince = GlobalConst.EmptyString, + TrackPlaceProvinceId = GlobalConst.NotExistId, + TrackPlaceNation = GlobalConst.EmptyString, + TrackPlaceNationId = GlobalConst.NotExistId, + TrackPlacePostcode = GlobalConst.EmptyString, + DestinationTimeZone = null, + EstimatedDeliveryDate = null, }; await _capPublisher.PublishAsync(GlobalConst.TrackUpsertForRefreshSubscribe, trackUpsertEvent); @@ -281,7 +298,26 @@ public class TrackRefreshEventHandler : ITransientDependency, IRabbitHandler OriginTrackDataHash = StringHelper.GetHash(JsonConvert.SerializeObject(trackToken)), OriginTrackContent = trackContent ?? GlobalConst.EmptyString, CreateUser = GlobalConst.SystemUser, - CreateTime = DateTime.Now + CreateTime = DateTime.Now, + //来源轨迹内容,第一次新增的时候使用轨迹内容表提供的 + TrackStatus = GlobalConst.EmptyString, + TrackStatusCode = GlobalConst.EmptyString, + TrackContent = GlobalConst.EmptyString, + TrackEnContent = GlobalConst.EmptyString, + //S06新增轨迹明细字段 + IsVisibility = false, + Source = (int) TrackSourceEnum.ExternalServiceProvide, + Remarks = GlobalConst.EmptyString, + Files = null, + TrackPlaceCity = GlobalConst.EmptyString, + TrackPlaceCityId = GlobalConst.NotExistId, + TrackPlaceProvince = GlobalConst.EmptyString, + TrackPlaceProvinceId = GlobalConst.NotExistId, + TrackPlaceNation = GlobalConst.EmptyString, + TrackPlaceNationId = GlobalConst.NotExistId, + TrackPlacePostcode = GlobalConst.EmptyString, + DestinationTimeZone = null, + EstimatedDeliveryDate = null, }; track.ZeroTrackTime = Math.Abs(track.TrackTimeZone - GlobalConst.NoneTrackTimeZone) < 1 diff --git a/src/SJZY.Track.Application/Services/ProvideServices/TrackService.Query.cs b/src/SJZY.Track.Application/Services/ProvideServices/TrackService.Query.cs index 30b0e0d2..ab0bd27d 100644 --- a/src/SJZY.Track.Application/Services/ProvideServices/TrackService.Query.cs +++ b/src/SJZY.Track.Application/Services/ProvideServices/TrackService.Query.cs @@ -62,7 +62,24 @@ public partial class TrackService TimeZone = Math.Abs(x.TrackTimeZone - GlobalConst.NoneTrackTimeZone) < 1 ? null : input.TimeZone ?? 8, - IsDisplay = trackContentDic.TryGetValue(x.TrackCode, out var isExternal) && isExternal + IsDisplay = trackContentDic.TryGetValue(x.TrackCode, out var isExternal) && isExternal, + IsVisibility = x.IsVisibility, + Source = x.Source, + Remarks = x.Remarks, + Files = x.Files?.Select(y => new FileItemDto + { + FileName = y.FileName, + OssKey = y.OssKey + }).ToList(), + TrackPlaceCity = x.TrackPlaceCity, + TrackPlaceCityId = x.TrackPlaceCityId, + TrackPlaceProvince = x.TrackPlaceProvince, + TrackPlaceProvinceId = x.TrackPlaceProvinceId, + TrackPlaceNation = x.TrackPlaceNation, + TrackPlaceNationId = x.TrackPlaceNationId, + TrackPlacePostcode = x.TrackPlacePostcode, + DestinationTimeZone = x.DestinationTimeZone, + EstimatedDeliveryDate = x.EstimatedDeliveryDate }).ToList(); res.Add(item);