package repository import ( "git.mchus.pro/mchus/quoteforge/internal/models" "gorm.io/gorm" ) type CategoryRepository struct { db *gorm.DB } func NewCategoryRepository(db *gorm.DB) *CategoryRepository { return &CategoryRepository{db: db} } func (r *CategoryRepository) GetAll() ([]models.Category, error) { var categories []models.Category err := r.db.Order("display_order ASC").Find(&categories).Error return categories, err } func (r *CategoryRepository) GetByCode(code string) (*models.Category, error) { var category models.Category err := r.db.Where("code = ?", code).First(&category).Error if err != nil { return nil, err } return &category, nil } func (r *CategoryRepository) GetByID(id uint) (*models.Category, error) { var category models.Category err := r.db.First(&category, id).Error if err != nil { return nil, err } return &category, nil }