package model | |
import ( | |
"fmt" | |
"time" | |
) | |
type IndexProgress struct { | |
ObjCount uint64 `json:"obj_count"` | |
IsDone bool `json:"is_done"` | |
LastDoneTime *time.Time `json:"last_done_time"` | |
Error string `json:"error"` | |
} | |
type SearchReq struct { | |
Parent string `json:"parent"` | |
Keywords string `json:"keywords"` | |
// 0 for all, 1 for dir, 2 for file | |
Scope int `json:"scope"` | |
PageReq | |
} | |
type SearchNode struct { | |
Parent string `json:"parent" gorm:"index"` | |
Name string `json:"name"` | |
IsDir bool `json:"is_dir"` | |
Size int64 `json:"size"` | |
} | |
func (p *SearchReq) Validate() error { | |
if p.Page < 1 { | |
return fmt.Errorf("page can't < 1") | |
} | |
if p.PerPage < 1 { | |
return fmt.Errorf("per_page can't < 1") | |
} | |
return nil | |
} | |
func (s *SearchNode) Type() string { | |
return "SearchNode" | |
} | |