github.com/infraboard/keyauth@v0.8.1/apps/namespace/request.ext.go (about) 1 package namespace 2 3 import ( 4 "errors" 5 "fmt" 6 "net/http" 7 8 "github.com/infraboard/mcube/http/request" 9 10 "github.com/infraboard/keyauth/apps/token" 11 ) 12 13 // NewQueryNamespaceRequestFromHTTP 列表查询请求 14 func NewQueryNamespaceRequestFromHTTP(r *http.Request) *QueryNamespaceRequest { 15 qs := r.URL.Query() 16 return &QueryNamespaceRequest{ 17 Page: request.NewPageRequestFromHTTP(r), 18 DepartmentId: qs.Get("department_id"), 19 Name: qs.Get("name"), 20 WithDepartment: qs.Get("with_department") == "true", 21 WithSubDepartment: qs.Get("with_sub_department") == "true", 22 } 23 } 24 25 // NewQueryNamespaceRequest 列表查询请求 26 func NewQueryNamespaceRequest(pageReq *request.PageRequest) *QueryNamespaceRequest { 27 return &QueryNamespaceRequest{ 28 Page: pageReq, 29 WithDepartment: false, 30 } 31 } 32 33 func (req *QueryNamespaceRequest) UpdateOwner(tk *token.Token) { 34 req.Domain = tk.Domain 35 req.Account = tk.Account 36 } 37 38 // NewNewDescriptNamespaceRequestWithID todo 39 func NewNewDescriptNamespaceRequestWithID(id string) *DescriptNamespaceRequest { 40 req := NewDescriptNamespaceRequest() 41 req.Id = id 42 return req 43 } 44 45 // NewDescriptNamespaceRequest new实例 46 func NewDescriptNamespaceRequest() *DescriptNamespaceRequest { 47 return &DescriptNamespaceRequest{} 48 } 49 50 // Validate 校验详情查询请求 51 func (req *DescriptNamespaceRequest) Validate() error { 52 if req.Id == "" { 53 return errors.New("id is required") 54 } 55 56 return nil 57 } 58 59 // NewDeleteNamespaceRequestWithID todo 60 func NewDeleteNamespaceRequestWithID(id string) *DeleteNamespaceRequest { 61 return &DeleteNamespaceRequest{ 62 Id: id, 63 } 64 } 65 66 // Validate todo 67 func (req *DeleteNamespaceRequest) Validate() error { 68 if req.Id == "" { 69 return fmt.Errorf("id required") 70 } 71 72 return nil 73 }