package finance import ( "context" "net/http" "tyapi-server/internal/application/finance/dto/commands" "tyapi-server/internal/application/finance/dto/queries" "tyapi-server/internal/application/finance/dto/responses" "tyapi-server/internal/shared/interfaces" ) // FinanceApplicationService 财务应用服务接口 type FinanceApplicationService interface { GetWallet(ctx context.Context, query *queries.GetWalletInfoQuery) (*responses.WalletResponse, error) CreateAlipayRechargeOrder(ctx context.Context, cmd *commands.CreateAlipayRechargeCommand) (*responses.AlipayRechargeOrderResponse, error) HandleAlipayCallback(ctx context.Context, r *http.Request) error HandleAlipayReturn(ctx context.Context, outTradeNo string) (string, error) GetAlipayOrderStatus(ctx context.Context, outTradeNo string) (*responses.AlipayOrderStatusResponse, error) TransferRecharge(ctx context.Context, cmd *commands.TransferRechargeCommand) (*responses.RechargeRecordResponse, error) GiftRecharge(ctx context.Context, cmd *commands.GiftRechargeCommand) (*responses.RechargeRecordResponse, error) // 获取用户钱包交易记录 GetUserWalletTransactions(ctx context.Context, userID string, filters map[string]interface{}, options interfaces.ListOptions) (*responses.WalletTransactionListResponse, error) // 管理端消费记录 GetAdminWalletTransactions(ctx context.Context, filters map[string]interface{}, options interfaces.ListOptions) (*responses.WalletTransactionListResponse, error) // 获取用户充值记录 GetUserRechargeRecords(ctx context.Context, userID string, filters map[string]interface{}, options interfaces.ListOptions) (*responses.RechargeRecordListResponse, error) // 管理员获取充值记录 GetAdminRechargeRecords(ctx context.Context, filters map[string]interface{}, options interfaces.ListOptions) (*responses.RechargeRecordListResponse, error) // 获取充值配置 GetRechargeConfig(ctx context.Context) (*responses.RechargeConfigResponse, error) }