diff --git a/NuGet.Config b/NuGet.Config
index 4f105a84..f1710cc3 100644
--- a/NuGet.Config
+++ b/NuGet.Config
@@ -1,7 +1,8 @@
-
+
+
diff --git a/src/TrackCenter.Api/Dockerfile b/src/TrackCenter.Api/Dockerfile
index 0fe08490..b1352860 100644
--- a/src/TrackCenter.Api/Dockerfile
+++ b/src/TrackCenter.Api/Dockerfile
@@ -1,17 +1,27 @@
-FROM mcr.microsoft.com/dotnet/sdk:8.0.303 AS base
-ARG BUILD_CONFIGURATION=Release
+FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build
WORKDIR /src
-COPY . /src
+
+ARG NUGET_IDESHIP=https://baget.ideship.com/v3/index.json
+
+COPY ["NuGet.Config", "Directory.Build.props", "common.props", "./"]
+RUN sed -i \
+ -e "s|https://baget.ideship.com/v3/index.json|${NUGET_IDESHIP}|g" \
+ -e "s|http://baget.ideship.com/v3/index.json|${NUGET_IDESHIP}|g" \
+ NuGet.Config \
+ && cat NuGet.Config
+
+COPY ["src/TrackCenter.Domain/TrackCenter.Domain.csproj", "src/TrackCenter.Domain/"]
+COPY ["src/TrackCenter.Repository/TrackCenter.Repository.csproj", "src/TrackCenter.Repository/"]
+COPY ["src/TrackCenter.Application/TrackCenter.Application.csproj", "src/TrackCenter.Application/"]
+COPY ["src/TrackCenter.Api/TrackCenter.Api.csproj", "src/TrackCenter.Api/"]
RUN dotnet restore "src/TrackCenter.Api/TrackCenter.Api.csproj"
-WORKDIR "/src/src/TrackCenter.Api"
-RUN dotnet build "TrackCenter.Api.csproj" -c $BUILD_CONFIGURATION -o /app/build
-FROM base AS publish
+COPY . .
+WORKDIR /src/src/TrackCenter.Api
ARG BUILD_CONFIGURATION=Release
-RUN dotnet publish "TrackCenter.Api.csproj" -c $BUILD_CONFIGURATION -o /app/publish /p:UseAppHost=false
+RUN dotnet publish "TrackCenter.Api.csproj" -c $BUILD_CONFIGURATION -o /app/publish /p:UseAppHost=false --no-restore
-# 使用运行时镜像
FROM mcr.microsoft.com/dotnet/aspnet:8.0 AS runtime
WORKDIR /app
-COPY --from=publish /app/publish .
+COPY --from=build /app/publish .
ENTRYPOINT ["dotnet", "TrackCenter.Api.dll"]
diff --git a/src/TrackCenter.Api/TrackCenter.Api.csproj b/src/TrackCenter.Api/TrackCenter.Api.csproj
index 8a522f5e..7022770f 100644
--- a/src/TrackCenter.Api/TrackCenter.Api.csproj
+++ b/src/TrackCenter.Api/TrackCenter.Api.csproj
@@ -5,12 +5,13 @@
net8
Linux
+ true
+ mcr.microsoft.com/dotnet/aspnet:8.0
+ /app
-
-
diff --git a/src/TrackCenter.Api/TrackCenterApiModule.cs b/src/TrackCenter.Api/TrackCenterApiModule.cs
index 12ee236e..a0d3fa73 100644
--- a/src/TrackCenter.Api/TrackCenterApiModule.cs
+++ b/src/TrackCenter.Api/TrackCenterApiModule.cs
@@ -1,6 +1,9 @@
using Fake.AspNetCore;
using Fake.AspNetCore.Auditing;
-using Fake.AspNetCore.Mvc;
+using Fake.AspNetCore.Authentication;
+using Fake.AspNetCore.ExceptionHandling;
+using Fake.AspNetCore;
+using Fake.AspNetCore.Swagger;
using Fake.Autofac;
using Fake.FeiShu;
using Fake.Modularity;
@@ -72,7 +75,8 @@ public class TrackCenterApiModule : FakeModule
});
services.AddFakeSwaggerGen(addSecurity:true)
- .AddFakeAspNetCoreAuditing();
+ .AddFakeAspNetCoreAuditing()
+ .AddFeiShuNotification();
services.AddFluentValidationAutoValidation().AddFluentValidationClientsideAdapters();
diff --git a/src/TrackCenter.Application/AutoMapper/OrderAutoMapperProfile.cs b/src/TrackCenter.Application/AutoMapper/OrderAutoMapperProfile.cs
index 5f41f824..51874245 100644
--- a/src/TrackCenter.Application/AutoMapper/OrderAutoMapperProfile.cs
+++ b/src/TrackCenter.Application/AutoMapper/OrderAutoMapperProfile.cs
@@ -1,5 +1,4 @@
using AutoMapper;
-using Fake.Application.Dtos;
using TrackCenter.Application.Dtos.ProvideServices;
using TrackCenter.Application.Dtos.TrackOrder;
using TrackCenter.Domain.Aggregates.OrderAggregate;
diff --git a/src/TrackCenter.Application/AutoMapper/TrackContentAutoMapperProfile.cs b/src/TrackCenter.Application/AutoMapper/TrackContentAutoMapperProfile.cs
index 86705d98..64c3ef11 100644
--- a/src/TrackCenter.Application/AutoMapper/TrackContentAutoMapperProfile.cs
+++ b/src/TrackCenter.Application/AutoMapper/TrackContentAutoMapperProfile.cs
@@ -1,5 +1,5 @@
using AutoMapper;
-using Fake.Application.Dtos;
+using Fake.Domain.Dtos;
using TrackCenter.Application.Dtos.TrackContents;
using TrackCenter.Domain.Aggregates.TrackContentAggregate;
using TrackCenter.Domain.Aggregates.TrackDetailsAggregate;
diff --git a/src/TrackCenter.Application/AutoMapper/TrackFlagAutoMapperProfile.cs b/src/TrackCenter.Application/AutoMapper/TrackFlagAutoMapperProfile.cs
index e721014e..616490ad 100644
--- a/src/TrackCenter.Application/AutoMapper/TrackFlagAutoMapperProfile.cs
+++ b/src/TrackCenter.Application/AutoMapper/TrackFlagAutoMapperProfile.cs
@@ -1,5 +1,4 @@
using AutoMapper;
-using Fake.Application.Dtos;
using TrackCenter.Application.Dtos.TrackFlags;
using TrackCenter.Domain.Aggregates.TrackFlagAggregate;
using TrackCenter.Domain.Dtos.TrackFlags;
diff --git a/src/TrackCenter.Application/AutoMapper/TrackStatusAutoMapperProfile.cs b/src/TrackCenter.Application/AutoMapper/TrackStatusAutoMapperProfile.cs
index 33bf1025..4eb3954b 100644
--- a/src/TrackCenter.Application/AutoMapper/TrackStatusAutoMapperProfile.cs
+++ b/src/TrackCenter.Application/AutoMapper/TrackStatusAutoMapperProfile.cs
@@ -1,5 +1,4 @@
using AutoMapper;
-using Fake.Application.Dtos;
using TrackCenter.Application.Dtos.TrackStatus;
using TrackCenter.Domain.Aggregates.TrackStatusAggregate;
using TrackCenter.Domain.Dtos.TrackStatus;
diff --git a/src/TrackCenter.Application/GlobalUsings.cs b/src/TrackCenter.Application/GlobalUsings.cs
index 9f0483c4..9a512212 100644
--- a/src/TrackCenter.Application/GlobalUsings.cs
+++ b/src/TrackCenter.Application/GlobalUsings.cs
@@ -1,5 +1,6 @@
global using Fake.Application;
global using Fake.DependencyInjection;
+global using Fake.Domain.Dtos;
global using TrackCenter.Domain.Consts;
global using Microsoft.AspNetCore.Mvc;
global using Microsoft.Extensions.DependencyInjection;
diff --git a/src/TrackCenter.Application/Queries/ProvideQueries.cs b/src/TrackCenter.Application/Queries/ProvideQueries.cs
index 3a101391..1e5226fc 100644
--- a/src/TrackCenter.Application/Queries/ProvideQueries.cs
+++ b/src/TrackCenter.Application/Queries/ProvideQueries.cs
@@ -8,7 +8,6 @@ using TrackCenter.Domain.Aggregates.TrackStatusAggregate;
using TrackCenter.Domain.Dtos.Order;
using TrackCenter.Domain.Dtos.TrackContents;
using TrackCenter.Domain.Dtos.TrackPull;
-using TrackCenter.Domain.VEntities;
using TrackCenter.Repository;
namespace TrackCenter.Application.Queries;
diff --git a/src/TrackCenter.Application/Services/TrackContents/TrackContentService.cs b/src/TrackCenter.Application/Services/TrackContents/TrackContentService.cs
index 8b2d4a33..4be79fe5 100644
--- a/src/TrackCenter.Application/Services/TrackContents/TrackContentService.cs
+++ b/src/TrackCenter.Application/Services/TrackContents/TrackContentService.cs
@@ -1,5 +1,5 @@
using System.Linq.Expressions;
-using Fake.Application.Dtos;
+using Fake.Domain.Dtos;
using TrackCenter.Application.Dtos.ProvideServices;
using TrackCenter.Application.Dtos.TrackContents;
using TrackCenter.Application.Helpers;
diff --git a/src/TrackCenter.Application/Services/TrackFlags/TrackFlagService.cs b/src/TrackCenter.Application/Services/TrackFlags/TrackFlagService.cs
index 24bbc943..10dc0a66 100644
--- a/src/TrackCenter.Application/Services/TrackFlags/TrackFlagService.cs
+++ b/src/TrackCenter.Application/Services/TrackFlags/TrackFlagService.cs
@@ -1,4 +1,4 @@
-using Fake.Application.Dtos;
+using Fake.Domain.Dtos;
using TrackCenter.Application.Dtos.TrackFlags;
using TrackCenter.Domain.Aggregates.TrackContentAggregate;
using TrackCenter.Domain.Aggregates.TrackFlagAggregate;
diff --git a/src/TrackCenter.Application/Services/TrackOrders/TrackOrderService.cs b/src/TrackCenter.Application/Services/TrackOrders/TrackOrderService.cs
index 5bd06152..d1af49fc 100644
--- a/src/TrackCenter.Application/Services/TrackOrders/TrackOrderService.cs
+++ b/src/TrackCenter.Application/Services/TrackOrders/TrackOrderService.cs
@@ -1,5 +1,5 @@
using System.Linq.Expressions;
-using Fake.Application.Dtos;
+using Fake.Domain.Dtos;
using TrackCenter.Application.Dtos.ProvideServices;
using TrackCenter.Application.Dtos.TrackOrder;
using TrackCenter.Application.Helpers;
diff --git a/src/TrackCenter.Application/Services/TrackPull/TrackPullService.cs b/src/TrackCenter.Application/Services/TrackPull/TrackPullService.cs
index 16fb201a..0506cead 100644
--- a/src/TrackCenter.Application/Services/TrackPull/TrackPullService.cs
+++ b/src/TrackCenter.Application/Services/TrackPull/TrackPullService.cs
@@ -1,6 +1,6 @@
using System.ComponentModel;
using System.Linq.Expressions;
-using Fake.Application.Dtos;
+using Fake.Domain.Dtos;
using TrackCenter.Application.Dtos.TrackPull;
using TrackCenter.Domain.Aggregates.TrackPullAggregate;
using TrackCenter.Domain.Dtos.TrackPull;
diff --git a/src/TrackCenter.Application/Services/TrackPush/TrackPushService.cs b/src/TrackCenter.Application/Services/TrackPush/TrackPushService.cs
index fa6dd817..e26c6499 100644
--- a/src/TrackCenter.Application/Services/TrackPush/TrackPushService.cs
+++ b/src/TrackCenter.Application/Services/TrackPush/TrackPushService.cs
@@ -1,5 +1,5 @@
using System.Linq.Expressions;
-using Fake.Application.Dtos;
+using Fake.Domain.Dtos;
using InterfaceForward.Domain.Shared.Helpers;
using TrackCenter.Application.Dtos.TrackPush;
using TrackCenter.Application.Helpers;
diff --git a/src/TrackCenter.Application/Services/TrackStatus/TrackStatusService.cs b/src/TrackCenter.Application/Services/TrackStatus/TrackStatusService.cs
index b492a56f..5fd3d796 100644
--- a/src/TrackCenter.Application/Services/TrackStatus/TrackStatusService.cs
+++ b/src/TrackCenter.Application/Services/TrackStatus/TrackStatusService.cs
@@ -1,4 +1,4 @@
-using Fake.Application.Dtos;
+using Fake.Domain.Dtos;
using TrackCenter.Application.Dtos.TrackStatus;
using TrackCenter.Domain.Aggregates.TrackContentAggregate;
using TrackCenter.Domain.Aggregates.TrackStatusAggregate;
diff --git a/src/TrackCenter.Application/Services/Warning/CompleteWarningService.cs b/src/TrackCenter.Application/Services/Warning/CompleteWarningService.cs
index 9590aa48..673c6214 100644
--- a/src/TrackCenter.Application/Services/Warning/CompleteWarningService.cs
+++ b/src/TrackCenter.Application/Services/Warning/CompleteWarningService.cs
@@ -1,4 +1,4 @@
-using Fake.Application.Dtos;
+using Fake.Domain.Dtos;
using InterfaceForward.Domain.Shared.Helpers;
using TrackCenter.Application.Dtos.Warning;
using TrackCenter.Application.Dtos.Warning.Complete;
diff --git a/src/TrackCenter.Application/Services/Warning/ReturnWarningService.cs b/src/TrackCenter.Application/Services/Warning/ReturnWarningService.cs
index fefae8fc..c144a493 100644
--- a/src/TrackCenter.Application/Services/Warning/ReturnWarningService.cs
+++ b/src/TrackCenter.Application/Services/Warning/ReturnWarningService.cs
@@ -1,5 +1,5 @@
using DotNetCore.CAP;
-using Fake.Application.Dtos;
+using Fake.Domain.Dtos;
using InterfaceForward.Domain.Shared.Helpers;
using TrackCenter.Application.Dtos.Warning;
using TrackCenter.Application.Dtos.Warning.Return;
diff --git a/src/TrackCenter.Application/Services/Warning/TransportWarningService.cs b/src/TrackCenter.Application/Services/Warning/TransportWarningService.cs
index db556d91..95116233 100644
--- a/src/TrackCenter.Application/Services/Warning/TransportWarningService.cs
+++ b/src/TrackCenter.Application/Services/Warning/TransportWarningService.cs
@@ -1,4 +1,4 @@
-using Fake.Application.Dtos;
+using Fake.Domain.Dtos;
using InterfaceForward.Domain.Shared.Helpers;
using TrackCenter.Application.Dtos.Warning;
using TrackCenter.Application.Dtos.Warning.Transport;
diff --git a/src/TrackCenter.Domain/Aggregates/OrderAggregate/IOrderRepository.cs b/src/TrackCenter.Domain/Aggregates/OrderAggregate/IOrderRepository.cs
index 5b1714bf..aed3410c 100644
--- a/src/TrackCenter.Domain/Aggregates/OrderAggregate/IOrderRepository.cs
+++ b/src/TrackCenter.Domain/Aggregates/OrderAggregate/IOrderRepository.cs
@@ -1,4 +1,4 @@
-using Fake.Application.Dtos;
+using Fake.Domain.Dtos;
using TrackCenter.Domain.Dtos.Order;
namespace TrackCenter.Domain.Aggregates.OrderAggregate;
diff --git a/src/TrackCenter.Domain/Aggregates/TrackContentAggregate/ITrackContentRepository.cs b/src/TrackCenter.Domain/Aggregates/TrackContentAggregate/ITrackContentRepository.cs
index fd0385f7..9f2e5bb5 100644
--- a/src/TrackCenter.Domain/Aggregates/TrackContentAggregate/ITrackContentRepository.cs
+++ b/src/TrackCenter.Domain/Aggregates/TrackContentAggregate/ITrackContentRepository.cs
@@ -1,4 +1,4 @@
-using Fake.Application.Dtos;
+using Fake.Domain.Dtos;
using TrackCenter.Domain.Dtos.TrackContents;
namespace TrackCenter.Domain.Aggregates.TrackContentAggregate;
diff --git a/src/TrackCenter.Domain/Aggregates/TrackFlagAggregate/ITrackFlagRepository.cs b/src/TrackCenter.Domain/Aggregates/TrackFlagAggregate/ITrackFlagRepository.cs
index 4d6258da..788df35d 100644
--- a/src/TrackCenter.Domain/Aggregates/TrackFlagAggregate/ITrackFlagRepository.cs
+++ b/src/TrackCenter.Domain/Aggregates/TrackFlagAggregate/ITrackFlagRepository.cs
@@ -1,4 +1,4 @@
-using Fake.Application.Dtos;
+using Fake.Domain.Dtos;
using TrackCenter.Domain.Dtos.TrackFlags;
namespace TrackCenter.Domain.Aggregates.TrackFlagAggregate;
diff --git a/src/TrackCenter.Domain/Aggregates/TrackPullAggregate/ITrackPullConfigRepository.cs b/src/TrackCenter.Domain/Aggregates/TrackPullAggregate/ITrackPullConfigRepository.cs
index 22d9b044..492b5874 100644
--- a/src/TrackCenter.Domain/Aggregates/TrackPullAggregate/ITrackPullConfigRepository.cs
+++ b/src/TrackCenter.Domain/Aggregates/TrackPullAggregate/ITrackPullConfigRepository.cs
@@ -1,4 +1,4 @@
-using Fake.Application.Dtos;
+using Fake.Domain.Dtos;
using TrackCenter.Domain.Dtos.Common;
using TrackCenter.Domain.Dtos.TrackPull;
diff --git a/src/TrackCenter.Domain/Aggregates/TrackPushAggregate/ITrackPushConfigRepository.cs b/src/TrackCenter.Domain/Aggregates/TrackPushAggregate/ITrackPushConfigRepository.cs
index 0c96294c..6bd459d5 100644
--- a/src/TrackCenter.Domain/Aggregates/TrackPushAggregate/ITrackPushConfigRepository.cs
+++ b/src/TrackCenter.Domain/Aggregates/TrackPushAggregate/ITrackPushConfigRepository.cs
@@ -1,4 +1,4 @@
-using Fake.Application.Dtos;
+using Fake.Domain.Dtos;
using TrackCenter.Domain.Dtos.TrackPush;
namespace TrackCenter.Domain.Aggregates.TrackPushAggregate;
diff --git a/src/TrackCenter.Domain/Aggregates/TrackStatusAggregate/ITrackStatusRepository.cs b/src/TrackCenter.Domain/Aggregates/TrackStatusAggregate/ITrackStatusRepository.cs
index c5c14661..7a1348f4 100644
--- a/src/TrackCenter.Domain/Aggregates/TrackStatusAggregate/ITrackStatusRepository.cs
+++ b/src/TrackCenter.Domain/Aggregates/TrackStatusAggregate/ITrackStatusRepository.cs
@@ -1,4 +1,4 @@
-using Fake.Application.Dtos;
+using Fake.Domain.Dtos;
using TrackCenter.Domain.Dtos.TrackStatus;
namespace TrackCenter.Domain.Aggregates.TrackStatusAggregate;
diff --git a/src/TrackCenter.Domain/Aggregates/WarningAggregate/IWarningDetailsEsRepository.cs b/src/TrackCenter.Domain/Aggregates/WarningAggregate/IWarningDetailsEsRepository.cs
index 5816a620..20fdd56e 100644
--- a/src/TrackCenter.Domain/Aggregates/WarningAggregate/IWarningDetailsEsRepository.cs
+++ b/src/TrackCenter.Domain/Aggregates/WarningAggregate/IWarningDetailsEsRepository.cs
@@ -1,4 +1,4 @@
-using Fake.Application.Dtos;
+using Fake.Domain.Dtos;
using TrackCenter.Domain.Aggregates.WarningAggregate.Complete;
using TrackCenter.Domain.Aggregates.WarningAggregate.Return;
using TrackCenter.Domain.Aggregates.WarningAggregate.Transport;
diff --git a/src/TrackCenter.Domain/TrackCenter.Domain.csproj b/src/TrackCenter.Domain/TrackCenter.Domain.csproj
index afc194b5..f4fd20fc 100644
--- a/src/TrackCenter.Domain/TrackCenter.Domain.csproj
+++ b/src/TrackCenter.Domain/TrackCenter.Domain.csproj
@@ -13,7 +13,7 @@
-
+
diff --git a/src/TrackCenter.Domain/TrackCenterDomainModule.cs b/src/TrackCenter.Domain/TrackCenterDomainModule.cs
index 5274f690..a72ba552 100644
--- a/src/TrackCenter.Domain/TrackCenterDomainModule.cs
+++ b/src/TrackCenter.Domain/TrackCenterDomainModule.cs
@@ -6,7 +6,7 @@ using TrackCenter.Domain.Extensions;
namespace TrackCenter.Domain;
-[DependsOn(typeof(FakeDomainDrivenDesignModule))]
+[DependsOn(typeof(FakeDddDomainModule))]
public class TrackCenterDomainModule : FakeModule
{
public override void ConfigureServices(ServiceConfigurationContext context)
diff --git a/src/TrackCenter.Repository/GlobalUsing.cs b/src/TrackCenter.Repository/GlobalUsing.cs
index 5056657c..9412e2b7 100644
--- a/src/TrackCenter.Repository/GlobalUsing.cs
+++ b/src/TrackCenter.Repository/GlobalUsing.cs
@@ -1,2 +1,2 @@
global using SqlSugar;
-global using Fake.Application.Dtos;
+global using Fake.Domain.Dtos;
diff --git a/src/TrackCenter.Repository/Repositories/BasicRepository.cs b/src/TrackCenter.Repository/Repositories/BasicRepository.cs
index 2ee5cd43..a1fc060a 100644
--- a/src/TrackCenter.Repository/Repositories/BasicRepository.cs
+++ b/src/TrackCenter.Repository/Repositories/BasicRepository.cs
@@ -1,5 +1,5 @@
using System.Linq.Expressions;
-using Fake.Application;
+using Fake;
using Fake.Domain.Entities;
using Fake.Domain.Entities.Auditing;
using Fake.DomainDrivenDesign.Repositories.SqlSugarCore;
@@ -79,8 +79,7 @@ public class BasicRepository : SqlSugarRepository, I
public async Task SoftDeleteAsync(Expression>? where)
{
if (!typeof(T).IsAssignableTo())
- throw new BusinessException(
- message: $"实体没有实现{nameof(ISoftDelete)}不能调用{nameof(SoftDeleteAsync)}");
+ throw new FakeException($"实体没有实现{nameof(ISoftDelete)}不能调用{nameof(SoftDeleteAsync)}");
// tips: required where
if (where == default) return false;