This commit is contained in:
24
internal/domains/article/repositories/announcement.go
Normal file
24
internal/domains/article/repositories/announcement.go
Normal file
@@ -0,0 +1,24 @@
|
||||
// 存储公告的仓储接口
|
||||
package repositories
|
||||
|
||||
import (
|
||||
"context"
|
||||
"tyapi-server/internal/domains/article/entities"
|
||||
"tyapi-server/internal/domains/article/repositories/queries"
|
||||
"tyapi-server/internal/shared/interfaces"
|
||||
)
|
||||
|
||||
// AnnouncementRepository 公告仓储接口
|
||||
type AnnouncementRepository interface {
|
||||
interfaces.Repository[entities.Announcement]
|
||||
|
||||
// 自定义查询方法
|
||||
FindByStatus(ctx context.Context, status entities.AnnouncementStatus) ([]*entities.Announcement, error)
|
||||
FindScheduled(ctx context.Context) ([]*entities.Announcement, error)
|
||||
ListAnnouncements(ctx context.Context, query *queries.ListAnnouncementQuery) ([]*entities.Announcement, int64, error)
|
||||
|
||||
// 统计方法
|
||||
CountByStatus(ctx context.Context, status entities.AnnouncementStatus) (int64, error)
|
||||
// 更新统计信息
|
||||
UpdateStatistics(ctx context.Context, announcementID string) error
|
||||
}
|
||||
Reference in New Issue
Block a user