diff --git a/internal/model/dto/asset_dto.go b/internal/model/dto/asset_dto.go index c95cfc8..9301779 100644 --- a/internal/model/dto/asset_dto.go +++ b/internal/model/dto/asset_dto.go @@ -108,6 +108,7 @@ type AssetPackageResponse struct { PackageID uint `json:"package_id" description:"套餐ID"` PackageName string `json:"package_name" description:"套餐名称"` PackageType string `json:"package_type" description:"套餐类型:formal/addon"` + ExpiryBase string `json:"expiry_base,omitempty" description:"到期时间基准 (from_activation:实名激活时起算, from_purchase:购买时起算)"` OrderID uint `json:"order_id" description:"关联订单ID(无订单分配时为0)"` OrderNo string `json:"order_no,omitempty" description:"订单号快照(无订单分配时为空)"` RefundID *uint `json:"refund_id,omitempty" description:"退款主键ID快照(未退款时为空)"` diff --git a/internal/service/asset/service.go b/internal/service/asset/service.go index 75572b6..2a5fd19 100644 --- a/internal/service/asset/service.go +++ b/internal/service/asset/service.go @@ -736,17 +736,20 @@ func (s *Service) GetPackages(ctx context.Context, assetType string, id uint, pa metrics := u.BuildTrafficMetrics() pkgName := u.PackageName pkgType := "" + expiryBase := "" if pkg != nil { if pkgName == "" { pkgName = pkg.PackageName } pkgType = pkg.PackageType + expiryBase = pkg.ExpiryBase } item := &dto.AssetPackageResponse{ PackageUsageID: u.ID, PackageID: u.PackageID, PackageName: pkgName, PackageType: pkgType, + ExpiryBase: expiryBase, OrderID: u.OrderID, OrderNo: u.OrderNo, RefundID: u.RefundID, @@ -815,17 +818,20 @@ func (s *Service) GetCurrentPackage(ctx context.Context, assetType string, id ui metrics := usage.BuildTrafficMetrics() pkgName := usage.PackageName pkgType := "" + expiryBase := "" if pkgErr == nil && pkg != nil { if pkgName == "" { pkgName = pkg.PackageName } pkgType = pkg.PackageType + expiryBase = pkg.ExpiryBase } return &dto.AssetPackageResponse{ PackageUsageID: usage.ID, PackageID: usage.PackageID, PackageName: pkgName, PackageType: pkgType, + ExpiryBase: expiryBase, OrderID: usage.OrderID, OrderNo: usage.OrderNo, RefundID: usage.RefundID,