This commit is contained in:
2025-12-07 14:54:35 +01:00
parent ac6a4fd6d3
commit d18a72d492
18 changed files with 725 additions and 307 deletions
+5 -10
View File
@@ -2,32 +2,27 @@ package domain
import "gorm.io/gorm"
type ReleaseRepository interface {
type ReleaseRepositoryInterface interface {
Create(release *Release) error
FindLatestBySoftwareID(softwareID uint) (*Release, error)
FindBySoftwareIDAndVersion(softwareID uint, version string) (*Release, error)
}
type releaseRepository struct {
type ReleaseRepository struct {
db *gorm.DB
}
// NewReleaseRepository creates a new instance of ReleaseRepository.
/* func NewReleaseRepository(db *gorm.DB) ReleaseRepository {
return &releaseRepository{db}
} */
func (r *releaseRepository) Create(release *Release) error {
func (r *ReleaseRepository) Create(release *Release) error {
return r.db.Create(release).Error
}
func (r *releaseRepository) FindLatestBySoftwareID(softwareID uint) (*Release, error) {
func (r *ReleaseRepository) FindLatestBySoftwareID(softwareID uint) (*Release, error) {
var release Release
err := r.db.Where("software_id = ?", softwareID).Order("created_at desc").First(&release).Error
return &release, err
}
func (r *releaseRepository) FindBySoftwareIDAndVersion(softwareID uint, version string) (*Release, error) {
func (r *ReleaseRepository) FindBySoftwareIDAndVersion(softwareID uint, version string) (*Release, error) {
var release Release
err := r.db.Where("software_id = ? AND version = ?", softwareID, version).First(&release).Error
return &release, err