diff --git a/src/Application/TakeoutSaaS.Application/App/Tenants/Commands/CreateTenantPackageCommand.cs b/src/Application/TakeoutSaaS.Application/App/Tenants/Commands/CreateTenantPackageCommand.cs index 166a11f..4873a37 100644 --- a/src/Application/TakeoutSaaS.Application/App/Tenants/Commands/CreateTenantPackageCommand.cs +++ b/src/Application/TakeoutSaaS.Application/App/Tenants/Commands/CreateTenantPackageCommand.cs @@ -82,7 +82,7 @@ public sealed record CreateTenantPackageCommand : IRequest /// /// 发布状态(草稿/已发布)。 /// - public TenantPackagePublishStatus PublishStatus { get; init; } = TenantPackagePublishStatus.Published; + public TenantPackagePublishStatus? PublishStatus { get; init; } /// /// 展示排序,数值越小越靠前。 diff --git a/src/Application/TakeoutSaaS.Application/App/Tenants/Commands/UpdateTenantPackageCommand.cs b/src/Application/TakeoutSaaS.Application/App/Tenants/Commands/UpdateTenantPackageCommand.cs index b28b746..809ac4c 100644 --- a/src/Application/TakeoutSaaS.Application/App/Tenants/Commands/UpdateTenantPackageCommand.cs +++ b/src/Application/TakeoutSaaS.Application/App/Tenants/Commands/UpdateTenantPackageCommand.cs @@ -87,7 +87,7 @@ public sealed record UpdateTenantPackageCommand : IRequest /// /// 发布状态(草稿/已发布)。 /// - public TenantPackagePublishStatus PublishStatus { get; init; } = TenantPackagePublishStatus.Published; + public TenantPackagePublishStatus? PublishStatus { get; init; } /// /// 展示排序,数值越小越靠前。 diff --git a/src/Application/TakeoutSaaS.Application/App/Tenants/Handlers/CreateTenantPackageCommandHandler.cs b/src/Application/TakeoutSaaS.Application/App/Tenants/Handlers/CreateTenantPackageCommandHandler.cs index 6592c0d..22e79f9 100644 --- a/src/Application/TakeoutSaaS.Application/App/Tenants/Handlers/CreateTenantPackageCommandHandler.cs +++ b/src/Application/TakeoutSaaS.Application/App/Tenants/Handlers/CreateTenantPackageCommandHandler.cs @@ -2,6 +2,7 @@ using MediatR; using TakeoutSaaS.Application.App.Tenants.Commands; using TakeoutSaaS.Application.App.Tenants.Dto; using TakeoutSaaS.Domain.Tenants.Entities; +using TakeoutSaaS.Domain.Tenants.Enums; using TakeoutSaaS.Domain.Tenants.Repositories; using TakeoutSaaS.Shared.Abstractions.Constants; using TakeoutSaaS.Shared.Abstractions.Exceptions; @@ -40,7 +41,7 @@ public sealed class CreateTenantPackageCommandHandler(ITenantPackageRepository p IsActive = request.IsActive, IsPublicVisible = request.IsPublicVisible, IsAllowNewTenantPurchase = request.IsAllowNewTenantPurchase, - PublishStatus = request.PublishStatus, + PublishStatus = request.PublishStatus ?? TenantPackagePublishStatus.Draft, SortOrder = request.SortOrder }; diff --git a/src/Application/TakeoutSaaS.Application/App/Tenants/Handlers/UpdateTenantPackageCommandHandler.cs b/src/Application/TakeoutSaaS.Application/App/Tenants/Handlers/UpdateTenantPackageCommandHandler.cs index 736f448..fb47321 100644 --- a/src/Application/TakeoutSaaS.Application/App/Tenants/Handlers/UpdateTenantPackageCommandHandler.cs +++ b/src/Application/TakeoutSaaS.Application/App/Tenants/Handlers/UpdateTenantPackageCommandHandler.cs @@ -44,7 +44,12 @@ public sealed class UpdateTenantPackageCommandHandler(ITenantPackageRepository p package.IsActive = request.IsActive; package.IsPublicVisible = request.IsPublicVisible; package.IsAllowNewTenantPurchase = request.IsAllowNewTenantPurchase; - package.PublishStatus = request.PublishStatus; + + // 3. (空行后) 更新发布状态(若未传则保持不变,避免默认值覆盖) + if (request.PublishStatus.HasValue) + { + package.PublishStatus = request.PublishStatus.Value; + } package.SortOrder = request.SortOrder; // 4. 持久化并返回