From 1f8a0d2f9354180b3ba9ccd88810a093d8d90bc9 Mon Sep 17 00:00:00 2001
From: xiaolipro <2357729423@qq.com>
Date: Wed, 4 Sep 2024 17:27:43 +0800
Subject: [PATCH] =?UTF-8?q?=E3=80=90=20=20=20=201.=20=E8=BD=A8=E8=BF=B9?=
=?UTF-8?q?=E6=8B=89=E5=8F=96=E5=86=85=E5=AE=B9=E9=A1=B5=E9=9D=A2=EF=BC=9A?=
=?UTF-8?q?=E6=96=B0=E5=A2=9E=E5=92=8C=E7=BC=96=E8=BE=91=E5=BC=B9=E7=AA=97?=
=?UTF-8?q?=E9=A1=B5=E9=9D=A2=E5=8E=BB=E9=99=A4=E6=98=AF=E5=90=A6=E5=AE=8C?=
=?UTF-8?q?=E7=BB=93=E7=9A=84=E5=AD=97=E6=AE=B5=E3=80=91=20https://www.tap?=
=?UTF-8?q?d.cn/60863849/prong/tasks/view/1160863849001027884?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../TrackPull/EditTrackPullConfigInput.cs | 88 ++++++++---------
.../TrackPull/TrackPullContentConfigDto.cs | 20 +---
.../TrackPullParamWithContentConfigDto.cs | 2 +-
.../Services/ITrackPullCacheService.cs | 6 +-
.../AutoMapper/TrackPullAutoMapperProfile.cs | 3 -
.../AutoMapper/TrackPushAutoMapperProfile.cs | 4 -
...TrackChangeAfterUpdateOrderEventHandler.cs | 2 +-
.../Rabbit/TrackRefreshEventHandler.cs | 28 ++----
.../TrackPull/TrackPullCacheService.cs | 20 ++--
.../Services/TrackPull/TrackPullService.cs | 30 +-----
.../ITrackPullConfigRepository.cs | 9 --
.../TrackPullConfigEntity.cs | 78 ++++++++++++---
.../TrackPullContentConfigEntity.cs | 60 +++++-------
.../TrackPushPullParamsConfigEntity.cs | 98 -------------------
.../TrackStatusAggregate/TrackStatusEntity.cs | 7 ++
.../GetTrackPullConfigDetailOutputVO.cs | 5 -
.../GetTrackPullContentListCacheVO.cs | 34 ++-----
.../Repositories/TrackPullConfigRepository.cs | 36 ++-----
18 files changed, 189 insertions(+), 341 deletions(-)
delete mode 100644 src/SJZY.Track.Domain/Aggregates/TrackPullAggregate/TrackPushPullParamsConfigEntity.cs
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)
{