model

package
v0.5.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 1, 2025 License: MIT Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func DetermineMediaType

func DetermineMediaType(ext, mimeType string) valueobject.MediaType

DetermineMediaType 根据扩展名和MIME类型确定媒体类型

Types

type File

type File struct {
	ID        uuid.UUID             `json:"id"`
	MediaType valueobject.MediaType `json:"media_type"`
	Name      valueobject.FileName  `json:"name"`
	NameIndex string                `json:"name_index"`
	Path      string                `json:"path"`
	Size      uint64                `json:"size"`
	Ext       string                `json:"ext"`
	MimeType  string                `json:"mime_type"`
	Status    uint8                 `json:"status"`
	CreatedAt time.Time             `json:"created_at"`
}

File 文件领域模型

func NewFile

func NewFile(name, ext, path, mimeType string, size uint64) *File

NewFile 创建文件(不再依赖基础设施进行路径转换)

func (*File) Validate

func (f *File) Validate() error

type MultipartUpload

type MultipartUpload struct {
	ID        uuid.UUID `json:"id"`
	FileName  string    `json:"file_name"`
	Path      string    `json:"path"`
	Size      uint64    `json:"size"`
	MimeType  string    `json:"mime_type"`
	Ext       string    `json:"ext"`
	UploadID  string    `json:"upload_id"`
	Status    uint8     `json:"status"` // 1-进行中 2-已完成 3-已取消
	Parts     []*Part   `json:"parts"`
	CreatedAt time.Time `json:"created_at"`
}

MultipartUpload 分片上传信息

func NewMultipartUpload

func NewMultipartUpload(fileName, path string, size uint64, mimeType, ext, uploadId string) *MultipartUpload

NewMultipartUpload 创建分片上传

func (*MultipartUpload) Abort

func (m *MultipartUpload) Abort()

Abort 取消上传

func (*MultipartUpload) AddPart

func (m *MultipartUpload) AddPart(partNumber int, etag string, size int64)

AddPart 添加分片

func (*MultipartUpload) Complete

func (m *MultipartUpload) Complete()

Complete 完成上传

type Part

type Part struct {
	PartNumber int
	ETag       string
	Size       int64
}

Part 分片信息

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL