|
|
- package Database
-
- import (
- "git.tovijaeschke.xyz/tovi/Envelope/Backend/Models"
- "github.com/gofrs/uuid"
-
- "gorm.io/gorm"
- "gorm.io/gorm/clause"
- )
-
- func GetFriendById(id string) (Models.Friend, error) {
- var (
- friend Models.Friend
- err error
- )
-
- err = DB.Preload(clause.Associations).
- First(&friend, "id = ?", id).
- Error
-
- return friend, err
- }
-
- func GetFriendsByUserId(userID string) ([]Models.Friend, error) {
- var (
- friends []Models.Friend
- err error
- )
-
- err = DB.Model(Models.Friend{}).
- Where("user_id = ?", userID).
- Find(&friends).
- Error
-
- return friends, err
- }
-
- func CreateFriendRequest(friend *Models.Friend) error {
- var (
- err error
- )
-
- friend.ThreadID, err = uuid.NewV1()
- if err != nil {
- return err
- }
-
- return DB.Session(&gorm.Session{FullSaveAssociations: true}).
- Create(friend).
- Error
- }
-
- func DeleteFriend(friend *Models.Friend) error {
- return DB.Session(&gorm.Session{FullSaveAssociations: true}).
- Delete(friend).
- Error
- }
|