fix: add clicked count on ads
This commit is contained in:
@@ -5,9 +5,14 @@ import (
|
||||
adsdomain "legalgo-BE-go/internal/domain/ads"
|
||||
)
|
||||
|
||||
func (a *accessor) GetAll() ([]adsdomain.Ads, error) {
|
||||
var ads []adsdomain.Ads
|
||||
if err := a.db.Find(&ads).Error; err != nil {
|
||||
func (a *accessor) GetAll() ([]adsdomain.AdsResponse, error) {
|
||||
var ads []adsdomain.AdsResponse
|
||||
|
||||
if err := a.db.Table("ads").
|
||||
Select("ads.*, COUNT(log_ads.ads_id) as clicked").
|
||||
Joins("LEFT JOIN log_ads ON log_ads.ads_id = ads.id").
|
||||
Group("ads.id").
|
||||
Scan(&ads).Error; err != nil {
|
||||
return ads, fmt.Errorf("failed to get all ads: %v", err)
|
||||
}
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@ type accessor struct {
|
||||
|
||||
type Ads interface {
|
||||
Create(adsdomain.Ads) error
|
||||
GetAll() ([]adsdomain.Ads, error)
|
||||
GetAll() ([]adsdomain.AdsResponse, error)
|
||||
Update(adsdomain.Ads) error
|
||||
Delete(string) error
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user