diff --git a/src/Application/TakeoutSaaS.Application/App/Stores/Handlers/UpdateStoreFeeCommandHandler.cs b/src/Application/TakeoutSaaS.Application/App/Stores/Handlers/UpdateStoreFeeCommandHandler.cs index 12ec41a..caf62ee 100644 --- a/src/Application/TakeoutSaaS.Application/App/Stores/Handlers/UpdateStoreFeeCommandHandler.cs +++ b/src/Application/TakeoutSaaS.Application/App/Stores/Handlers/UpdateStoreFeeCommandHandler.cs @@ -54,19 +54,10 @@ public sealed class UpdateStoreFeeCommandHandler( fee.OrderPackagingFeeMode = request.PackagingFeeMode == PackagingFeeMode.Fixed ? request.OrderPackagingFeeMode : OrderPackagingFeeMode.Fixed; - if (request.PackagingFeeMode == PackagingFeeMode.Fixed && request.OrderPackagingFeeMode == OrderPackagingFeeMode.Tiered) - { - var normalizedTiers = StoreFeeTierHelper.Normalize(request.PackagingFeeTiers); - fee.FixedPackagingFee = 0m; - fee.PackagingFeeTiersJson = StoreFeeTierHelper.Serialize(normalizedTiers); - } - else - { - fee.FixedPackagingFee = request.PackagingFeeMode == PackagingFeeMode.Fixed - ? request.FixedPackagingFee ?? 0m - : 0m; - fee.PackagingFeeTiersJson = null; - } + fee.FixedPackagingFee = request.FixedPackagingFee ?? 0m; + // 非生效模式下也保留配置,避免模式切换后历史阶梯被清空。 + var normalizedTiers = StoreFeeTierHelper.Normalize(request.PackagingFeeTiers); + fee.PackagingFeeTiersJson = StoreFeeTierHelper.Serialize(normalizedTiers); fee.FreeDeliveryThreshold = request.FreeDeliveryThreshold; // 4. (空行后) 保存并返回