feat: add media preview
This commit is contained in:
@@ -142,7 +142,7 @@ func (ctl *posts) Delete(ctx fiber.Ctx, id int64) error {
|
||||
|
||||
type PostItem struct {
|
||||
*model.Posts
|
||||
Medias []*models.MediaItem `json:"medias"`
|
||||
Medias []*model.Medias `json:"medias"`
|
||||
}
|
||||
|
||||
// Show posts by id
|
||||
@@ -161,15 +161,7 @@ func (ctl *posts) Show(ctx fiber.Ctx, id int64) (*PostItem, error) {
|
||||
return nil, err
|
||||
}
|
||||
return &PostItem{
|
||||
Posts: post,
|
||||
Medias: lo.Map(medias, func(media *model.Medias, _ int) *models.MediaItem {
|
||||
return &models.MediaItem{
|
||||
ID: media.ID,
|
||||
Name: media.Name,
|
||||
UploadTime: media.CreatedAt.Format("2006-01-02 15:04:05"),
|
||||
FileSize: media.Size,
|
||||
MimeType: media.MimeType,
|
||||
}
|
||||
}),
|
||||
Posts: post,
|
||||
Medias: medias,
|
||||
}, nil
|
||||
}
|
||||
|
||||
@@ -13,14 +13,6 @@ import (
|
||||
"github.com/sirupsen/logrus"
|
||||
)
|
||||
|
||||
type MediaItem struct {
|
||||
ID int64 `json:"id"`
|
||||
Name string `json:"name"`
|
||||
UploadTime string `json:"upload_time"`
|
||||
FileSize int64 `json:"file_size"`
|
||||
MimeType string `json:"media_type"`
|
||||
}
|
||||
|
||||
// @provider
|
||||
type mediasModel struct {
|
||||
log *logrus.Entry `inject:"false"`
|
||||
@@ -91,19 +83,8 @@ func (m *mediasModel) List(ctx context.Context, pagination *requests.Pagination,
|
||||
return nil, err
|
||||
}
|
||||
|
||||
// Convert model.Medias to MediaItem
|
||||
mediaItems := lo.Map(medias, func(media model.Medias, _ int) *MediaItem {
|
||||
return &MediaItem{
|
||||
ID: media.ID,
|
||||
Name: media.Name,
|
||||
UploadTime: media.CreatedAt.Format("2006-01-02 15:04:05"),
|
||||
FileSize: media.Size,
|
||||
MimeType: media.MimeType,
|
||||
}
|
||||
})
|
||||
|
||||
return &requests.Pager{
|
||||
Items: mediaItems,
|
||||
Items: medias,
|
||||
Total: count,
|
||||
Pagination: *pagination,
|
||||
}, nil
|
||||
|
||||
Reference in New Issue
Block a user