do_project_module_files.go 1.3 KB
package domain

import "time"

const (
	Dir = iota + 1
	File
)

// ProjectModuleFiles
type ProjectModuleFiles struct {
	// 唯一标识
	Id int64 `json:"id"`
	// 项目编号
	ProjectModuleId int64 `json:"projectModuleId"`
	// 项目版本编号
	ProjectModuleVersionId int64 `json:"projectModuleVersionId"`
	// 文件类型 1:文件夹 2:文件
	FileType int `json:"fileType"`
	// 文件名称
	FileName string `json:"fileName"`
	// 文件键值
	FileKey string `json:"fileKey"`
	// 代码块
	CodeBlock string `json:"codeBlock"`
	// 父级编号
	ParentId int64 `json:"parentId"`
	// 排序
	Sort int `json:"sort"`
	// 备注信息
	Remark string `json:"remark"`
	// 创建时间
	CreateTime time.Time `json:"createTime"`
	// 更新时间
	UpdateTime time.Time `json:"updateTime"`
	// 当前文件相对路径  a/b/c
	Path string `json:"path"`
}

type ProjectModuleFilesRepository interface {
	Save(dm *ProjectModuleFiles) (*ProjectModuleFiles, error)
	Remove(dm *ProjectModuleFiles) (*ProjectModuleFiles, error)
	FindOne(queryOptions map[string]interface{}) (*ProjectModuleFiles, error)
	Find(queryOptions map[string]interface{}) (int64, []*ProjectModuleFiles, error)
}

func (m *ProjectModuleFiles) Identify() interface{} {
	if m.Id == 0 {
		return nil
	}
	return m.Id
}

func (m *ProjectModuleFiles) Update(data map[string]interface{}) error {
	return nil
}