feat: getting list that an image belongs in

This commit is contained in:
2025-07-29 15:48:41 +01:00
parent 5ff7788a7b
commit 4de4431390
2 changed files with 20 additions and 3 deletions

View File

@ -51,7 +51,10 @@ func (m UserModel) Save(ctx context.Context, user model.Users) (model.Users, err
type UserImageWithImage struct { type UserImageWithImage struct {
model.UserImages model.UserImages
Image model.Image Image struct {
model.Image
ImageLists []model.ImageLists
}
} }
func (m UserModel) GetUserImages(ctx context.Context, userId uuid.UUID) ([]UserImageWithImage, error) { func (m UserModel) GetUserImages(ctx context.Context, userId uuid.UUID) ([]UserImageWithImage, error) {
@ -60,8 +63,13 @@ func (m UserModel) GetUserImages(ctx context.Context, userId uuid.UUID) ([]UserI
Image.ID, Image.ID,
Image.ImageName, Image.ImageName,
Image.Description, Image.Description,
ImageLists.AllColumns,
). ).
FROM(UserImages.INNER_JOIN(Image, Image.ID.EQ(UserImages.ImageID))). FROM(
UserImages.
INNER_JOIN(Image, Image.ID.EQ(UserImages.ImageID)).
INNER_JOIN(ImageLists, ImageLists.ImageID.EQ(UserImages.ImageID)),
).
WHERE(UserImages.UserID.EQ(UUID(userId))) WHERE(UserImages.UserID.EQ(UUID(userId)))
userImages := []UserImageWithImage{} userImages := []UserImageWithImage{}

View File

@ -96,7 +96,16 @@ const userImageValidator = strictObject({
CreatedAt: pipe(string()), CreatedAt: pipe(string()),
ImageID: pipe(string(), uuid()), ImageID: pipe(string(), uuid()),
UserID: pipe(string(), uuid()), UserID: pipe(string(), uuid()),
Image: imageMetaValidator, Image: strictObject({
...imageMetaValidator.entries,
ImageLists: array(
strictObject({
ID: pipe(string(), uuid()),
ImageID: pipe(string(), uuid()),
ListID: pipe(string(), uuid()),
}),
),
}),
}); });
const userProcessingImageValidator = strictObject({ const userProcessingImageValidator = strictObject({