package localeSelectorRepo import ( "git.ma-al.com/goc_daniel/b2b/app/db" "git.ma-al.com/goc_daniel/b2b/app/model" "git.ma-al.com/goc_daniel/b2b/app/model/dbmodel" ) type UILocaleSelectorRepo interface { GetLanguages() ([]model.Language, error) GetCountriesAndCurrencies() ([]model.Country, error) } type LocaleSelectorRepo struct{} func New() UILocaleSelectorRepo { return &LocaleSelectorRepo{} } func (r *LocaleSelectorRepo) GetLanguages() ([]model.Language, error) { var languages []model.Language err := db.Get().Find(&languages).Error return languages, err } func (r *LocaleSelectorRepo) GetCountriesAndCurrencies() ([]model.Country, error) { var countries []model.Country err := db.Get(). Select("*"). Preload("Currency"). Joins("LEFT JOIN " + dbmodel.TableNamePsCountryLang + " AS cl ON cl." + dbmodel.PsCountryLangCols.IDCountry.Col() + " = b2b_countries.ps_id_country AND cl." + dbmodel.PsCountryLangCols.IDLang.Col() + " = 2"). Find(&countries).Error return countries, err }