🎨 新增酒单CRUD & 喜欢的酒单列表CRUD
This commit is contained in:
@@ -3,6 +3,7 @@ package repository
|
||||
import (
|
||||
"Lee-WineList/client"
|
||||
"Lee-WineList/model/entity"
|
||||
"Lee-WineList/model/param"
|
||||
"errors"
|
||||
"git.echol.cn/loser/logger/log"
|
||||
"gorm.io/gorm"
|
||||
@@ -54,3 +55,20 @@ func (user) CheckUnionIdIsExist(unionId, openId string) bool {
|
||||
func (user) UpdateUserInfo(e *entity.User) (err error) {
|
||||
return client.MySQL.Updates(&e).Error
|
||||
}
|
||||
|
||||
// GetLikeWineList 获取用户喜欢的酒单列表
|
||||
func (u user) GetLikeWineList(e *param.GetLikeWineList) (wines []entity.Wine, err error) {
|
||||
var ids []int64
|
||||
client.MySQL.Model(&entity.LikeWine{}).Where("user_id = ?", e.UserId).Pluck("wine_id", &ids)
|
||||
|
||||
err = client.MySQL.Model(&entity.Wine{}).
|
||||
Where("wine_id in ?", ids).
|
||||
Preload("Materials").
|
||||
Scopes(page(e.Current, e.Size)).
|
||||
Find(&wines).Error
|
||||
return
|
||||
}
|
||||
|
||||
func (u user) DeleteLikeWine(p *param.DeleteLikeWine) (err error) {
|
||||
return client.MySQL.Delete(&entity.LikeWine{}, "wine_id = ?", p.LikeWineId).Error
|
||||
}
|
||||
|
@@ -34,7 +34,17 @@ func (w *wine) GetWineList(p param.GetWineList) (wines []entity.Wine, err error)
|
||||
return
|
||||
}
|
||||
|
||||
func (w *wine) Add(p param.AddWine) (err error) {
|
||||
|
||||
func (w *wine) Add(p entity.Wine) (err error) {
|
||||
err = client.MySQL.Create(&p).Error
|
||||
return
|
||||
}
|
||||
|
||||
func (w *wine) Update(p entity.Wine) (err error) {
|
||||
err = client.MySQL.Save(&p).Error
|
||||
return
|
||||
}
|
||||
|
||||
func (w *wine) Delete(p entity.Wine) (err error) {
|
||||
err = client.MySQL.Delete(&p).Error
|
||||
return
|
||||
}
|
||||
|
Reference in New Issue
Block a user