Merge pull request 'S01-轨迹中台' (#4) from S01-轨迹中台 into dev

Reviewed-on: http://192.168.80.50:3000/Dotnet/SJZY.Track.Api/pulls/4
This commit is contained in:
liuwenxiang 2024-03-01 15:27:47 +08:00
commit 5effee08e4
33 changed files with 102 additions and 79 deletions

View File

@ -10,7 +10,7 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{DAC93270-5A2
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "test", "test", "{0E2537C3-6EF3-4085-9BD2-CF923E53F82A}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SJZY.Track.Infrastructure", "src\SJZY.Track.Infrastructure\SJZY.Track.Infrastructure.csproj", "{D9CF5706-1972-414F-821E-AA32C13B8570}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SJZY.Track.Repository", "src\SJZY.Track.Repository\SJZY.Track.Repository.csproj", "{D9CF5706-1972-414F-821E-AA32C13B8570}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SJZY.Track.Application.Contract", "src\SJZY.Track.Application.Contract\SJZY.Track.Application.Contract.csproj", "{390A44FB-0DB5-4B66-86AB-7712DC3030F5}"
EndProject

View File

@ -1,6 +1,6 @@
<Project Sdk="Microsoft.NET.Sdk.Web">
<Import Project="../../common.props"/>
<Import Project="../../common.props" />
<PropertyGroup>
<TargetFramework>net7.0</TargetFramework>
@ -10,16 +10,16 @@
</PropertyGroup>
<ItemGroup>
<PackageReference Include="FluentValidation.AspNetCore" Version="11.2.2"/>
<PackageReference Include="Microsoft.AspNetCore.Mvc.NewtonsoftJson" Version="7.0.2"/>
<PackageReference Include="Microsoft.VisualStudio.Azure.Containers.Tools.Targets" Version="1.17.0"/>
<PackageReference Include="Swashbuckle.AspNetCore" Version="6.5.0"/>
<PackageReference Include="Volo.Abp.Autofac" Version="7.0.2"/>
<PackageReference Include="FluentValidation.AspNetCore" Version="11.2.2" />
<PackageReference Include="Microsoft.AspNetCore.Mvc.NewtonsoftJson" Version="7.0.2" />
<PackageReference Include="Microsoft.VisualStudio.Azure.Containers.Tools.Targets" Version="1.17.0" />
<PackageReference Include="Swashbuckle.AspNetCore" Version="6.5.0" />
<PackageReference Include="Volo.Abp.Autofac" Version="7.0.2" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\SJZY.Track.Application\SJZY.Track.Application.csproj"/>
<ProjectReference Include="..\SJZY.Track.Infrastructure\SJZY.Track.Infrastructure.csproj"/>
<ProjectReference Include="..\SJZY.Track.Application\SJZY.Track.Application.csproj" />
<ProjectReference Include="..\SJZY.Track.Repository\SJZY.Track.Repository.csproj" />
</ItemGroup>

View File

@ -9,7 +9,7 @@ using SJZY.Expand.ABP.Core.Prometheus;
using SJZY.Expand.ABP.Core.Redis;
using SJZY.Expand.ABP.Core.Swagger;
using SJZY.Track.Application;
using SJZY.Track.Infrastructure;
using SJZY.Track.Repository;
using Volo.Abp;
using Volo.Abp.AspNetCore.Mvc;
using Volo.Abp.AspNetCore.Serilog;
@ -28,7 +28,7 @@ namespace SJZY.Track.Api
typeof(AbpAspNetCoreMvcModule),
typeof(AbpAspNetCoreSerilogModule),
typeof(SjzyTrackApplicationModule),
typeof(SjzyTrackInfrastructureModule)
typeof(SjzyTrackRepositoryModule)
)]
public class SjzyTrackApiModule : AbpModule
{

View File

@ -0,0 +1,6 @@
namespace SJZY.Track.Application.Contract.Events;
public class TrackUpsertEvent
{
public int OrderId { get; set; }
}

View File

@ -1,6 +1,8 @@
using SJZY.Track.Application.Contract.Dtos.ProvideServices;
using SJZY.Track.Domain.Aggregates.OrderAggregate;
using SJZY.Track.Domain.Aggregates.TrackDetailsAggregate;
using SJZY.Track.Domain.Dtos.Order;
using Volo.Abp.ObjectMapping;
namespace SJZY.Track.Application.Services.ProvideServices;
@ -11,10 +13,14 @@ namespace SJZY.Track.Application.Services.ProvideServices;
public class OrderService : ApplicationService
{
private readonly IOrderRepository _orderRepository;
private readonly ITrackDetailsRepository _trackDetailsRepository;
public OrderService(IOrderRepository orderRepository)
public OrderService(IOrderRepository orderRepository,
ITrackDetailsRepository trackDetailsRepository
)
{
_orderRepository = orderRepository;
this._trackDetailsRepository=trackDetailsRepository;
}
/// <summary>
@ -75,7 +81,14 @@ public class OrderService : ApplicationService
[HttpPost("/Order/GetDetails")]
public async Task<List<TrackOrderDetailDto>> GetOrderDetails(GetOrderDetailsInput input)
{
return null;
var trackDetails = await _trackDetailsRepository.GetListAsync(input.OrderId);
if (!trackDetails.IsNullOrEmpty())
{
var list = ObjectMapper.Map<List<TrackDetailsIndex>, List<TrackOrderDetailDto>>(trackDetails);
return list;
}
return new List<TrackOrderDetailDto>();
}
#endregion

View File

@ -81,7 +81,12 @@ public class TrackService : ApplicationService
}
// 根据订单关联关系向下刷,不同子系统还需要做内容映射
var links = await _orderRepository.GetLinkedOrderIdsAsync(orderId);
var linkedOrderIds = await _orderRepository.GetLinkedOrderIdsAsync(orderId);
if (linkedOrderIds.Count > 0)
{
await _capPublisher.PublishAsync(TrackCustomer.CapSubscribe, new TrackUpsertEvent { });
}
// 推送
return true;

View File

@ -1,8 +0,0 @@
using SJZY.Track.Infrastructure.TrackPushRecord.Entitys;
namespace SJZY.Track.Infrastructure.TrackPushRecord.Services
{
public interface ITrackPushRecordRepository : ISimpleClient<TrackPushRecordEntity>
{
}
}

View File

@ -1,10 +0,0 @@
using SJZY.Track.Infrastructure.Repositories;
using SJZY.Track.Infrastructure.TrackPushRecord.Entitys;
namespace SJZY.Track.Infrastructure.TrackPushRecord.Services
{
public class TrackPushRecordRepository : BasicRepository<TrackPushRecordEntity>, ITrackPushRecordRepository, IScopedDependency
{
}
}

View File

@ -1,8 +0,0 @@
using SJZY.Track.Infrastructure.TrackPushRecordDetails.Entitys;
namespace SJZY.Track.Infrastructure.TrackPushRecordDetails.Services
{
public interface ITrackPushRecordDetailsRepository : ISimpleClient<TrackPushRecordDetailsEntity>
{
}
}

View File

@ -1,10 +0,0 @@
using SJZY.Track.Infrastructure.Repositories;
using SJZY.Track.Infrastructure.TrackPushRecordDetails.Entitys;
namespace SJZY.Track.Infrastructure.TrackPushRecordDetails.Services
{
public class TrackPushRecordDetailsRepository : BasicRepository<TrackPushRecordDetailsEntity>, ITrackPushRecordDetailsRepository, IScopedDependency
{
}
}

View File

@ -2,7 +2,7 @@
#pragma warning disable 1591
namespace SJZY.Track.Infrastructure;
namespace SJZY.Track.Repository;
/// <summary>
/// Sqlsugar 上下文对象

View File

@ -2,7 +2,7 @@
using SJZY.Track.Domain.Queries;
using SJZY.Track.Domain.SeedWork;
namespace SJZY.Track.Infrastructure.Queries;
namespace SJZY.Track.Repository.Queries;
#pragma warning disable CS8613
public class BasicQuery<T> : SimpleClient<T>, IBasicQuery<T> where T : class, IEntity, new()

View File

@ -7,7 +7,7 @@ using SJZY.Track.Domain.Dtos.TrackDetails;
using SJZY.Track.Domain.Dtos.TrackTemplate;
using SJZY.Track.Domain.Queries;
namespace SJZY.Track.Infrastructure.Queries;
namespace SJZY.Track.Repository.Queries;
public class TrackQueries : ISugarRepository, ITrackQueries,
ITransientDependency

View File

@ -1,10 +1,10 @@
using System.Linq.Expressions;
using SJZY.Track.Domain;
using SJZY.Track.Domain.SeedWork;
using SJZY.Track.Infrastructure.Queries;
using SJZY.Track.Repository.Queries;
using Volo.Abp;
namespace SJZY.Track.Infrastructure.Repositories;
namespace SJZY.Track.Repository.Repositories;
/// <summary>
/// 仓储基类实现

View File

@ -2,7 +2,7 @@
using SJZY.Track.Domain.Aggregates.DemoAggregate;
using SJZY.Track.Domain.Dtos.Demo;
namespace SJZY.Track.Infrastructure.Repositories;
namespace SJZY.Track.Repository.Repositories;
public class DemoRepository : BasicRepository<DemoEntity>, IDemoRepository, IScopedDependency
{

View File

@ -5,7 +5,7 @@ using SJZY.Track.Domain.Dtos.Order;
using SJZY.Track.Domain.VEntities;
using SJZY.Track.Repository.VData.Entitys;
namespace SJZY.Track.Infrastructure.Repositories;
namespace SJZY.Track.Repository.Repositories;
public class OrderRepository : BasicRepository<OrderEntity>, IOrderRepository, ITransientDependency
{

View File

@ -4,7 +4,7 @@ using SJZY.Track.Domain.Aggregates.TrackStatusAggregate;
using SJZY.Track.Domain.Dtos.TrackContents;
using SJZY.Track.Domain.VEntities;
namespace SJZY.Track.Infrastructure.Repositories;
namespace SJZY.Track.Repository.Repositories;
public class TrackContentRepository : BasicRepository<TrackContentEntity>, ITrackContentRepository, IScopedDependency
{

View File

@ -3,7 +3,7 @@ using SJZY.Expand.ElasticSearch.Services;
using SJZY.Track.Domain.Aggregates.TrackDetailsAggregate;
using SJZY.Track.Domain.Dtos.TrackDetails;
namespace SJZY.Track.Infrastructure.Repositories;
namespace SJZY.Track.Repository.Repositories;
internal class TrackDetailsRepository : ElasticSearchContextAbstract<TrackDetailsIndex>, ITrackDetailsRepository,
ITransientDependency

View File

@ -2,7 +2,7 @@
using SJZY.Track.Domain.Dtos.TrackFlags;
using SJZY.Track.Domain.VEntities;
namespace SJZY.Track.Infrastructure.Repositories;
namespace SJZY.Track.Repository.Repositories;
public class TrackFlagRepository : BasicRepository<TrackFlagEntity>, ITrackFlagRepository, IScopedDependency
{

View File

@ -6,7 +6,7 @@ using SJZY.Track.Domain.Dtos.Common;
using SJZY.Track.Domain.Dtos.TrackPull;
using SJZY.Track.Domain.VEntities;
namespace SJZY.Track.Infrastructure.Repositories;
namespace SJZY.Track.Repository.Repositories;
public class TrackPullConfigRepository : BasicRepository<TrackPullConfigEntity>, ITrackPullConfigRepository,
IScopedDependency

View File

@ -7,7 +7,7 @@ using SJZY.Track.Domain.Dtos.TrackPush;
using SJZY.Track.Domain.VEntities;
using SJZY.Track.Repository.VData.Entitys;
namespace SJZY.Track.Infrastructure.Repositories;
namespace SJZY.Track.Repository.Repositories;
public class TrackPushConfigRepository : BasicRepository<TrackPushConfigEntity>, ITrackPushConfigRepository,
IScopedDependency

View File

@ -2,7 +2,7 @@ using SJZY.Track.Domain.Aggregates.TrackStatusAggregate;
using SJZY.Track.Domain.Dtos.TrackStatus;
using SJZY.Track.Domain.VEntities;
namespace SJZY.Track.Infrastructure.Repositories;
namespace SJZY.Track.Repository.Repositories;
public class TrackStatusRepository : BasicRepository<TrackStatusEntity>, ITrackStatusRepository, IScopedDependency
{

View File

@ -8,7 +8,7 @@ using SJZY.Track.Domain.Dtos.TrackTemplate;
using SJZY.Track.Domain.Enums;
using SJZY.Track.Domain.VEntities;
namespace SJZY.Track.Infrastructure.Repositories;
namespace SJZY.Track.Repository.Repositories;
public class TrackTemplateRepository : BasicRepository<TrackTemplateEntity>, ITrackTemplateRepository, IScopedDependency
{

View File

@ -1,21 +1,20 @@
<Project Sdk="Microsoft.NET.Sdk">
<Import Project="../../common.props"/>
<Import Project="../../common.props" />
<PropertyGroup>
<TargetFramework>net7.0</TargetFramework>
<GenerateDocumentationFile>True</GenerateDocumentationFile>
<LangVersion>preview</LangVersion>
<AssemblyName>SJZY.Track.Repository</AssemblyName>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="SJZY.LoggerCenter.HttpApi" Version="7.0.5"/>
<PackageReference Include="Volo.Abp.Autofac" Version="7.0.2"/>
<PackageReference Include="SJZY.UserCenter.HttpApi" Version="3.0.3-alpha8"/>
<PackageReference Include="SJZY.Expand.CAP" Version="7.8.0"/>
<PackageReference Include="SJZY.LoggerCenter.HttpApi" Version="7.0.5" />
<PackageReference Include="Volo.Abp.Autofac" Version="7.0.2" />
<PackageReference Include="SJZY.UserCenter.HttpApi" Version="3.0.3-alpha8" />
<PackageReference Include="SJZY.Expand.CAP" Version="7.8.0" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\SJZY.Track.Domain\SJZY.Track.Domain.csproj"/>
<ProjectReference Include="..\SJZY.Track.Domain\SJZY.Track.Domain.csproj" />
</ItemGroup>
</Project>

View File

@ -4,19 +4,19 @@ using SJZY.Expand.ABP.Core.SqlSugar.Options;
using SJZY.Expand.ElasticSearch;
using SJZY.Track.Domain;
using SJZY.Track.Domain.Queries;
using SJZY.Track.Infrastructure.Queries;
using SJZY.Track.Infrastructure.Repositories;
using SJZY.Track.Repository.Queries;
using SJZY.Track.Repository.Repositories;
using Volo.Abp.Autofac;
using Volo.Abp.Modularity;
namespace SJZY.Track.Infrastructure;
namespace SJZY.Track.Repository;
/// <summary>
/// 仓储模块
/// </summary>
[DependsOn(typeof(AbpAutofacModule))]
[DependsOn(typeof(SjzyTrackDomainModule))]
public class SjzyTrackInfrastructureModule : AbpModule
public class SjzyTrackRepositoryModule : AbpModule
{
public override void PreConfigureServices(ServiceConfigurationContext context)
{

View File

@ -1,6 +1,6 @@
using SJZY.Track.Domain.SeedWork;
namespace SJZY.Track.Infrastructure.TrackPushRecord.Entitys
namespace SJZY.Track.Repository.TrackPushRecord.Entitys
{
/// <summary>
/// 轨迹推送记录

View File

@ -0,0 +1,8 @@
using SJZY.Track.Repository.TrackPushRecord.Entitys;
namespace SJZY.Track.Repository.TrackPushRecord.Services
{
public interface ITrackPushRecordRepository : ISimpleClient<TrackPushRecordEntity>
{
}
}

View File

@ -0,0 +1,10 @@
using SJZY.Track.Repository.Repositories;
using SJZY.Track.Repository.TrackPushRecord.Entitys;
namespace SJZY.Track.Repository.TrackPushRecord.Services
{
public class TrackPushRecordRepository : BasicRepository<TrackPushRecordEntity>, ITrackPushRecordRepository, IScopedDependency
{
}
}

View File

@ -1,6 +1,6 @@
using SJZY.Track.Domain.SeedWork;
namespace SJZY.Track.Infrastructure.TrackPushRecordDetails.Entitys
namespace SJZY.Track.Repository.TrackPushRecordDetails.Entitys
{
/// <summary>
/// 轨迹推送明细表

View File

@ -0,0 +1,8 @@
using SJZY.Track.Repository.TrackPushRecordDetails.Entitys;
namespace SJZY.Track.Repository.TrackPushRecordDetails.Services
{
public interface ITrackPushRecordDetailsRepository : ISimpleClient<TrackPushRecordDetailsEntity>
{
}
}

View File

@ -0,0 +1,10 @@
using SJZY.Track.Repository.Repositories;
using SJZY.Track.Repository.TrackPushRecordDetails.Entitys;
namespace SJZY.Track.Repository.TrackPushRecordDetails.Services
{
public class TrackPushRecordDetailsRepository : BasicRepository<TrackPushRecordDetailsEntity>, ITrackPushRecordDetailsRepository, IScopedDependency
{
}
}

View File

@ -2,7 +2,7 @@
using Microsoft.Extensions.DependencyInjection;
using SJZY.Track.Api;
using SJZY.Track.Application;
using SJZY.Track.Infrastructure;
using SJZY.Track.Repository;
using Volo.Abp;
using Volo.Abp.AspNetCore.TestBase;
using Volo.Abp.Authorization;
@ -20,7 +20,7 @@ namespace SJZY.Track.Test;
typeof(AbpAspNetCoreTestBaseModule),
typeof(AbpAutofacModule),
typeof(AbpAuthorizationModule),
typeof(SjzyTrackInfrastructureModule),
typeof(SjzyTrackRepositoryModule),
typeof(SjzyTrackApplicationModule),
typeof(SjzyTrackApiModule),
typeof(AbpHttpClientModule) //添加abp的http代理模块