From f7925bc4eec325cfb7be230ad5b7dee5a81ec1e0 Mon Sep 17 00:00:00 2001 From: AzenKain Date: Tue, 14 Apr 2026 11:39:22 +0700 Subject: [PATCH] UPDATE: Fix some bug --- internal/dtos/response/media.go | 37 +++++++++++++++++-------------- internal/models/media.go | 39 ++++++++++++++++----------------- 2 files changed, 39 insertions(+), 37 deletions(-) diff --git a/internal/dtos/response/media.go b/internal/dtos/response/media.go index c400dd0..45b26c0 100644 --- a/internal/dtos/response/media.go +++ b/internal/dtos/response/media.go @@ -1,6 +1,9 @@ package response -import "time" +import ( + "encoding/json" + "time" +) type PreSignedResponse struct { TokenID string `json:"token_id"` @@ -10,23 +13,23 @@ type PreSignedResponse struct { } type MediaResponse struct { - ID string `json:"id"` - UserID string `json:"user_id"` - StorageKey string `json:"storage_key"` - OriginalName string `json:"original_name"` - MimeType string `json:"mime_type"` - Size int64 `json:"size"` - FileMetadata []byte `json:"file_metadata"` - CreatedAt *time.Time `json:"created_at"` - UpdatedAt *time.Time `json:"updated_at"` + ID string `json:"id"` + UserID string `json:"user_id"` + StorageKey string `json:"storage_key"` + OriginalName string `json:"original_name"` + MimeType string `json:"mime_type"` + Size int64 `json:"size"` + FileMetadata json.RawMessage `json:"file_metadata"` + CreatedAt *time.Time `json:"created_at"` + UpdatedAt *time.Time `json:"updated_at"` } type MediaSimpleResponse struct { - ID string `json:"id"` - StorageKey string `json:"storage_key"` - OriginalName string `json:"original_name"` - MimeType string `json:"mime_type"` - Size int64 `json:"size"` - FileMetadata []byte `json:"file_metadata"` - CreatedAt *time.Time `json:"created_at"` + ID string `json:"id"` + StorageKey string `json:"storage_key"` + OriginalName string `json:"original_name"` + MimeType string `json:"mime_type"` + Size int64 `json:"size"` + FileMetadata json.RawMessage `json:"file_metadata"` + CreatedAt *time.Time `json:"created_at"` } diff --git a/internal/models/media.go b/internal/models/media.go index 99d21fa..22791a3 100644 --- a/internal/models/media.go +++ b/internal/models/media.go @@ -1,38 +1,38 @@ package models import ( + "encoding/json" "history-api/internal/dtos/response" "time" ) type MediaEntity struct { - ID string `json:"id"` - UserID string `json:"user_id"` - StorageKey string `json:"storage_key"` - OriginalName string `json:"original_name"` - MimeType string `json:"mime_type"` - Size int64 `json:"size"` - FileMetadata []byte `json:"file_metadata"` - CreatedAt *time.Time `json:"created_at"` - UpdatedAt *time.Time `json:"updated_at"` + ID string `json:"id"` + UserID string `json:"user_id"` + StorageKey string `json:"storage_key"` + OriginalName string `json:"original_name"` + MimeType string `json:"mime_type"` + Size int64 `json:"size"` + FileMetadata json.RawMessage `json:"file_metadata"` + CreatedAt *time.Time `json:"created_at"` + UpdatedAt *time.Time `json:"updated_at"` } type MediaSimpleEntity struct { - ID string `json:"id"` - StorageKey string `json:"storage_key"` - OriginalName string `json:"original_name"` - MimeType string `json:"mime_type"` - Size int64 `json:"size"` - FileMetadata []byte `json:"file_metadata"` - CreatedAt *time.Time `json:"created_at"` + ID string `json:"id"` + StorageKey string `json:"storage_key"` + OriginalName string `json:"original_name"` + MimeType string `json:"mime_type"` + Size int64 `json:"size"` + FileMetadata json.RawMessage `json:"file_metadata"` + CreatedAt *time.Time `json:"created_at"` } - type MediaStorageEntity struct { ID string `json:"id"` StorageKey string `json:"storage_key"` } -func (e * MediaEntity) ToStorageEntity() *MediaStorageEntity { +func (e *MediaEntity) ToStorageEntity() *MediaStorageEntity { return &MediaStorageEntity{ ID: e.ID, StorageKey: e.StorageKey, @@ -73,11 +73,10 @@ func MediaEntitiesToResponse(entities []*MediaEntity) []*response.MediaResponse return responses } - func MediaEntitiesToStorageEntity(entities []*MediaEntity) []*MediaStorageEntity { responses := make([]*MediaStorageEntity, len(entities)) for i, entity := range entities { responses[i] = entity.ToStorageEntity() } return responses -} \ No newline at end of file +}