35 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
		
		
			
		
	
	
			35 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
|  | package product | ||
|  | 
 | ||
|  | import ( | ||
|  | 	"context" | ||
|  | 	"tyapi-server/internal/application/product/dto/commands" | ||
|  | 	"tyapi-server/internal/application/product/dto/queries" | ||
|  | 	"tyapi-server/internal/application/product/dto/responses" | ||
|  | ) | ||
|  | 
 | ||
|  | // SubscriptionApplicationService 订阅应用服务接口 | ||
|  | type SubscriptionApplicationService interface { | ||
|  | 	// 订阅管理 | ||
|  | 	UpdateSubscriptionPrice(ctx context.Context, cmd *commands.UpdateSubscriptionPriceCommand) error | ||
|  | 
 | ||
|  | 	// 订阅管理 | ||
|  | 	CreateSubscription(ctx context.Context, cmd *commands.CreateSubscriptionCommand) error | ||
|  | 	GetSubscriptionByID(ctx context.Context, query *queries.GetSubscriptionQuery) (*responses.SubscriptionInfoResponse, error) | ||
|  | 	ListSubscriptions(ctx context.Context, query *queries.ListSubscriptionsQuery) (*responses.SubscriptionListResponse, error) | ||
|  | 
 | ||
|  | 	// 我的订阅(用户专用) | ||
|  | 	ListMySubscriptions(ctx context.Context, userID string, query *queries.ListSubscriptionsQuery) (*responses.SubscriptionListResponse, error) | ||
|  | 	GetMySubscriptionStats(ctx context.Context, userID string) (*responses.SubscriptionStatsResponse, error) | ||
|  | 
 | ||
|  | 	// 业务查询 | ||
|  | 	GetUserSubscriptions(ctx context.Context, query *queries.GetUserSubscriptionsQuery) ([]*responses.SubscriptionInfoResponse, error) | ||
|  | 	GetProductSubscriptions(ctx context.Context, query *queries.GetProductSubscriptionsQuery) ([]*responses.SubscriptionInfoResponse, error) | ||
|  | 	GetSubscriptionUsage(ctx context.Context, subscriptionID string) (*responses.SubscriptionUsageResponse, error) | ||
|  | 
 | ||
|  | 	// 统计 | ||
|  | 	GetSubscriptionStats(ctx context.Context) (*responses.SubscriptionStatsResponse, error) | ||
|  | 
 | ||
|  | 	// 一键改价 | ||
|  | 	BatchUpdateSubscriptionPrices(ctx context.Context, cmd *commands.BatchUpdateSubscriptionPricesCommand) error | ||
|  | } |