lots of functionality
This commit is contained in:
@@ -132,6 +132,66 @@ func (c *APIClient) RetrieveAllShelves() ([]*types.ShelfLocation, error) {
|
||||
return resp.ShelfLocations, nil
|
||||
}
|
||||
|
||||
func (c *APIClient) DeleteShelfByID(idNumber string) (*types.ShelfLocation, error) {
|
||||
url := fmt.Sprintf("%s/shelves/%s", c.Host, idNumber)
|
||||
req, _ := http.NewRequest("DELETE", url, bytes.NewBuffer([]byte{}))
|
||||
|
||||
resp, err := makeRequest[types.ShelfResponse](c, req)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return resp.ShelfLocation, nil
|
||||
}
|
||||
|
||||
func (c *APIClient) CreateShelf(request types.CreateShelfRequest) (*types.ShelfLocation, error) {
|
||||
url := fmt.Sprintf("%s/shelves", c.Host)
|
||||
|
||||
body, err := json.Marshal(request)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
req, _ := http.NewRequest("POST", url, bytes.NewBuffer(body))
|
||||
|
||||
resp, err := makeRequest[types.ShelfResponse](c, req)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return resp.ShelfLocation, nil
|
||||
}
|
||||
|
||||
func (c *APIClient) UpdateShelf(id string, request types.CreateShelfRequest) (*types.ShelfLocation, error) {
|
||||
url := fmt.Sprintf("%s/shelves/%s", c.Host, id)
|
||||
|
||||
body, err := json.Marshal(request)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
req, _ := http.NewRequest("PUT", url, bytes.NewBuffer(body))
|
||||
|
||||
resp, err := makeRequest[types.ShelfResponse](c, req)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return resp.ShelfLocation, nil
|
||||
}
|
||||
|
||||
func (c *APIClient) RetrieveShelfByID(idNumber string) (*types.ShelfLocation, error) {
|
||||
url := fmt.Sprintf("%s/shelves/%s", c.Host, idNumber)
|
||||
req, _ := http.NewRequest("GET", url, bytes.NewBuffer([]byte{}))
|
||||
|
||||
resp, err := makeRequest[types.ShelfResponse](c, req)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return resp.ShelfLocation, nil
|
||||
}
|
||||
|
||||
func (c *APIClient) RetrieveAllCategories() ([]*types.Category, error) {
|
||||
url := fmt.Sprintf("%s/categories", c.Host)
|
||||
req, _ := http.NewRequest("GET", url, bytes.NewBuffer([]byte{}))
|
||||
@@ -143,3 +203,15 @@ func (c *APIClient) RetrieveAllCategories() ([]*types.Category, error) {
|
||||
|
||||
return resp.Categories, nil
|
||||
}
|
||||
|
||||
func (c *APIClient) RetrieveAllBuildings() ([]*types.Building, error) {
|
||||
url := fmt.Sprintf("%s/buildings", c.Host)
|
||||
req, _ := http.NewRequest("GET", url, bytes.NewBuffer([]byte{}))
|
||||
|
||||
resp, err := makeRequest[types.MultipleBuildingResponse](c, req)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return resp.Buildings, nil
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user