diff --git a/src/SJZY.Track.Application.Contract/Dtos/TrackPull/EditTrackPullConfigInput.cs b/src/SJZY.Track.Application.Contract/Dtos/TrackPull/EditTrackPullConfigInput.cs index 46f551d1..d2fc3441 100644 --- a/src/SJZY.Track.Application.Contract/Dtos/TrackPull/EditTrackPullConfigInput.cs +++ b/src/SJZY.Track.Application.Contract/Dtos/TrackPull/EditTrackPullConfigInput.cs @@ -2,32 +2,12 @@ namespace SJZY.Track.Application.Contract.Dtos.TrackPull; public class EditTrackPullConfigInput { - public int? Id { get; set; } - /// /// 操作类型 /// public OptionTypeNoNull Options { get; set; } - /// - /// 拉取轨迹订单号 - /// - public string? OrderNoName { get; set; } - - /// - /// 返参解析对象 - /// - public int? ParseMethod { get; set; } - - /// - /// 定时任务(分钟) - /// - public int? PullInterval { get; set; } - - /// - /// 服务商id - /// - public int? ServiceProviderId { get; set; } + public int? Id { get; set; } /// /// 子系统id @@ -35,46 +15,62 @@ public class EditTrackPullConfigInput public int? SubSystemId { get; set; } /// - /// 拉取轨迹时区 + /// 服务商id /// - public string? TrackTimeZoneName { get; set; } + public int? ServiceProviderId { get; set; } /// - /// 拉取轨迹内容代码 + /// 服务商拉取频率(分钟) /// - public string? TrackContentCodeName { get; set; } + public int PullInterval { get; set; } /// - /// 拉取轨迹内容 + /// 解析方式,1取接口通返参映射后的,2取服务商原返参 /// - public string? TrackContentName { get; set; } - - /// - /// 拉取轨迹发生地 - /// - public string? TrackPlaceName { get; set; } - - /// - /// 拉取轨迹状态 - /// - public string? TrackStatusName { get; set; } - - /// - /// 拉取轨迹发生时间 - /// - public string? TrackTimeName { get; set; } + public int ParseMethod { get; set; } /// /// 订单路径 /// - public string? OrderPath { get; set; } + public string OrderPath { get; set; } = null!; /// + /// 单号参数名 /// - public string? TrackDetailsPath { get; set; } + public string OrderNoName { get; set; } = null!; /// - /// 轨迹内容code + /// 轨迹明细路径 /// - public string? TrackContentCode { get; set; } + public string TrackDetailsPath { get; set; } = null!; + + /// + /// 轨迹状态参数名 + /// + public string? TrackStatusName { get; set; } + + /// + /// 轨迹代码参数名 + /// + public string? TrackContentCodeName { get; set; } + + /// + /// 轨迹内容参数名 + /// + public string? TrackContentName { get; set; } + + /// + /// 轨迹发生地参数名 + /// + public string? TrackPlaceName { get; set; } + + /// + /// 轨迹发生时间参数名 + /// + public string? TrackTimeName { get; set; } + + /// + /// 轨迹时区参数名 + /// + public string? TrackTimeZoneName { get; set; } } diff --git a/src/SJZY.Track.Application.Contract/Dtos/TrackPull/TrackPullContentConfigDto.cs b/src/SJZY.Track.Application.Contract/Dtos/TrackPull/TrackPullContentConfigDto.cs index 63cad472..23b35664 100644 --- a/src/SJZY.Track.Application.Contract/Dtos/TrackPull/TrackPullContentConfigDto.cs +++ b/src/SJZY.Track.Application.Contract/Dtos/TrackPull/TrackPullContentConfigDto.cs @@ -7,21 +7,16 @@ public class TrackPullContentConfigDto /// public string TrackContentCode { get; set; } = null!; + /// + /// 是否完结 + /// + public bool IsCompleted { get; set; } + /// /// 服务商轨迹状态参数值 /// public string? TrackStatusValue { get; set; } - /// - /// 服务商轨迹代码参数值 - /// - public string? TrackContentCodeValue { get; set; } - - /// - /// 服务商轨迹内容参数值 - /// - public string? TrackContentValue { get; set; } - /// /// 轨迹关键词(正向),多个逗分隔 /// @@ -37,11 +32,6 @@ public class TrackPullContentConfigDto /// public int? TrackPlaceValue { get; set; } - /// - /// 订单是否完成(由轨迹刷新配置决定) - /// - public bool IsCompleted { get; set; } - /// /// 轨迹时区发生地参数值 /// diff --git a/src/SJZY.Track.Application.Contract/Dtos/TrackPull/TrackPullParamWithContentConfigDto.cs b/src/SJZY.Track.Application.Contract/Dtos/TrackPull/TrackPullParamWithContentConfigDto.cs index 5d4b576d..e105248b 100644 --- a/src/SJZY.Track.Application.Contract/Dtos/TrackPull/TrackPullParamWithContentConfigDto.cs +++ b/src/SJZY.Track.Application.Contract/Dtos/TrackPull/TrackPullParamWithContentConfigDto.cs @@ -1,6 +1,6 @@ namespace SJZY.Track.Application.Contract.Dtos.TrackPull; -public class TrackPullParamWithContentConfigDto +public class TrackPullParamsWithContentDto { public TrackPullParamConfigDto ParamConfig { get; set; } = new(); diff --git a/src/SJZY.Track.Application.Contract/Services/ITrackPullCacheService.cs b/src/SJZY.Track.Application.Contract/Services/ITrackPullCacheService.cs index 59b14a49..d74dea96 100644 --- a/src/SJZY.Track.Application.Contract/Services/ITrackPullCacheService.cs +++ b/src/SJZY.Track.Application.Contract/Services/ITrackPullCacheService.cs @@ -19,8 +19,8 @@ public interface ITrackPullCacheService /// 子系统id /// 服务商id /// - Task - GetPullParamWithContentConfigAsync(int subSystemId, int serviceProviderId); + Task + GetPullParamsWithContentAsync(int subSystemId, int serviceProviderId); /// /// 设置拉取配置缓存 @@ -29,6 +29,6 @@ public interface ITrackPullCacheService /// 子系统id /// 服务商id /// - Task SetPullConfigAsync(int? id = null, int? subSystemId = null, + Task SetPullConfigAsync(int? id = null, int? subSystemId = null, int? serviceProviderId = null); } diff --git a/src/SJZY.Track.Application/AutoMapper/TrackPullAutoMapperProfile.cs b/src/SJZY.Track.Application/AutoMapper/TrackPullAutoMapperProfile.cs index aa08d477..13f7d0f4 100644 --- a/src/SJZY.Track.Application/AutoMapper/TrackPullAutoMapperProfile.cs +++ b/src/SJZY.Track.Application/AutoMapper/TrackPullAutoMapperProfile.cs @@ -2,7 +2,6 @@ using AutoMapper; using SJZY.Track.Application.Contract.Dtos.TrackPull; using SJZY.Track.Domain.Aggregates.TrackPullAggregate; using SJZY.Track.Domain.Dtos.TrackPull; -using Volo.Abp.AutoMapper; namespace SJZY.Track.Application.AutoMapper; @@ -11,8 +10,6 @@ public class TrackPullAutoMapperProfile : Profile public TrackPullAutoMapperProfile() { CreateMap(MemberList.None); - CreateMap(MemberList.None).Ignore(dest => dest.Id) - .ForMember(dest => dest.IsPush, opt => opt.MapFrom(source => false)); CreateMap(MemberList.None) .ForMember(dest => dest.TrackKeyword, opt => opt.MapFrom(src => string.Join(',', src.TrackKeywords))) .ForMember(dest => dest.TrackZonePlaceValue, opt => opt.MapFrom(src => src.TrackTimePlaceValue)) diff --git a/src/SJZY.Track.Application/AutoMapper/TrackPushAutoMapperProfile.cs b/src/SJZY.Track.Application/AutoMapper/TrackPushAutoMapperProfile.cs index 487e6b0d..fe654d77 100644 --- a/src/SJZY.Track.Application/AutoMapper/TrackPushAutoMapperProfile.cs +++ b/src/SJZY.Track.Application/AutoMapper/TrackPushAutoMapperProfile.cs @@ -1,9 +1,7 @@ using AutoMapper; using SJZY.Track.Application.Contract.Dtos.TrackPush; -using SJZY.Track.Domain.Aggregates.TrackPullAggregate; using SJZY.Track.Domain.Aggregates.TrackPushAggregate; using SJZY.Track.Domain.Dtos.TrackPush; -using Volo.Abp.AutoMapper; namespace SJZY.Track.Application.AutoMapper; @@ -16,8 +14,6 @@ public class TrackPushAutoMapperProfile : Profile .ForMember(val => val.DateTimeFormat, opt => opt.MapFrom(src => src.DateTimeFormat)) .ForMember(val => val.TimezoneFormat, opt => opt.MapFrom(src => src.TimezoneFormat)); - CreateMap(MemberList.None).Ignore(dest => dest.Id) - .ForMember(dest => dest.IsPush, opt => opt.MapFrom(source => true)); CreateMap(MemberList.None); CreateMap(MemberList.None); } diff --git a/src/SJZY.Track.Application/CAP/EventHandlers/TrackChangeAfterUpdateOrderEventHandler.cs b/src/SJZY.Track.Application/CAP/EventHandlers/TrackChangeAfterUpdateOrderEventHandler.cs index d38897b3..ac572f91 100644 --- a/src/SJZY.Track.Application/CAP/EventHandlers/TrackChangeAfterUpdateOrderEventHandler.cs +++ b/src/SJZY.Track.Application/CAP/EventHandlers/TrackChangeAfterUpdateOrderEventHandler.cs @@ -62,7 +62,7 @@ public class TrackChangeAfterUpdateOrderEventHandler : ITransientDependency, ICa if (!string.IsNullOrEmpty(@event.TrackCode) && providerDic.TryGetValue(order.Id, out var provider)) { var config = - await _trackPullCacheService.GetPullParamWithContentConfigAsync(provider.SubSystemId, + await _trackPullCacheService.GetPullParamsWithContentAsync(provider.SubSystemId, provider.ServiceProviderId); if (!string.IsNullOrEmpty(config?.ParamConfig.TrackContentCode) && diff --git a/src/SJZY.Track.Application/Rabbit/TrackRefreshEventHandler.cs b/src/SJZY.Track.Application/Rabbit/TrackRefreshEventHandler.cs index 33fa7b39..1849e488 100644 --- a/src/SJZY.Track.Application/Rabbit/TrackRefreshEventHandler.cs +++ b/src/SJZY.Track.Application/Rabbit/TrackRefreshEventHandler.cs @@ -80,7 +80,7 @@ public class TrackRefreshEventHandler : ITransientDependency, IRabbitHandler return; } - var config = await _trackPullCacheService.GetPullParamWithContentConfigAsync(attach.SubSystemId, + var config = await _trackPullCacheService.GetPullParamsWithContentAsync(attach.SubSystemId, attach.ServiceProviderId); if (config == null) { @@ -104,10 +104,10 @@ public class TrackRefreshEventHandler : ITransientDependency, IRabbitHandler } } - private async Task HandleOrderAsync(JToken orderToken, TrackPullParamWithContentConfigDto paramWithContentConfig, + private async Task HandleOrderAsync(JToken orderToken, TrackPullParamsWithContentDto paramsWithContent, TrackRefreshAttach attach) { - var paramConfig = paramWithContentConfig.ParamConfig; + var paramConfig = paramsWithContent.ParamConfig; var orderNo = orderToken[paramConfig.OrderNoName]?.Value(); if (orderNo.IsNullOrWhiteSpace()) return; @@ -139,16 +139,16 @@ public class TrackRefreshEventHandler : ITransientDependency, IRabbitHandler { foreach (var item in trackTokens) { - await HandleTrackAsync(item, paramWithContentConfig, context); + await HandleTrackAsync(item, paramsWithContent, context); } } else if (trackToken is JObject) { - await HandleTrackAsync(trackToken, paramWithContentConfig, context); + await HandleTrackAsync(trackToken, paramsWithContent, context); } } - private async Task HandleTrackAsync(JToken trackToken, TrackPullParamWithContentConfigDto paramWithContentConfig, + private async Task HandleTrackAsync(JToken trackToken, TrackPullParamsWithContentDto paramsWithContent, TrackRefreshContext context) { var originTrackDataHash = StringHelper.GetHash(JsonConvert.SerializeObject(trackToken)); @@ -158,21 +158,14 @@ public class TrackRefreshEventHandler : ITransientDependency, IRabbitHandler return; } - var paramConfig = paramWithContentConfig.ParamConfig; - var contentConfigs = paramWithContentConfig.ContentConfigs; + var paramConfig = paramsWithContent.ParamConfig; + var contentConfigs = paramsWithContent.ContentConfigs; TrackPullContentConfigDto? matchedContentConfig = null; // 1、匹配轨迹代码 - if (!paramConfig.TrackContentCodeName.IsNullOrWhiteSpace()) - { - var trackCode = trackToken[paramConfig.TrackContentCodeName!]?.Value(); - if (!trackCode.IsNullOrWhiteSpace()) - { - matchedContentConfig = contentConfigs.FirstOrDefault(x => x.TrackContentCodeValue == trackCode); - } - } + // 2、匹配轨迹状态 - else if (!paramConfig.TrackStatusName.IsNullOrWhiteSpace()) + if (!paramConfig.TrackStatusName.IsNullOrWhiteSpace()) { var trackStatus = trackToken[paramConfig.TrackStatusName!]?.Value(); if (!trackStatus.IsNullOrWhiteSpace()) @@ -188,7 +181,6 @@ public class TrackRefreshEventHandler : ITransientDependency, IRabbitHandler { Debug.Assert(trackContent != null, nameof(trackContent) + " != null"); // 3.1 按内容直接匹配 - matchedContentConfig = contentConfigs.FirstOrDefault(x => x.TrackContentValue == trackContent); // 3.2 按关键字分析轨迹内容 if (matchedContentConfig is null) diff --git a/src/SJZY.Track.Application/Services/TrackPull/TrackPullCacheService.cs b/src/SJZY.Track.Application/Services/TrackPull/TrackPullCacheService.cs index 48424e0b..8fadc9b6 100644 --- a/src/SJZY.Track.Application/Services/TrackPull/TrackPullCacheService.cs +++ b/src/SJZY.Track.Application/Services/TrackPull/TrackPullCacheService.cs @@ -36,10 +36,10 @@ public class TrackPullCacheService : ApplicationService, ITrackPullCacheService } [NonAction] - public async Task GetPullParamWithContentConfigAsync(int subSystemId, + public async Task GetPullParamsWithContentAsync(int subSystemId, int serviceProviderId) { - var data = await RedisHelper.Client.GetAsync(TrackPullContentKey( + var data = await RedisHelper.Client.GetAsync(TrackPullContentKey( subSystemId, serviceProviderId)); @@ -49,7 +49,7 @@ public class TrackPullCacheService : ApplicationService, ITrackPullCacheService } [NonAction] - public async Task SetPullConfigAsync(int? id = null, int? subSystemId = null, + public async Task SetPullConfigAsync(int? id = null, int? subSystemId = null, int? serviceProviderId = null) { Expression> exp = x => true; @@ -64,13 +64,13 @@ public class TrackPullCacheService : ApplicationService, ITrackPullCacheService var trackPullContentList = await _trackPullConfigRepository.GetContentListCacheAsync(trackPullConfigEntity.Id); if (trackPullContentList.Count == 0) return null; - var data = new TrackPullParamWithContentConfigDto(); - - data.ParamConfig = - ObjectMapper.Map(trackPullConfigDetail); - data.ContentConfigs = - ObjectMapper.Map, List>( - trackPullContentList); + var data = new TrackPullParamsWithContentDto + { + ParamConfig = + ObjectMapper.Map(trackPullConfigDetail), + ContentConfigs = ObjectMapper.Map, List>( + trackPullContentList) + }; await RedisHelper.Client.SetAsync( TrackPullContentKey(trackPullConfigEntity.SubSystemId, trackPullConfigEntity.ServiceProviderId), data); diff --git a/src/SJZY.Track.Application/Services/TrackPull/TrackPullService.cs b/src/SJZY.Track.Application/Services/TrackPull/TrackPullService.cs index 4aeaf469..1909de5a 100644 --- a/src/SJZY.Track.Application/Services/TrackPull/TrackPullService.cs +++ b/src/SJZY.Track.Application/Services/TrackPull/TrackPullService.cs @@ -103,20 +103,8 @@ public class TrackPullService : ApplicationService case OptionTypeNoNull.新增: { var trackPullEntity = ObjectMapper.Map(input); - var trackPullParamsEntity = - ObjectMapper.Map(input); - int id; - - using (var ts = TransactionScopeHelper.Create()) - { - id = await _trackPullConfigRepository.InsertReturnIdentityAsync(trackPullEntity); - - trackPullParamsEntity.PullOrPushConfigId = id; - await _trackPullConfigRepository.InsertParamsAsync(trackPullParamsEntity); - - ts.Complete(); - } + var id = await _trackPullConfigRepository.InsertReturnIdentityAsync(trackPullEntity); await _trackPullCacheService.SetPullConfigAsync(id); } @@ -127,20 +115,9 @@ public class TrackPullService : ApplicationService var oldTrackPullEntity = await _trackPullConfigRepository.GetFirstAsync(x => x.Id == input.Id) ?? throw new BusinessException(message: _stringLocalizer["NotFindData"]); - var oldTrackPullParamsEntity = - await _trackPullConfigRepository.GetParamsSingleAsync(x => - x.PullOrPushConfigId == input.Id && !x.IsPush); - ObjectMapper.Map(input, oldTrackPullEntity); - ObjectMapper.Map(input, oldTrackPullParamsEntity); - using (var ts = TransactionScopeHelper.Create()) - { - await _trackPullConfigRepository.UpdateAsync(oldTrackPullEntity); - await _trackPullConfigRepository.UpdateParamsAsync(oldTrackPullParamsEntity); - - ts.Complete(); - } + await _trackPullConfigRepository.UpdateAsync(oldTrackPullEntity); await _trackPullCacheService.SetPullConfigAsync(input.Id); } @@ -150,8 +127,7 @@ public class TrackPullService : ApplicationService using (var ts = TransactionScopeHelper.Create()) { await _trackPullConfigRepository.SoftDeleteAsync(x => x.Id == input.Id); - await _trackPullConfigRepository.SoftDeleteParamsAsync(x => - x.PullOrPushConfigId == input.Id && !x.IsPush); + await _trackPullConfigRepository.SoftDeleteContentAsync(x => x.TrackPullConfigId == input.Id); await _trackPullCacheService.SetPullConfigAsync(input.Id); diff --git a/src/SJZY.Track.Domain/Aggregates/TrackPullAggregate/ITrackPullConfigRepository.cs b/src/SJZY.Track.Domain/Aggregates/TrackPullAggregate/ITrackPullConfigRepository.cs index 8a9ff4c5..9c722b8a 100644 --- a/src/SJZY.Track.Domain/Aggregates/TrackPullAggregate/ITrackPullConfigRepository.cs +++ b/src/SJZY.Track.Domain/Aggregates/TrackPullAggregate/ITrackPullConfigRepository.cs @@ -40,19 +40,10 @@ public interface ITrackPullConfigRepository : IBasicRepository Task GetContentDetailAsync(int id); - Task InsertParamsAsync(TrackPushPullParamsConfigEntity insertObj); - Task InsertContentAsync(TrackPullContentConfigEntity insertObj); - Task GetParamsSingleAsync( - Expression> whereExpression); - - Task UpdateParamsAsync(TrackPushPullParamsConfigEntity updateObj); - Task SoftDeleteContentAsync(Expression> whereExpression); - Task SoftDeleteParamsAsync(Expression> whereExpression); - Task GetContentByIdAsync(int id); Task UpdateContentAsync(TrackPullContentConfigEntity updateObj); diff --git a/src/SJZY.Track.Domain/Aggregates/TrackPullAggregate/TrackPullConfigEntity.cs b/src/SJZY.Track.Domain/Aggregates/TrackPullAggregate/TrackPullConfigEntity.cs index 8d456fff..269816ca 100644 --- a/src/SJZY.Track.Domain/Aggregates/TrackPullAggregate/TrackPullConfigEntity.cs +++ b/src/SJZY.Track.Domain/Aggregates/TrackPullAggregate/TrackPullConfigEntity.cs @@ -13,16 +13,10 @@ public class TrackPullConfigEntity : IFullAuditedBasicEntitys, IAggregateRoot public int Id { get; set; } /// - /// 解析方式,1取接口通返参映射后的,2取服务商原返参 + /// 子系统id /// - [SugarColumn(ColumnName = "ParseMethod")] - public int ParseMethod { get; set; } - - /// - /// 服务商拉取频率(分钟) - /// - [SugarColumn(ColumnName = "PullInterval")] - public int PullInterval { get; set; } + [SugarColumn(ColumnName = "SubSystemId")] + public int SubSystemId { get; set; } /// /// 服务商id @@ -31,8 +25,68 @@ public class TrackPullConfigEntity : IFullAuditedBasicEntitys, IAggregateRoot public int ServiceProviderId { get; set; } /// - /// 子系统id + /// 服务商拉取频率(分钟) /// - [SugarColumn(ColumnName = "SubSystemId")] - public int SubSystemId { get; set; } + [SugarColumn(ColumnName = "PullInterval")] + public int PullInterval { get; set; } + + /// + /// 解析方式,1取接口通返参映射后的,2取服务商原返参 + /// + [SugarColumn(ColumnName = "ParseMethod")] + public int ParseMethod { get; set; } + + /// + /// 订单路径 + /// + [SugarColumn(ColumnName = "OrderPath")] + public string OrderPath { get; set; } = null!; + + /// + /// 单号参数名 + /// + [SugarColumn(ColumnName = "OrderNoName")] + public string OrderNoName { get; set; } = null!; + + /// + /// 轨迹明细路径 + /// + [SugarColumn(ColumnName = "TrackDetailsPath")] + public string TrackDetailsPath { get; set; } = null!; + + /// + /// 轨迹状态参数名 + /// + [SugarColumn(ColumnName = "TrackStatusName")] + public string? TrackStatusName { get; set; } + + /// + /// 轨迹代码参数名 + /// + [SugarColumn(ColumnName = "TrackContentCodeName")] + public string? TrackContentCodeName { get; set; } + + /// + /// 轨迹内容参数名 + /// + [SugarColumn(ColumnName = "TrackContentName")] + public string? TrackContentName { get; set; } + + /// + /// 轨迹发生地参数名 + /// + [SugarColumn(ColumnName = "TrackPlaceName")] + public string? TrackPlaceName { get; set; } + + /// + /// 轨迹发生时间参数名 + /// + [SugarColumn(ColumnName = "TrackTimeName")] + public string? TrackTimeName { get; set; } + + /// + /// 轨迹时区参数名 + /// + [SugarColumn(ColumnName = "TrackTimeZoneName")] + public string? TrackTimeZoneName { get; set; } } diff --git a/src/SJZY.Track.Domain/Aggregates/TrackPullAggregate/TrackPullContentConfigEntity.cs b/src/SJZY.Track.Domain/Aggregates/TrackPullAggregate/TrackPullContentConfigEntity.cs index 778f7e12..a1f3ba35 100644 --- a/src/SJZY.Track.Domain/Aggregates/TrackPullAggregate/TrackPullContentConfigEntity.cs +++ b/src/SJZY.Track.Domain/Aggregates/TrackPullAggregate/TrackPullContentConfigEntity.cs @@ -13,10 +13,10 @@ public class TrackPullContentConfigEntity : IFullAuditedBasicEntitys, IEntity public int Id { get; set; } /// - /// 服务商轨迹代码参数值 + /// 轨迹拉取配置id /// - [SugarColumn(ColumnName = "TrackContentCodeValue")] - public string? TrackContentCodeValue { get; set; } + [SugarColumn(ColumnName = "TrackPullConfigId")] + public int TrackPullConfigId { get; set; } /// /// 轨迹内容id @@ -24,12 +24,36 @@ public class TrackPullContentConfigEntity : IFullAuditedBasicEntitys, IEntity [SugarColumn(ColumnName = "TrackContentId")] public int TrackContentId { get; set; } + /// + /// 服务商轨迹状态参数值 + /// + [SugarColumn(ColumnName = "TrackStatusValue")] + public string? TrackStatusValue { get; set; } + + /// + /// 服务商轨迹代码参数值 + /// + [SugarColumn(ColumnName = "TrackContentCodeValue")] + public string? TrackContentCodeValue { get; set; } + /// /// 服务商轨迹内容参数值 /// [SugarColumn(ColumnName = "TrackContentValue")] public string? TrackContentValue { get; set; } + /// + /// 轨迹发生地参数值(主数据枚举) + /// + [SugarColumn(ColumnName = "TrackPlaceValue")] + public int? TrackPlaceValue { get; set; } + + /// + /// 轨迹时区GMT + /// + [SugarColumn(ColumnName = "TrackTimeZone")] + public float? TrackTimeZone { get; set; } + /// /// 轨迹关键词(正向),多个逗分隔 /// @@ -42,36 +66,6 @@ public class TrackPullContentConfigEntity : IFullAuditedBasicEntitys, IEntity [SugarColumn(ColumnName = "TrackKeywordReverse")] public string? TrackKeywordReverse { get; set; } - /// - /// 轨迹发生地参数值(主数据枚举) - /// - [SugarColumn(ColumnName = "TrackPlaceValue")] - public int? TrackPlaceValue { get; set; } - - /// - /// 轨迹拉取配置id - /// - [SugarColumn(ColumnName = "TrackPullConfigId")] - public int TrackPullConfigId { get; set; } - - /// - /// 服务商轨迹状态参数值 - /// - [SugarColumn(ColumnName = "TrackStatusValue")] - public string? TrackStatusValue { get; set; } - - /// - /// 轨迹时区GMT - /// - [SugarColumn(ColumnName = "TrackTimeZone")] - public float? TrackTimeZone { get; set; } - - /// - /// 是否完结 - /// - [SugarColumn(ColumnName = "IsCompleted")] - public bool IsCompleted { get; set; } - /// /// 轨迹时区发生地参数值 /// diff --git a/src/SJZY.Track.Domain/Aggregates/TrackPullAggregate/TrackPushPullParamsConfigEntity.cs b/src/SJZY.Track.Domain/Aggregates/TrackPullAggregate/TrackPushPullParamsConfigEntity.cs deleted file mode 100644 index c483b801..00000000 --- a/src/SJZY.Track.Domain/Aggregates/TrackPullAggregate/TrackPushPullParamsConfigEntity.cs +++ /dev/null @@ -1,98 +0,0 @@ -namespace SJZY.Track.Domain.Aggregates.TrackPullAggregate; - -/// -/// 轨迹拉取/推送参数配置 -/// -[SugarTable("t_track_push_pull_params_config")] -public class TrackPushPullParamsConfigEntity : IFullAuditedBasicEntitys, IEntity -{ - /// - /// 自增主键 - /// - [SugarColumn(ColumnName = "Id", IsPrimaryKey = true, IsIdentity = true)] - public int Id { get; set; } - - /// - /// 推拉模式,0拉取,1推送 - /// - [SugarColumn(ColumnName = "IsPush")] - public bool IsPush { get; set; } - - /// - /// 单号参数名 - /// - [SugarColumn(ColumnName = "OrderNoName")] - public string OrderNoName { get; set; } = null!; - - /// - /// 推拉配置id - /// - [SugarColumn(ColumnName = "PullOrPushConfigId")] - public int PullOrPushConfigId { get; set; } - - /// - /// 轨迹时区参数名 - /// - [SugarColumn(ColumnName = "TrackTimeZoneName")] - public string? TrackTimeZoneName { get; set; } - - /// - /// 轨迹代码参数名 - /// - [SugarColumn(ColumnName = "TrackContentCodeName")] - public string? TrackContentCodeName { get; set; } - - /// - /// 轨迹内容参数名 - /// - [SugarColumn(ColumnName = "TrackContentName")] - public string? TrackContentName { get; set; } - - /// - /// 轨迹内容英文参数名 - /// - [SugarColumn(ColumnName = "TrackEnContentName")] - public string? TrackEnContentName { get; set; } - - /// - /// 轨迹发生地参数名 - /// - [SugarColumn(ColumnName = "TrackPlaceName")] - public string? TrackPlaceName { get; set; } - - /// - /// 轨迹状态参数名 - /// - [SugarColumn(ColumnName = "TrackStatusName")] - public string? TrackStatusName { get; set; } - - /// - /// 轨迹发生时间参数名 - /// - [SugarColumn(ColumnName = "TrackTimeName")] - public string? TrackTimeName { get; set; } - - /// - /// 订单路径 - /// - [SugarColumn(ColumnName = "OrderPath")] - public string? OrderPath { get; set; } - - /// - /// 轨迹明细路径 - /// - [SugarColumn(ColumnName = "TrackDetailsPath")] - public string? TrackDetailsPath { get; set; } - - /// - /// 扩展字段参数名 - /// - [SugarColumn(ColumnName = "ExpandFieldsName")] - public string? ExpandFieldsName { get; set; } - - /// - /// 轨迹内容代码 - /// - [SugarColumn(ColumnName = "TrackContentCode")] - public string? TrackContentCode { get; set; } -} diff --git a/src/SJZY.Track.Domain/Aggregates/TrackStatusAggregate/TrackStatusEntity.cs b/src/SJZY.Track.Domain/Aggregates/TrackStatusAggregate/TrackStatusEntity.cs index 67088e76..6e9866df 100644 --- a/src/SJZY.Track.Domain/Aggregates/TrackStatusAggregate/TrackStatusEntity.cs +++ b/src/SJZY.Track.Domain/Aggregates/TrackStatusAggregate/TrackStatusEntity.cs @@ -41,4 +41,11 @@ public class TrackStatusEntity : IFullAuditedBasicEntitys, IAggregateRoot /// [SugarColumn(ColumnName = "EnStatus")] public string EnStatus { get; set; } = null!; + + + /// + /// 是否完结 + /// + [SugarColumn(ColumnName = "IsCompleted")] + public bool IsCompleted { get; set; } } diff --git a/src/SJZY.Track.Domain/Dtos/TrackPull/GetTrackPullConfigDetailOutputVO.cs b/src/SJZY.Track.Domain/Dtos/TrackPull/GetTrackPullConfigDetailOutputVO.cs index 1b45271c..b578a3de 100644 --- a/src/SJZY.Track.Domain/Dtos/TrackPull/GetTrackPullConfigDetailOutputVO.cs +++ b/src/SJZY.Track.Domain/Dtos/TrackPull/GetTrackPullConfigDetailOutputVO.cs @@ -78,9 +78,4 @@ public class GetTrackPullConfigDetailOutputVO /// 轨迹明细路径 /// public string TrackDetailsPath { get; set; } - - /// - /// 轨迹内容代码 - /// - public string? TrackContentCode { get; set; } } diff --git a/src/SJZY.Track.Domain/Dtos/TrackPull/GetTrackPullContentListCacheVO.cs b/src/SJZY.Track.Domain/Dtos/TrackPull/GetTrackPullContentListCacheVO.cs index 05182296..b3a5eb3f 100644 --- a/src/SJZY.Track.Domain/Dtos/TrackPull/GetTrackPullContentListCacheVO.cs +++ b/src/SJZY.Track.Domain/Dtos/TrackPull/GetTrackPullContentListCacheVO.cs @@ -7,21 +7,16 @@ public class GetTrackPullContentListCacheVO /// public string TrackContentCode { get; set; } + /// + /// 是否完成 + /// + public bool IsCompleted { get; set; } + /// /// 服务商轨迹状态参数值 /// public string? TrackStatusValue { get; set; } - /// - /// 服务商轨迹代码参数值 - /// - public string? TrackContentCodeValue { get; set; } - - /// - /// 服务商轨迹内容参数值 - /// - public string? TrackContentValue { get; set; } - /// /// 轨迹关键词(正向),多个逗分隔 /// @@ -33,27 +28,12 @@ public class GetTrackPullContentListCacheVO public string? TrackKeywordReverse { get; set; } /// - /// 轨迹发生地参数值(主数据枚举) + /// 兜底轨迹发生地参数值 /// public int? TrackPlaceValue { get; set; } /// - /// 兜底时区轨迹发生地参数值(TrackLocationValue) - /// - public int? TrackTimePlaceValue { get; set; } - - /// - /// 轨迹时区GMT - /// - public float? TrackTimeZone { get; set; } - - /// - /// 订单是否完成(由轨迹刷新配置决定) - /// - public bool IsCompleted { get; set; } - - /// - /// 轨迹时区发生地参数值 + /// 兜底轨迹时区所属发生地参数值 /// public int? TrackZonePlaceValue { get; set; } } diff --git a/src/SJZY.Track.Repository/Repositories/TrackPullConfigRepository.cs b/src/SJZY.Track.Repository/Repositories/TrackPullConfigRepository.cs index 838c8761..867fa9de 100644 --- a/src/SJZY.Track.Repository/Repositories/TrackPullConfigRepository.cs +++ b/src/SJZY.Track.Repository/Repositories/TrackPullConfigRepository.cs @@ -2,6 +2,7 @@ using System.Linq.Expressions; using SJZY.Expand.ABP.Core.PublicMethords; using SJZY.Track.Domain.Aggregates.TrackContentAggregate; using SJZY.Track.Domain.Aggregates.TrackPullAggregate; +using SJZY.Track.Domain.Aggregates.TrackStatusAggregate; using SJZY.Track.Domain.Dtos.Common; using SJZY.Track.Domain.Dtos.TrackPull; using SJZY.Track.Domain.Enums; @@ -59,12 +60,15 @@ public class TrackPullConfigRepository : BasicRepository, { return await Context.Queryable() .InnerJoin((pullContent, trackContent) => pullContent.TrackContentId == trackContent.Id) + .LeftJoin((pullContent, trackContent, trackStutas) => + trackContent.TrackStatusId == trackStutas.Id) .Where(pullContent => pullContent.TrackPullConfigId == trackPullConfigId) .Select( - (pullContent, trackContent) => + (pullContent, trackContent, trackStutas) => new GetTrackPullContentListCacheVO { - TrackContentCode = trackContent.Code + TrackContentCode = trackContent.Code, + IsCompleted = trackStutas.IsCompleted }, true) .ToListAsync(); } @@ -75,17 +79,14 @@ public class TrackPullConfigRepository : BasicRepository, .LeftJoin((trackPull, system) => trackPull.SubSystemId == system.Id && !system.IsDeleted) .LeftJoin((trackPull, system, service) => trackPull.ServiceProviderId == service.Id && !service.IsDeleted) - .InnerJoin((trackPull, system, service, paramsConfig) => - trackPull.Id == paramsConfig.PullOrPushConfigId && !paramsConfig.IsPush && !paramsConfig.IsDeleted) .Filter(null, true) .Where(trackPull => trackPull.Id == id && !trackPull.IsDeleted) .Select( - (trackPull, system, service, paramsConfig) => new GetTrackPullConfigDetailOutputVO + (trackPull, system, service) => new GetTrackPullConfigDetailOutputVO { Id = trackPull.Id, SubSystem = system.CnName, ServiceProvider = service.Name, - TrackContentCode = paramsConfig.TrackContentCode }, true) .SingleAsync(); } @@ -110,27 +111,12 @@ public class TrackPullConfigRepository : BasicRepository, .SingleAsync(); } - public async Task InsertParamsAsync(TrackPushPullParamsConfigEntity insertObj) - { - return await Context.Insertable(insertObj).ExecuteCommandAsync() > 0; - } public async Task InsertContentAsync(TrackPullContentConfigEntity insertObj) { return await Context.Insertable(insertObj).ExecuteCommandAsync() > 0; } - public async Task GetParamsSingleAsync( - Expression> whereExpression) - { - return await Context.Queryable().SingleAsync(whereExpression); - } - - public async Task UpdateParamsAsync(TrackPushPullParamsConfigEntity updateObj) - { - return await Context.Updateable(updateObj).ExecuteCommandHasChangeAsync(); - } - public async Task SoftDeleteContentAsync(Expression> whereExpression) { return await Context.Updateable() @@ -139,14 +125,6 @@ public class TrackPullConfigRepository : BasicRepository, .ExecuteCommandHasChangeAsync(); } - public async Task SoftDeleteParamsAsync( - Expression> whereExpression) - { - return await Context.Updateable() - .Where(whereExpression) - .SetColumns(nameof(ISoftDeleteBasicEntity.IsDeleted), true) - .ExecuteCommandHasChangeAsync(); - } public async Task GetContentByIdAsync(int id) {