Merge branch 'S06' into test
This commit is contained in:
commit
a95cd73a5b
@ -119,4 +119,9 @@ public class BatchUpsertTrackInput : OrderNosInfo
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
[Range(-12, 12)]
|
[Range(-12, 12)]
|
||||||
public float? DestinationTimeZone { get; set; }
|
public float? DestinationTimeZone { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 扩展信息字段,用与轨迹推送的附加字段
|
||||||
|
/// </summary>
|
||||||
|
public Dictionary<string,object>? Extra { get; set; }
|
||||||
}
|
}
|
||||||
|
|||||||
@ -91,7 +91,6 @@ public class TrackDetail
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public string? TrackPlacePostcode { get; set; }
|
public string? TrackPlacePostcode { get; set; }
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 预计到达时间
|
/// 预计到达时间
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -101,4 +100,9 @@ public class TrackDetail
|
|||||||
/// 目的地时区
|
/// 目的地时区
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public float? DestinationTimeZone { get; set; }
|
public float? DestinationTimeZone { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 扩展信息字段,用与轨迹推送的附加字段
|
||||||
|
/// </summary>
|
||||||
|
public Dictionary<string, object>? Extra { get; set; }
|
||||||
}
|
}
|
||||||
|
|||||||
@ -123,4 +123,9 @@ public class UpsertTrackInput : OrderNoInfo
|
|||||||
/// 当前操作人
|
/// 当前操作人
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public int OptionUserId { get; set; }
|
public int OptionUserId { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 扩展信息字段,用与轨迹推送的附加字段
|
||||||
|
/// </summary>
|
||||||
|
public Dictionary<string, object>? Extra { get; set; }
|
||||||
}
|
}
|
||||||
|
|||||||
@ -4,7 +4,8 @@ public class TrackPushInput
|
|||||||
{
|
{
|
||||||
public string OrderNo { get; set; } = null!;
|
public string OrderNo { get; set; } = null!;
|
||||||
|
|
||||||
public List<TrackItem> Data { get; set; } = new();
|
//原TrackItem,为了扩展字段入参变更为字典
|
||||||
|
public List<Dictionary<string,object>> Data { get; set; } = new();
|
||||||
|
|
||||||
public string Log { get; set; }
|
public string Log { get; set; }
|
||||||
}
|
}
|
||||||
@ -13,7 +14,8 @@ public class TrackUpdateInput
|
|||||||
{
|
{
|
||||||
public string OrderNo { get; set; } = null!;
|
public string OrderNo { get; set; } = null!;
|
||||||
|
|
||||||
public List<TrackItem> Data { get; set; } = new();
|
//原TrackItem,为了扩展字段入参变更为字典
|
||||||
|
public List<Dictionary<string,object>> Data { get; set; } = new();
|
||||||
|
|
||||||
public string Log { get; set; }
|
public string Log { get; set; }
|
||||||
}
|
}
|
||||||
|
|||||||
@ -128,4 +128,9 @@ public class TrackChangeEto
|
|||||||
/// 预计到达时间
|
/// 预计到达时间
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public DateTime? EstimatedDeliveryDate { get; set; }
|
public DateTime? EstimatedDeliveryDate { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 扩展信息字段,用与轨迹推送的附加字段
|
||||||
|
/// </summary>
|
||||||
|
public Dictionary<string, object>? Extra { get; set; }
|
||||||
}
|
}
|
||||||
|
|||||||
159
src/SJZY.Track.Application.Contract/Events/TrackPushEto.cs
Normal file
159
src/SJZY.Track.Application.Contract/Events/TrackPushEto.cs
Normal file
@ -0,0 +1,159 @@
|
|||||||
|
using SJZY.Track.Application.Contract.Dtos.ProvideServices;
|
||||||
|
|
||||||
|
namespace SJZY.Track.Application.Contract.Events;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 轨迹推送广播模型
|
||||||
|
/// </summary>
|
||||||
|
public class TrackPushEto
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// 是否新增
|
||||||
|
/// </summary>
|
||||||
|
public OptionType Option { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 是否为手动推送
|
||||||
|
/// </summary>
|
||||||
|
public bool IsManualPush { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 推送是否失败
|
||||||
|
/// </summary>
|
||||||
|
public bool IsFailure { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 失败原因
|
||||||
|
/// </summary>
|
||||||
|
public string? FailureReason { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 推送时间
|
||||||
|
/// </summary>
|
||||||
|
public DateTime PushTime { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 操作人
|
||||||
|
/// </summary>
|
||||||
|
public string? OperationMan { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 子系统id
|
||||||
|
/// </summary>
|
||||||
|
public int SubSystemId { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 单号
|
||||||
|
/// </summary>
|
||||||
|
public string OrderNo { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 客户id
|
||||||
|
/// </summary>
|
||||||
|
public int CustomId { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 订单id
|
||||||
|
/// </summary>
|
||||||
|
public OrderIdentifier[] OrderIdentifiers { get; set; } = null!;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 轨迹内容代码
|
||||||
|
/// </summary>
|
||||||
|
public string TrackCode { get; set; } = null!;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 轨迹内容
|
||||||
|
/// </summary>
|
||||||
|
public string? Content { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 轨迹内容英文
|
||||||
|
/// </summary>
|
||||||
|
public string? EnStatus { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 轨迹状态代码
|
||||||
|
/// </summary>
|
||||||
|
public string TrackStatusCode { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 轨迹发生地
|
||||||
|
/// </summary>
|
||||||
|
public string TrackPlace { get; set; } = null!;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 轨迹发生时间
|
||||||
|
/// </summary>
|
||||||
|
public DateTime TrackTime { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 轨迹发生地时区
|
||||||
|
/// </summary>
|
||||||
|
public float TrackTimeZone { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 客户是否可见
|
||||||
|
/// </summary>
|
||||||
|
public bool IsVisibility { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 数据来源:1外部服务商创建,2内部系统创建,3人工创建
|
||||||
|
/// </summary>
|
||||||
|
public int Source { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 轨迹备注
|
||||||
|
/// </summary>
|
||||||
|
public string? Remarks { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 附件集合
|
||||||
|
/// </summary>
|
||||||
|
public List<FileItemDto>? Files { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 轨迹发生地(城市)
|
||||||
|
/// </summary>
|
||||||
|
public string? TrackPlaceCity { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 轨迹发生地(城市)Id
|
||||||
|
/// </summary>
|
||||||
|
public int? TrackPlaceCityId { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 轨迹发生地(省/州)
|
||||||
|
/// </summary>
|
||||||
|
public string? TrackPlaceProvince { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///轨迹发生地(省/州)Id
|
||||||
|
/// </summary>
|
||||||
|
public int? TrackPlaceProvinceId { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 轨迹发生地(国家/地区)
|
||||||
|
/// </summary>
|
||||||
|
public string? TrackPlaceNation { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 轨迹发生地(国家/地区)Id
|
||||||
|
/// </summary>
|
||||||
|
public int? TrackPlaceNationId { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 轨迹发生地邮编
|
||||||
|
/// </summary>
|
||||||
|
public string? TrackPlacePostcode { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 预计到达时间
|
||||||
|
/// </summary>
|
||||||
|
public DateTime? EstimatedDeliveryDate { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 扩展信息字段,用与轨迹推送的附加字段
|
||||||
|
/// </summary>
|
||||||
|
public Dictionary<string, object>? Extra { get; set; }
|
||||||
|
}
|
||||||
@ -69,4 +69,9 @@ public struct SystemPushStruct
|
|||||||
/// 轨迹发生时区
|
/// 轨迹发生时区
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public float TrackTimeZone { get; set; }
|
public float TrackTimeZone { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 扩展信息字段,用与轨迹推送的附加字段
|
||||||
|
/// </summary>
|
||||||
|
public Dictionary<string, object>? Extra { get; set; }
|
||||||
}
|
}
|
||||||
|
|||||||
@ -141,6 +141,11 @@ public class TrackUpsertEvent
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public float? DestinationTimeZone { get; set; }
|
public float? DestinationTimeZone { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 扩展信息字段,用与轨迹推送的附加字段
|
||||||
|
/// </summary>
|
||||||
|
public Dictionary<string, object>? Extra { get; set; }
|
||||||
|
|
||||||
public override string ToString()
|
public override string ToString()
|
||||||
{
|
{
|
||||||
return
|
return
|
||||||
|
|||||||
@ -5,7 +5,7 @@
|
|||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<TargetFramework>net7.0</TargetFramework>
|
<TargetFramework>net7.0</TargetFramework>
|
||||||
<GenerateDocumentationFile>True</GenerateDocumentationFile>
|
<GenerateDocumentationFile>True</GenerateDocumentationFile>
|
||||||
<Version>7.0.3</Version>
|
<Version>7.0.5</Version>
|
||||||
<GenerateDocumentationFile>True</GenerateDocumentationFile>
|
<GenerateDocumentationFile>True</GenerateDocumentationFile>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|||||||
@ -12,6 +12,13 @@ public interface ITrackService : IRemoteService
|
|||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
Task<UnifyResultDto> UpsertTrackAsync(UpsertTrackInput input);
|
Task<UnifyResultDto> UpsertTrackAsync(UpsertTrackInput input);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 批量新增/更新订单轨迹接口
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="input"></param>
|
||||||
|
/// <returns></returns>
|
||||||
|
Task<UnifyResultDto> BatchUpsertTrackAsync(BatchUpsertTrackInput input);
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 删除轨迹
|
/// 删除轨迹
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|||||||
@ -225,7 +225,8 @@ public class TrackDeleteEventHandler : ITransientDependency, ICapSubscribe
|
|||||||
}
|
}
|
||||||
|
|
||||||
//排除掉已经删除的轨迹
|
//排除掉已经删除的轨迹
|
||||||
tracks = tracks.Except(deleteTracks).ToList();
|
var deleteTrackIds = deleteTracks.Select(m => m.Id).ToList();
|
||||||
|
tracks = tracks.Where(x => !deleteTrackIds.Contains(x.Id)).ToList();
|
||||||
|
|
||||||
var orders = await _orderRepository.GetListAsync(x => orderIds.Contains(x.Id),
|
var orders = await _orderRepository.GetListAsync(x => orderIds.Contains(x.Id),
|
||||||
x => new OrderEntity
|
x => new OrderEntity
|
||||||
|
|||||||
@ -6,7 +6,6 @@ using SJZY.Expand.ABP.Core.PublicMethords;
|
|||||||
using SJZY.Track.Application.Contract.Events;
|
using SJZY.Track.Application.Contract.Events;
|
||||||
using SJZY.Track.Domain.Aggregates.OrderAggregate;
|
using SJZY.Track.Domain.Aggregates.OrderAggregate;
|
||||||
using SJZY.Track.Domain.Aggregates.TrackDetailsAggregate;
|
using SJZY.Track.Domain.Aggregates.TrackDetailsAggregate;
|
||||||
using SJZY.Track.Domain.Aggregates.TrackStatusAggregate;
|
|
||||||
using SJZY.Track.Domain.Dtos.TrackContents;
|
using SJZY.Track.Domain.Dtos.TrackContents;
|
||||||
using SJZY.Track.Domain.Enums;
|
using SJZY.Track.Domain.Enums;
|
||||||
using SJZY.Track.Domain.Queries;
|
using SJZY.Track.Domain.Queries;
|
||||||
@ -93,7 +92,8 @@ public class TrackUpsertEventHandler : ITransientDependency, ICapSubscribe
|
|||||||
OperationMan = eto.OperationMan,
|
OperationMan = eto.OperationMan,
|
||||||
OrderIdentifiers = eto.OrderIdentifiers,
|
OrderIdentifiers = eto.OrderIdentifiers,
|
||||||
CustomId = eto.CustomId,
|
CustomId = eto.CustomId,
|
||||||
SubSystemId = eto.SubSystemId
|
SubSystemId = eto.SubSystemId,
|
||||||
|
Extra = eto.Extra
|
||||||
};
|
};
|
||||||
|
|
||||||
if (eto.IsAdd)
|
if (eto.IsAdd)
|
||||||
@ -199,7 +199,7 @@ public class TrackUpsertEventHandler : ITransientDependency, ICapSubscribe
|
|||||||
return default;
|
return default;
|
||||||
}
|
}
|
||||||
|
|
||||||
//#7001:未来潜在需求,当轨迹内容匹配预设,记录一个标记,保证下刷过程都是使用预设内衣
|
//#7001:未来潜在需求,当轨迹内容匹配预设,记录一个标记,保证下刷过程都是使用预设内容
|
||||||
//虽然在引发事件之前做了判断,引发之后并不一定立即处理,在此过程中轨迹内容仍然可能被修改,所以要二次进行判断。
|
//虽然在引发事件之前做了判断,引发之后并不一定立即处理,在此过程中轨迹内容仍然可能被修改,所以要二次进行判断。
|
||||||
//通过来源指示是否为手动操作
|
//通过来源指示是否为手动操作
|
||||||
var manualOperation = @event.Source == (int) TrackSourceEnum.Artificial;
|
var manualOperation = @event.Source == (int) TrackSourceEnum.Artificial;
|
||||||
@ -262,7 +262,8 @@ public class TrackUpsertEventHandler : ITransientDependency, ICapSubscribe
|
|||||||
TrackContent = trackContent.TrackContent,
|
TrackContent = trackContent.TrackContent,
|
||||||
TrackPlace = @event.TrackPlace,
|
TrackPlace = @event.TrackPlace,
|
||||||
TrackTime = @event.NewTrackTime ?? @event.TrackTime,
|
TrackTime = @event.NewTrackTime ?? @event.TrackTime,
|
||||||
TrackTimeZone = @event.TrackTimeZone
|
TrackTimeZone = @event.TrackTimeZone,
|
||||||
|
Extra = @event.Extra
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
await _capPublisher.PublishAsync(GlobalConst.TrackPushSubscribe, trackPushEvent);
|
await _capPublisher.PublishAsync(GlobalConst.TrackPushSubscribe, trackPushEvent);
|
||||||
@ -353,9 +354,11 @@ public class TrackUpsertEventHandler : ITransientDependency, ICapSubscribe
|
|||||||
CreateUser = @event.OperationMan ?? GlobalConst.SystemUser,
|
CreateUser = @event.OperationMan ?? GlobalConst.SystemUser,
|
||||||
CreateTime = DateTime.Now,
|
CreateTime = DateTime.Now,
|
||||||
//来源轨迹内容,第一次新增的时候使用轨迹内容表提供的
|
//来源轨迹内容,第一次新增的时候使用轨迹内容表提供的
|
||||||
|
TrackStatusId = trackContent.TrackStatusId,
|
||||||
TrackStatus = trackContent.TrackStatus,
|
TrackStatus = trackContent.TrackStatus,
|
||||||
TrackStatusCode = trackContent.TrackStatusCode,
|
TrackStatusCode = trackContent.TrackStatusCode,
|
||||||
//跨子系统?
|
//跨子系统?
|
||||||
|
TrackContentId = trackContent.TrackContentId,
|
||||||
TrackContent = @event.Content ?? trackContent.TrackContent,
|
TrackContent = @event.Content ?? trackContent.TrackContent,
|
||||||
TrackEnContent = @event.EnStatus ?? trackContent.TrackEnContent,
|
TrackEnContent = @event.EnStatus ?? trackContent.TrackEnContent,
|
||||||
//S06新增轨迹明细字段
|
//S06新增轨迹明细字段
|
||||||
@ -376,6 +379,7 @@ public class TrackUpsertEventHandler : ITransientDependency, ICapSubscribe
|
|||||||
TrackPlacePostcode = @event.TrackPlacePostcode ?? GlobalConst.EmptyString,
|
TrackPlacePostcode = @event.TrackPlacePostcode ?? GlobalConst.EmptyString,
|
||||||
DestinationTimeZone = @event.DestinationTimeZone,
|
DestinationTimeZone = @event.DestinationTimeZone,
|
||||||
EstimatedDeliveryDate = @event.EstimatedDeliveryDate,
|
EstimatedDeliveryDate = @event.EstimatedDeliveryDate,
|
||||||
|
Extra = @event.Extra
|
||||||
};
|
};
|
||||||
|
|
||||||
track.ZeroTrackTime = Math.Abs(track.TrackTimeZone - GlobalConst.NoneTrackTimeZone) < 1
|
track.ZeroTrackTime = Math.Abs(track.TrackTimeZone - GlobalConst.NoneTrackTimeZone) < 1
|
||||||
@ -432,6 +436,7 @@ public class TrackUpsertEventHandler : ITransientDependency, ICapSubscribe
|
|||||||
track.TrackPlacePostcode = @event.TrackPlacePostcode ?? GlobalConst.EmptyString;
|
track.TrackPlacePostcode = @event.TrackPlacePostcode ?? GlobalConst.EmptyString;
|
||||||
track.DestinationTimeZone = @event.DestinationTimeZone;
|
track.DestinationTimeZone = @event.DestinationTimeZone;
|
||||||
track.EstimatedDeliveryDate = @event.EstimatedDeliveryDate;
|
track.EstimatedDeliveryDate = @event.EstimatedDeliveryDate;
|
||||||
|
track.Extra = @event.Extra;
|
||||||
|
|
||||||
updateTracks.Add(track);
|
updateTracks.Add(track);
|
||||||
|
|
||||||
|
|||||||
@ -57,6 +57,16 @@ public class InterfaceRelayParamsConfigOptions
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public string PushTrackInterfaceCode { get; set; }
|
public string PushTrackInterfaceCode { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 推送轨迹接口Id
|
||||||
|
/// </summary>
|
||||||
|
public int PushTrackInterfaceId { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 推送轨迹接口 内容项 参数别名前缀
|
||||||
|
/// </summary>
|
||||||
|
public string PushTrackItemParamAliasPrefix { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 更新轨迹接口代码
|
/// 更新轨迹接口代码
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|||||||
@ -300,8 +300,10 @@ public class TrackRefreshEventHandler : ITransientDependency, IRabbitHandler
|
|||||||
CreateUser = GlobalConst.SystemUser,
|
CreateUser = GlobalConst.SystemUser,
|
||||||
CreateTime = DateTime.Now,
|
CreateTime = DateTime.Now,
|
||||||
//来源轨迹内容,第一次新增的时候使用轨迹内容表提供的
|
//来源轨迹内容,第一次新增的时候使用轨迹内容表提供的
|
||||||
|
TrackStatusId = GlobalConst.NotExistId,
|
||||||
TrackStatus = GlobalConst.EmptyString,
|
TrackStatus = GlobalConst.EmptyString,
|
||||||
TrackStatusCode = GlobalConst.EmptyString,
|
TrackStatusCode = GlobalConst.EmptyString,
|
||||||
|
TrackContentId = GlobalConst.NotExistId,
|
||||||
TrackContent = GlobalConst.EmptyString,
|
TrackContent = GlobalConst.EmptyString,
|
||||||
TrackEnContent = GlobalConst.EmptyString,
|
TrackEnContent = GlobalConst.EmptyString,
|
||||||
//S06新增轨迹明细字段
|
//S06新增轨迹明细字段
|
||||||
@ -318,6 +320,7 @@ public class TrackRefreshEventHandler : ITransientDependency, IRabbitHandler
|
|||||||
TrackPlacePostcode = null,
|
TrackPlacePostcode = null,
|
||||||
DestinationTimeZone = null,
|
DestinationTimeZone = null,
|
||||||
EstimatedDeliveryDate = null,
|
EstimatedDeliveryDate = null,
|
||||||
|
Extra = null
|
||||||
};
|
};
|
||||||
|
|
||||||
track.ZeroTrackTime = Math.Abs(track.TrackTimeZone - GlobalConst.NoneTrackTimeZone) < 1
|
track.ZeroTrackTime = Math.Abs(track.TrackTimeZone - GlobalConst.NoneTrackTimeZone) < 1
|
||||||
|
|||||||
@ -11,10 +11,10 @@
|
|||||||
<PackageReference Include="BSI.Stack.Rabbit" Version="2.1.3" />
|
<PackageReference Include="BSI.Stack.Rabbit" Version="2.1.3" />
|
||||||
<PackageReference Include="Savorboard.CAP.InMemoryMessageQueue" Version="8.2.1"/>
|
<PackageReference Include="Savorboard.CAP.InMemoryMessageQueue" Version="8.2.1"/>
|
||||||
<PackageReference Include="SJZY.Expand.AliyunOSS" Version="7.0.17" />
|
<PackageReference Include="SJZY.Expand.AliyunOSS" Version="7.0.17" />
|
||||||
<PackageReference Include="SJZY.InterfaceRelay.Application.Contracts" Version="7.2.3"/>
|
<PackageReference Include="SJZY.InterfaceRelay.Application.Contracts" Version="7.2.5-alpha" />
|
||||||
<PackageReference Include="Volo.Abp.Http.Client" Version="7.0.2" />
|
<PackageReference Include="Volo.Abp.Http.Client" Version="7.0.2" />
|
||||||
<PackageReference Include="Volo.Abp.FluentValidation" Version="7.0.2" />
|
<PackageReference Include="Volo.Abp.FluentValidation" Version="7.0.2" />
|
||||||
<PackageReference Include="SJZY.UserCenter.HttpApi" Version="3.0.9-alpha9"/>
|
<PackageReference Include="SJZY.UserCenter.HttpApi" Version="3.1.8.17-alpha" />
|
||||||
<PackageReference Include="SJZY.Expand.CAP" Version="7.8.0" />
|
<PackageReference Include="SJZY.Expand.CAP" Version="7.8.0" />
|
||||||
<PackageReference Include="DotNetCore.CAP" Version="8.2.0"/>
|
<PackageReference Include="DotNetCore.CAP" Version="8.2.0"/>
|
||||||
<PackageReference Include="DotNetCore.CAP.Dashboard" Version="8.2.0"/>
|
<PackageReference Include="DotNetCore.CAP.Dashboard" Version="8.2.0"/>
|
||||||
|
|||||||
@ -8,7 +8,7 @@ using SJZY.Track.Domain.Aggregates.OrderAggregate;
|
|||||||
using SJZY.Track.Domain.Aggregates.TrackPushAggregate;
|
using SJZY.Track.Domain.Aggregates.TrackPushAggregate;
|
||||||
using SJZY.Track.Domain.Dtos.TrackPush;
|
using SJZY.Track.Domain.Dtos.TrackPush;
|
||||||
using SJZY.Track.Domain.Queries;
|
using SJZY.Track.Domain.Queries;
|
||||||
using SJZY.UserCenter.HttpApi.Services;
|
using SJZY.UserCenter.HttpApi.Services.User;
|
||||||
using Volo.Abp.Http.Client.DynamicProxying;
|
using Volo.Abp.Http.Client.DynamicProxying;
|
||||||
|
|
||||||
namespace SJZY.Track.Application.Services.ProvideServices;
|
namespace SJZY.Track.Application.Services.ProvideServices;
|
||||||
@ -23,14 +23,14 @@ public class TrackPushService : ApplicationService, ITrackPushService
|
|||||||
private readonly ICapPublisher _capPublisher;
|
private readonly ICapPublisher _capPublisher;
|
||||||
private readonly IOrderRepository _orderRepository;
|
private readonly IOrderRepository _orderRepository;
|
||||||
private readonly IProvideQueries _provideQueries;
|
private readonly IProvideQueries _provideQueries;
|
||||||
private readonly IHttpClientProxy<IRequestCurrentUserService> _requestCurrentUserService;
|
private readonly IHttpClientProxy<IUserBaseInfoService> _requestCurrentUserService;
|
||||||
private readonly ITrackPushConfigRepository _trackPushConfigRepository;
|
private readonly ITrackPushConfigRepository _trackPushConfigRepository;
|
||||||
private readonly ITrackPushRecordEsRepository _trackPushRecordEsRepository;
|
private readonly ITrackPushRecordEsRepository _trackPushRecordEsRepository;
|
||||||
|
|
||||||
public TrackPushService(IOrderRepository orderRepository
|
public TrackPushService(IOrderRepository orderRepository
|
||||||
, ICapPublisher capPublisher
|
, ICapPublisher capPublisher
|
||||||
, ITrackPushRecordEsRepository trackPushRecordEsRepository
|
, ITrackPushRecordEsRepository trackPushRecordEsRepository
|
||||||
, IHttpClientProxy<IRequestCurrentUserService> requestCurrentUserService
|
, IHttpClientProxy<IUserBaseInfoService> requestCurrentUserService
|
||||||
, ITrackPushConfigRepository trackPushConfigRepository, IProvideQueries provideQueries)
|
, ITrackPushConfigRepository trackPushConfigRepository, IProvideQueries provideQueries)
|
||||||
{
|
{
|
||||||
_orderRepository = orderRepository;
|
_orderRepository = orderRepository;
|
||||||
|
|||||||
@ -79,7 +79,8 @@ public partial class TrackService
|
|||||||
TrackPlaceNationId = x.TrackPlaceNationId,
|
TrackPlaceNationId = x.TrackPlaceNationId,
|
||||||
TrackPlacePostcode = x.TrackPlacePostcode,
|
TrackPlacePostcode = x.TrackPlacePostcode,
|
||||||
DestinationTimeZone = x.DestinationTimeZone,
|
DestinationTimeZone = x.DestinationTimeZone,
|
||||||
EstimatedDeliveryDate = x.EstimatedDeliveryDate
|
EstimatedDeliveryDate = x.EstimatedDeliveryDate,
|
||||||
|
Extra = x.Extra
|
||||||
}).ToList();
|
}).ToList();
|
||||||
|
|
||||||
res.Add(item);
|
res.Add(item);
|
||||||
|
|||||||
@ -7,6 +7,7 @@ using SJZY.Track.Domain.Aggregates.TrackContentAggregate;
|
|||||||
using SJZY.Track.Domain.Aggregates.TrackDetailsAggregate;
|
using SJZY.Track.Domain.Aggregates.TrackDetailsAggregate;
|
||||||
using SJZY.Track.Domain.Enums;
|
using SJZY.Track.Domain.Enums;
|
||||||
using SJZY.UserCenter.HttpApi.Services;
|
using SJZY.UserCenter.HttpApi.Services;
|
||||||
|
using SJZY.UserCenter.HttpApi.Services.User;
|
||||||
using Volo.Abp.Http.Client.DynamicProxying;
|
using Volo.Abp.Http.Client.DynamicProxying;
|
||||||
|
|
||||||
namespace SJZY.Track.Application.Services.ProvideServices;
|
namespace SJZY.Track.Application.Services.ProvideServices;
|
||||||
@ -20,12 +21,12 @@ public partial class TrackService : ApplicationService, ITrackService
|
|||||||
{
|
{
|
||||||
private readonly ICapPublisher _capPublisher;
|
private readonly ICapPublisher _capPublisher;
|
||||||
private readonly IOrderRepository _orderRepository;
|
private readonly IOrderRepository _orderRepository;
|
||||||
private readonly IHttpClientProxy<IRequestCurrentUserService> _requestCurrentUserService;
|
private readonly IHttpClientProxy<IUserBaseInfoService> _requestCurrentUserService;
|
||||||
private readonly ITrackContentRepository _trackContentRepository;
|
private readonly ITrackContentRepository _trackContentRepository;
|
||||||
|
|
||||||
public TrackService(IOrderRepository orderRepository, ICapPublisher capPublisher,
|
public TrackService(IOrderRepository orderRepository, ICapPublisher capPublisher,
|
||||||
ITrackDetailsEsRepository trackDetailsEsRepository, ITrackContentRepository trackContentRepository,
|
ITrackDetailsEsRepository trackDetailsEsRepository, ITrackContentRepository trackContentRepository,
|
||||||
IHttpClientProxy<IRequestCurrentUserService> requestCurrentUserService)
|
IHttpClientProxy<IUserBaseInfoService> requestCurrentUserService)
|
||||||
{
|
{
|
||||||
_orderRepository = orderRepository;
|
_orderRepository = orderRepository;
|
||||||
_capPublisher = capPublisher;
|
_capPublisher = capPublisher;
|
||||||
@ -443,10 +444,10 @@ public partial class TrackService : ApplicationService, ITrackService
|
|||||||
{
|
{
|
||||||
SubSystemId = input.SubSystemId,
|
SubSystemId = input.SubSystemId,
|
||||||
CustomId = group.Key,
|
CustomId = group.Key,
|
||||||
OrderIdentifiers = group.Select(order => new OrderIdentifier
|
OrderIdentifiers = group.Select(o => new OrderIdentifier
|
||||||
{
|
{
|
||||||
OrderId = order.Id,
|
OrderId = o.Id,
|
||||||
OrderNo = order.OrderNo,
|
OrderNo = o.OrderNo,
|
||||||
OrderType = input.OrderType,
|
OrderType = input.OrderType,
|
||||||
}).ToArray(),
|
}).ToArray(),
|
||||||
IsAdd = input.IsAdd,
|
IsAdd = input.IsAdd,
|
||||||
@ -472,6 +473,7 @@ public partial class TrackService : ApplicationService, ITrackService
|
|||||||
TrackPlacePostcode = input.TrackPlacePostcode,
|
TrackPlacePostcode = input.TrackPlacePostcode,
|
||||||
EstimatedDeliveryDate = input.EstimatedDeliveryDate,
|
EstimatedDeliveryDate = input.EstimatedDeliveryDate,
|
||||||
DestinationTimeZone = input.DestinationTimeZone,
|
DestinationTimeZone = input.DestinationTimeZone,
|
||||||
|
Extra = input.Extra
|
||||||
};
|
};
|
||||||
await _capPublisher.PublishAsync(GlobalConst.TrackUpsertSubscribe, @event);
|
await _capPublisher.PublishAsync(GlobalConst.TrackUpsertSubscribe, @event);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -32,6 +32,11 @@ public class TrackDetailsIndex : IdBaseIndex
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public int OrderType { get; set; }
|
public int OrderType { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 轨迹状态Id
|
||||||
|
/// </summary>
|
||||||
|
public int TrackStatusId { get; set; } = GlobalConst.NotExistId;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 轨迹状态
|
/// 轨迹状态
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -42,6 +47,11 @@ public class TrackDetailsIndex : IdBaseIndex
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public string TrackStatusCode { get; set; } = GlobalConst.EmptyString;
|
public string TrackStatusCode { get; set; } = GlobalConst.EmptyString;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 轨迹内容Id
|
||||||
|
/// </summary>
|
||||||
|
public int TrackContentId { get; set; } = GlobalConst.NotExistId;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 轨迹内容代码
|
/// 轨迹内容代码
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -176,4 +186,9 @@ public class TrackDetailsIndex : IdBaseIndex
|
|||||||
/// 签收地时区
|
/// 签收地时区
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public float? DestinationTimeZone { get; set; }
|
public float? DestinationTimeZone { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 扩展信息字段,用与轨迹推送的附加字段
|
||||||
|
/// </summary>
|
||||||
|
public Dictionary<string, object>? Extra { get; set; }
|
||||||
}
|
}
|
||||||
|
|||||||
@ -17,6 +17,11 @@ public class TrackContentVO
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public string TrackStatus { get; set; } = null!;
|
public string TrackStatus { get; set; } = null!;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 轨迹内容Id
|
||||||
|
/// </summary>
|
||||||
|
public int TrackContentId { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 轨迹内容
|
/// 轨迹内容
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|||||||
@ -8,17 +8,17 @@ namespace SJZY.Track.Domain.Enums;
|
|||||||
public enum TrackSourceEnum
|
public enum TrackSourceEnum
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 外部服务商创建
|
/// 外部服务商
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[Description("外部服务商创建")] ExternalServiceProvide = 1,
|
[Description("外部服务商")] ExternalServiceProvide = 1,
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 内部系统创建
|
/// 内部系统
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[Description("内部系统创建")] InternalService = 2,
|
[Description("内部系统")] InternalService = 2,
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 人工创建
|
/// 人工
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[Description("人工创建")] Artificial = 3,
|
[Description("人工")] Artificial = 3,
|
||||||
}
|
}
|
||||||
|
|||||||
@ -261,6 +261,7 @@ public class TrackContentRepository : BasicRepository<TrackContentEntity>, ITrac
|
|||||||
TrackStatusId = x.TrackStatusId,
|
TrackStatusId = x.TrackStatusId,
|
||||||
TrackStatus = y.Status,
|
TrackStatus = y.Status,
|
||||||
TrackStatusCode = y.Code,
|
TrackStatusCode = y.Code,
|
||||||
|
TrackContentId = x.Id,
|
||||||
TrackContent = x.Content,
|
TrackContent = x.Content,
|
||||||
TrackContentCode = x.Code,
|
TrackContentCode = x.Code,
|
||||||
TrackEnContent = x.EnContent,
|
TrackEnContent = x.EnContent,
|
||||||
|
|||||||
@ -173,7 +173,8 @@ public class TrackDetailsEsRepository : ElasticSearchContextAbstract<TrackDetail
|
|||||||
track.TrackPlaceNationId,
|
track.TrackPlaceNationId,
|
||||||
track.TrackPlacePostcode,
|
track.TrackPlacePostcode,
|
||||||
track.DestinationTimeZone,
|
track.DestinationTimeZone,
|
||||||
track.EstimatedDeliveryDate
|
track.EstimatedDeliveryDate,
|
||||||
|
track.Extra
|
||||||
})
|
})
|
||||||
);
|
);
|
||||||
|
|
||||||
@ -218,7 +219,7 @@ public class TrackDetailsEsRepository : ElasticSearchContextAbstract<TrackDetail
|
|||||||
ctx._source.trackPlacePostcode = params.trackPlacePostcode;
|
ctx._source.trackPlacePostcode = params.trackPlacePostcode;
|
||||||
ctx._source.destinationTimeZone = params.destinationTimeZone;
|
ctx._source.destinationTimeZone = params.destinationTimeZone;
|
||||||
ctx._source.estimatedDeliveryDate = params.estimatedDeliveryDate;
|
ctx._source.estimatedDeliveryDate = params.estimatedDeliveryDate;
|
||||||
|
ctx._source.extra = params.extra;
|
||||||
")
|
")
|
||||||
.Params(p => p
|
.Params(p => p
|
||||||
.Add("trackPlace", track.TrackPlace)
|
.Add("trackPlace", track.TrackPlace)
|
||||||
@ -241,6 +242,7 @@ public class TrackDetailsEsRepository : ElasticSearchContextAbstract<TrackDetail
|
|||||||
.Add("trackPlacePostcode", track.TrackPlacePostcode)
|
.Add("trackPlacePostcode", track.TrackPlacePostcode)
|
||||||
.Add("destinationTimeZone", track.DestinationTimeZone)
|
.Add("destinationTimeZone", track.DestinationTimeZone)
|
||||||
.Add("estimatedDeliveryDate", track.EstimatedDeliveryDate)
|
.Add("estimatedDeliveryDate", track.EstimatedDeliveryDate)
|
||||||
|
.Add("extra", track.Extra)
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
@ -294,6 +296,7 @@ public class TrackDetailsEsRepository : ElasticSearchContextAbstract<TrackDetail
|
|||||||
ctx._source.trackPlacePostcode = params.trackPlacePostcode;
|
ctx._source.trackPlacePostcode = params.trackPlacePostcode;
|
||||||
ctx._source.destinationTimeZone = params.destinationTimeZone;
|
ctx._source.destinationTimeZone = params.destinationTimeZone;
|
||||||
ctx._source.estimatedDeliveryDate = params.estimatedDeliveryDate;
|
ctx._source.estimatedDeliveryDate = params.estimatedDeliveryDate;
|
||||||
|
ctx._source.extra = params.extra;
|
||||||
").Params(p => p
|
").Params(p => p
|
||||||
.Add("trackPlace", track.TrackPlace)
|
.Add("trackPlace", track.TrackPlace)
|
||||||
.Add("trackTime", track.TrackTime)
|
.Add("trackTime", track.TrackTime)
|
||||||
@ -314,8 +317,9 @@ public class TrackDetailsEsRepository : ElasticSearchContextAbstract<TrackDetail
|
|||||||
.Add("trackPlaceNationId", track.TrackPlaceNationId)
|
.Add("trackPlaceNationId", track.TrackPlaceNationId)
|
||||||
.Add("trackPlacePostcode", track.TrackPlacePostcode)
|
.Add("trackPlacePostcode", track.TrackPlacePostcode)
|
||||||
.Add("destinationTimeZone", track.DestinationTimeZone)
|
.Add("destinationTimeZone", track.DestinationTimeZone)
|
||||||
.Add("estimatedDeliveryDate", track.EstimatedDeliveryDate))
|
.Add("estimatedDeliveryDate", track.EstimatedDeliveryDate)
|
||||||
));
|
.Add("extra", track.Extra)
|
||||||
|
)));
|
||||||
|
|
||||||
var retryCount = 0;
|
var retryCount = 0;
|
||||||
var updateSuccessful = false;
|
var updateSuccessful = false;
|
||||||
|
|||||||
@ -8,9 +8,9 @@
|
|||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<PackageReference Include="SJZY.LoggerCenter.HttpApi" Version="7.0.5" />
|
<PackageReference Include="SJZY.LoggerCenter.HttpApi" Version="7.0.5" />
|
||||||
<PackageReference Include="SJZY.OTel.Extension" Version="1.0.6"/>
|
<PackageReference Include="SJZY.OTel.Extension" Version="1.1.3" />
|
||||||
<PackageReference Include="Volo.Abp.Autofac" Version="7.0.2" />
|
<PackageReference Include="Volo.Abp.Autofac" Version="7.0.2" />
|
||||||
<PackageReference Include="SJZY.UserCenter.HttpApi" Version="3.0.9-alpha9"/>
|
<PackageReference Include="SJZY.UserCenter.HttpApi" Version="3.1.8.17-alpha" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user