This commit is contained in:
@@ -423,7 +423,7 @@ func (s *Service) deductSingleCommission(ctx context.Context, refund *model.Refu
|
||||
}
|
||||
|
||||
// handleAssetReset 异步处理资产重置
|
||||
// 包括:套餐失效、停机、世代重置(generation+1)、钱包重建、订单状态更新
|
||||
// 包括:退款套餐精准失效、停机、世代重置(generation+1)、钱包重建、订单状态更新
|
||||
// 失败仅记录日志,不影响审批结果
|
||||
func (s *Service) handleAssetReset(ctx context.Context, refundID uint) {
|
||||
logger := s.logger
|
||||
@@ -465,10 +465,19 @@ func (s *Service) handleAssetReset(ctx context.Context, refundID uint) {
|
||||
return
|
||||
}
|
||||
|
||||
// 1. 失效所有套餐
|
||||
// 1. 按退款单精准失效套餐(仅处理本次退款订单关联套餐)
|
||||
if s.packageActivationService != nil {
|
||||
if err := s.packageActivationService.InvalidateAllPackagesByAsset(ctx, assetType, assetID); err != nil {
|
||||
logger.Error("资产重置:失效套餐失败", zap.String("asset_type", assetType), zap.Uint("asset_id", assetID), zap.Error(err))
|
||||
if err := s.packageActivationService.InvalidatePackagesForRefund(ctx, assetType, assetID, order.ID, refund.PackageUsageID); err != nil {
|
||||
fields := []zap.Field{
|
||||
zap.String("asset_type", assetType),
|
||||
zap.Uint("asset_id", assetID),
|
||||
zap.Uint("order_id", order.ID),
|
||||
zap.Error(err),
|
||||
}
|
||||
if refund.PackageUsageID != nil {
|
||||
fields = append(fields, zap.Uint("package_usage_id", *refund.PackageUsageID))
|
||||
}
|
||||
logger.Error("资产重置:退款套餐精准失效失败", fields...)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user