v1.0.0
This commit is contained in:
@@ -0,0 +1,26 @@
|
||||
package repositories
|
||||
|
||||
import (
|
||||
"context"
|
||||
"time"
|
||||
|
||||
"tyapi-server/internal/domains/finance/entities"
|
||||
)
|
||||
|
||||
// InvoiceApplicationRepository 发票申请仓储接口
|
||||
type InvoiceApplicationRepository interface {
|
||||
Create(ctx context.Context, application *entities.InvoiceApplication) error
|
||||
Update(ctx context.Context, application *entities.InvoiceApplication) error
|
||||
Save(ctx context.Context, application *entities.InvoiceApplication) error
|
||||
FindByID(ctx context.Context, id string) (*entities.InvoiceApplication, error)
|
||||
FindByUserID(ctx context.Context, userID string, page, pageSize int) ([]*entities.InvoiceApplication, int64, error)
|
||||
FindPendingApplications(ctx context.Context, page, pageSize int) ([]*entities.InvoiceApplication, int64, error)
|
||||
FindByStatus(ctx context.Context, status entities.ApplicationStatus) ([]*entities.InvoiceApplication, error)
|
||||
FindByUserIDAndStatus(ctx context.Context, userID string, status entities.ApplicationStatus, page, pageSize int) ([]*entities.InvoiceApplication, int64, error)
|
||||
FindByUserIDAndStatusWithTimeRange(ctx context.Context, userID string, status entities.ApplicationStatus, startTime, endTime *time.Time, page, pageSize int) ([]*entities.InvoiceApplication, int64, error)
|
||||
FindByStatusWithTimeRange(ctx context.Context, status entities.ApplicationStatus, startTime, endTime *time.Time, page, pageSize int) ([]*entities.InvoiceApplication, int64, error)
|
||||
FindAllWithTimeRange(ctx context.Context, startTime, endTime *time.Time, page, pageSize int) ([]*entities.InvoiceApplication, int64, error)
|
||||
|
||||
GetUserTotalInvoicedAmount(ctx context.Context, userID string) (string, error)
|
||||
GetUserTotalAppliedAmount(ctx context.Context, userID string) (string, error)
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
package repositories
|
||||
|
||||
import (
|
||||
"context"
|
||||
"tyapi-server/internal/domains/finance/entities"
|
||||
)
|
||||
|
||||
// UserInvoiceInfoRepository 用户开票信息仓储接口
|
||||
type UserInvoiceInfoRepository interface {
|
||||
// Create 创建用户开票信息
|
||||
Create(ctx context.Context, info *entities.UserInvoiceInfo) error
|
||||
|
||||
// Update 更新用户开票信息
|
||||
Update(ctx context.Context, info *entities.UserInvoiceInfo) error
|
||||
|
||||
// Save 保存用户开票信息(创建或更新)
|
||||
Save(ctx context.Context, info *entities.UserInvoiceInfo) error
|
||||
|
||||
// FindByUserID 根据用户ID查找开票信息
|
||||
FindByUserID(ctx context.Context, userID string) (*entities.UserInvoiceInfo, error)
|
||||
|
||||
// FindByID 根据ID查找开票信息
|
||||
FindByID(ctx context.Context, id string) (*entities.UserInvoiceInfo, error)
|
||||
|
||||
// Delete 删除用户开票信息
|
||||
Delete(ctx context.Context, userID string) error
|
||||
|
||||
// Exists 检查用户开票信息是否存在
|
||||
Exists(ctx context.Context, userID string) (bool, error)
|
||||
}
|
||||
@@ -25,4 +25,7 @@ type WalletTransactionRepository interface {
|
||||
|
||||
// 新增:统计用户钱包交易次数
|
||||
CountByUserId(ctx context.Context, userId string) (int64, error)
|
||||
|
||||
// 管理端:根据条件筛选所有钱包交易记录(包含产品名称)
|
||||
ListWithFiltersAndProductName(ctx context.Context, filters map[string]interface{}, options interfaces.ListOptions) (map[string]string, []*entities.WalletTransaction, int64, error)
|
||||
}
|
||||
Reference in New Issue
Block a user