// Package swagger Code generated by swaggo/swag. DO NOT EDIT package swagger import "github.com/swaggo/swag" const docTemplate = `{ "schemes": {{ marshal .Schemes }}, "swagger": "2.0", "info": { "description": "{{escape .Description}}", "title": "{{.Title}}", "contact": {}, "version": "{{.Version}}" }, "host": "{{.Host}}", "basePath": "{{.BasePath}}", "paths": { "/api/v1/component-codes": { "get": { "description": "Retrieve a list of all component codes ordered by creation date", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "component-code" ], "summary": "List all component codes", "responses": { "200": { "description": "OK", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/definitions/models.ComponentCode" } } } } ] } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } }, "post": { "description": "Create a new component code with the provided details", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "component-code" ], "summary": "Create a new component code", "parameters": [ { "description": "Component code request body", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/requests.CreateComponentCodeRequest" } } ], "responses": { "201": { "description": "Created", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "$ref": "#/definitions/responses.CreateComponentCodeResponse" } } } ] } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } } }, "/api/v1/component-codes/{id}": { "get": { "description": "Retrieve a single component code using its unique identifier", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "component-code" ], "summary": "Get component code by ID", "parameters": [ { "type": "integer", "description": "Component code ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "$ref": "#/definitions/models.ComponentCode" } } } ] } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } }, "put": { "description": "Update an existing component code by its ID. Only non-empty fields will be updated.", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "component-code" ], "summary": "Update component code", "parameters": [ { "type": "integer", "description": "Component code ID", "name": "id", "in": "path", "required": true }, { "description": "Component code request body", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/requests.UpdateComponentCodeRequest" } } ], "responses": { "200": { "description": "OK", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "$ref": "#/definitions/responses.UpdateComponentCodeResponse" } } } ] } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } }, "delete": { "description": "Delete a component code by its unique identifier", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "component-code" ], "summary": "Delete component code", "parameters": [ { "type": "integer", "description": "Component code ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/response.SuccessResponse" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } } }, "/api/v1/component-items": { "get": { "description": "Retrieve a list of all component items ordered by creation date", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "component-item" ], "summary": "List all component items", "responses": { "200": { "description": "OK", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/definitions/models.ComponentItem" } } } } ] } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } }, "post": { "description": "Create a new component item with the provided details", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "component-item" ], "summary": "Create a new component item", "parameters": [ { "description": "Component item request body", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/requests.CreateComponentItemRequest" } } ], "responses": { "201": { "description": "Created", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "$ref": "#/definitions/responses.CreateComponentItemResponse" } } } ] } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } } }, "/api/v1/component-items/find/{componentId}": { "get": { "description": "Retrieve component items with full location details (container, shelf, cabinet, room, warehouse) for a given component ID", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "component-item" ], "summary": "Find component items by component ID", "parameters": [ { "type": "integer", "description": "Component ID", "name": "componentId", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/definitions/models.FindComponentItemResult" } } } } ] } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } } }, "/api/v1/component-items/{id}": { "get": { "description": "Retrieve a single component item using its unique identifier", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "component-item" ], "summary": "Get component item by ID", "parameters": [ { "type": "integer", "description": "Component item ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "$ref": "#/definitions/models.ComponentItem" } } } ] } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } }, "put": { "description": "Update an existing component item by its ID. Only non-empty fields will be updated.", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "component-item" ], "summary": "Update component item", "parameters": [ { "type": "integer", "description": "Component item ID", "name": "id", "in": "path", "required": true }, { "description": "Component item request body", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/requests.UpdateComponentItemRequest" } } ], "responses": { "200": { "description": "OK", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "$ref": "#/definitions/responses.UpdateComponentItemResponse" } } } ] } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } }, "delete": { "description": "Delete a component item by its unique identifier", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "component-item" ], "summary": "Delete component item", "parameters": [ { "type": "integer", "description": "Component item ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/response.SuccessResponse" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } } }, "/api/v1/component-items/{id}/status": { "put": { "description": "Change the status of a component item. Supports partial quantity change with automatic split/merge logic. A status history record is created automatically.", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "component-item" ], "summary": "Change component item status", "parameters": [ { "type": "integer", "description": "Component item ID", "name": "id", "in": "path", "required": true }, { "description": "Status change request body", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/requests.UpdateComponentItemStatusRequest" } } ], "responses": { "200": { "description": "OK", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "$ref": "#/definitions/responses.UpdateComponentItemStatusResponse" } } } ] } }, "400": { "description": "Validation error (e.g., changed_quantity \u003e quantity, status unchanged)", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "404": { "description": "Component item not found", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal server error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } } }, "/api/v1/component-types": { "get": { "description": "Retrieve a list of all component types ordered by creation date", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "component-type" ], "summary": "List all component types", "responses": { "200": { "description": "OK", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/definitions/models.ComponentType" } } } } ] } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } }, "post": { "description": "Create a new component type with the provided details", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "component-type" ], "summary": "Create a new component type", "parameters": [ { "description": "Component type request body", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/requests.CreateComponentTypeRequest" } } ], "responses": { "201": { "description": "Created", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "$ref": "#/definitions/responses.CreateComponentTypeResponse" } } } ] } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } } }, "/api/v1/component-types/{id}": { "get": { "description": "Retrieve a single component type using its unique identifier", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "component-type" ], "summary": "Get component type by ID", "parameters": [ { "type": "integer", "description": "Component type ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "$ref": "#/definitions/models.ComponentType" } } } ] } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } }, "put": { "description": "Update an existing component type by its ID. Only non-empty fields will be updated.", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "component-type" ], "summary": "Update component type", "parameters": [ { "type": "integer", "description": "Component type ID", "name": "id", "in": "path", "required": true }, { "description": "Component type request body", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/requests.UpdateComponentTypeRequest" } } ], "responses": { "200": { "description": "OK", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "$ref": "#/definitions/responses.UpdateComponentTypeResponse" } } } ] } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } }, "delete": { "description": "Delete a component type by its unique identifier", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "component-type" ], "summary": "Delete component type", "parameters": [ { "type": "integer", "description": "Component type ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/response.SuccessResponse" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } } }, "/api/v1/components": { "get": { "description": "Retrieve a list of all components ordered by creation date", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "component" ], "summary": "List all components", "responses": { "200": { "description": "OK", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/definitions/models.Component" } } } } ] } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } }, "post": { "description": "Create a new component with the provided details", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "component" ], "summary": "Create a new component", "parameters": [ { "description": "Component request body", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/requests.CreateComponentRequest" } } ], "responses": { "201": { "description": "Created", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "$ref": "#/definitions/responses.CreateComponentResponse" } } } ] } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } } }, "/api/v1/components/{id}": { "get": { "description": "Retrieve a single component using its unique identifier", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "component" ], "summary": "Get component by ID", "parameters": [ { "type": "integer", "description": "Component ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "$ref": "#/definitions/models.Component" } } } ] } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } }, "put": { "description": "Update an existing component by its ID. Only non-empty fields will be updated.", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "component" ], "summary": "Update component", "parameters": [ { "type": "integer", "description": "Component ID", "name": "id", "in": "path", "required": true }, { "description": "Component request body", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/requests.UpdateComponentRequest" } } ], "responses": { "200": { "description": "OK", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "$ref": "#/definitions/responses.UpdateComponentResponse" } } } ] } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } }, "delete": { "description": "Delete a component by its unique identifier", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "component" ], "summary": "Delete component", "parameters": [ { "type": "integer", "description": "Component ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/response.SuccessResponse" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } } }, "/auth/register": { "post": { "description": "Register with email, username and password", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "auth" ], "summary": "Register a new user", "parameters": [ { "description": "Register request", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/requests.BodyRegisterRequest" } } ], "responses": { "201": { "description": "Created", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "$ref": "#/definitions/responses.BodyRegisterResponse" } } } ] } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } } }, "/ping": { "get": { "description": "Check server is running", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "health" ], "summary": "Health check", "responses": { "200": { "description": "OK", "schema": { "type": "object", "additionalProperties": { "type": "string" } } } } } }, "/profile": { "get": { "security": [ { "BearerAuth": [] } ], "description": "Returns user info with roles and permissions (requires auth)", "produces": [ "application/json" ], "tags": [ "auth" ], "summary": "Get current user profile", "responses": { "200": { "description": "OK", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "$ref": "#/definitions/responses.BodyProfileResponse" } } } ] } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } } }, "/v1/alternative-components": { "get": { "description": "Retrieve a list of all alternative components", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "alternative-component" ], "summary": "List all alternative components", "responses": { "200": { "description": "OK", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/definitions/models.AlternativeComponent" } } } } ] } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } }, "post": { "description": "Create a new alternative component with the provided details", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "alternative-component" ], "summary": "Create a new alternative component", "parameters": [ { "description": "Alternative component request body", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/requests.CreateAlternativeComponentRequest" } } ], "responses": { "201": { "description": "Created", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "$ref": "#/definitions/responses.CreateAlternativeComponentResponse" } } } ] } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } } }, "/v1/alternative-components/{id}": { "get": { "description": "Retrieve a single alternative component using its unique identifier", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "alternative-component" ], "summary": "Get alternative component by ID", "parameters": [ { "type": "integer", "description": "Alternative component ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "$ref": "#/definitions/models.AlternativeComponent" } } } ] } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } }, "put": { "description": "Update an existing alternative component by its ID. Only non-empty fields will be updated.", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "alternative-component" ], "summary": "Update alternative component", "parameters": [ { "type": "integer", "description": "Alternative component ID", "name": "id", "in": "path", "required": true }, { "description": "Alternative component request body", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/requests.UpdateAlternativeComponentRequest" } } ], "responses": { "200": { "description": "OK", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "$ref": "#/definitions/responses.UpdateAlternativeComponentResponse" } } } ] } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } }, "delete": { "description": "Delete an alternative component by its unique identifier", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "alternative-component" ], "summary": "Delete alternative component", "parameters": [ { "type": "integer", "description": "Alternative component ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/response.SuccessResponse" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } } }, "/v1/cabinets": { "get": { "description": "Retrieve a list of all cabinets ordered by creation date", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "cabinet" ], "summary": "List all cabinets", "responses": { "200": { "description": "OK", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/definitions/models.Cabinet" } } } } ] } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } }, "post": { "description": "Create a new cabinet with the provided details", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "cabinet" ], "summary": "Create a new cabinet", "parameters": [ { "description": "Cabinet request body", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/requests.CreateCabinetRequest" } } ], "responses": { "201": { "description": "Created", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "$ref": "#/definitions/responses.CreateCabinetResponse" } } } ] } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } } }, "/v1/cabinets/{id}": { "get": { "description": "Retrieve a single cabinet using its unique identifier", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "cabinet" ], "summary": "Get cabinet by ID", "parameters": [ { "type": "integer", "description": "Cabinet ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "$ref": "#/definitions/models.Cabinet" } } } ] } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } }, "put": { "description": "Update an existing cabinet by its ID. Only non-empty fields will be updated.", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "cabinet" ], "summary": "Update cabinet", "parameters": [ { "type": "integer", "description": "Cabinet ID", "name": "id", "in": "path", "required": true }, { "description": "Cabinet request body", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/requests.UpdateCabinetRequest" } } ], "responses": { "200": { "description": "OK", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "$ref": "#/definitions/responses.UpdateCabinetResponse" } } } ] } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } }, "delete": { "description": "Delete a cabinet by its unique identifier", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "cabinet" ], "summary": "Delete cabinet", "parameters": [ { "type": "integer", "description": "Cabinet ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/response.SuccessResponse" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } } }, "/v1/containers": { "get": { "description": "Retrieve a list of all containers ordered by creation date", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "container" ], "summary": "List all containers", "responses": { "200": { "description": "OK", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/definitions/models.Container" } } } } ] } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } }, "post": { "description": "Create a new container with the provided details", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "container" ], "summary": "Create a new container", "parameters": [ { "description": "Container request body", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/requests.CreateContainerRequest" } } ], "responses": { "201": { "description": "Created", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "$ref": "#/definitions/responses.CreateContainerResponse" } } } ] } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } } }, "/v1/containers/{id}": { "get": { "description": "Retrieve a single container using its unique identifier", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "container" ], "summary": "Get container by ID", "parameters": [ { "type": "integer", "description": "Container ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "$ref": "#/definitions/models.Container" } } } ] } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } }, "put": { "description": "Update an existing container by its ID. Only non-empty fields will be updated.", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "container" ], "summary": "Update container", "parameters": [ { "type": "integer", "description": "Container ID", "name": "id", "in": "path", "required": true }, { "description": "Container request body", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/requests.UpdateContainerRequest" } } ], "responses": { "200": { "description": "OK", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "$ref": "#/definitions/responses.UpdateContainerResponse" } } } ] } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } }, "delete": { "description": "Delete a container by its unique identifier", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "container" ], "summary": "Delete container", "parameters": [ { "type": "integer", "description": "Container ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/response.SuccessResponse" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } } }, "/v1/dashboard/summary": { "get": { "description": "Retrieve dashboard summary with key statistics", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "dashboard" ], "summary": "Get dashboard summary", "responses": { "200": { "description": "OK", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "$ref": "#/definitions/models.DashboardSummary" } } } ] } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } } }, "/v1/invoice-config-items": { "get": { "description": "Retrieve a list of all invoice config items", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "invoice-config-item" ], "summary": "List all invoice config items", "responses": { "200": { "description": "OK", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/definitions/models.InvoiceConfigItem" } } } } ] } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } }, "post": { "description": "Create a new invoice config item with the provided details", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "invoice-config-item" ], "summary": "Create a new invoice config item", "parameters": [ { "description": "Invoice config item request body", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/requests.CreateInvoiceConfigItemRequest" } } ], "responses": { "201": { "description": "Created", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "$ref": "#/definitions/responses.CreateInvoiceConfigItemResponse" } } } ] } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } } }, "/v1/invoice-config-items/{id}": { "get": { "description": "Retrieve a single invoice config item using its unique identifier", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "invoice-config-item" ], "summary": "Get invoice config item by ID", "parameters": [ { "type": "integer", "description": "Invoice config item ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "$ref": "#/definitions/models.InvoiceConfigItem" } } } ] } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } }, "put": { "description": "Update an existing invoice config item by its ID. Only non-empty fields will be updated.", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "invoice-config-item" ], "summary": "Update invoice config item", "parameters": [ { "type": "integer", "description": "Invoice config item ID", "name": "id", "in": "path", "required": true }, { "description": "Invoice config item request body", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/requests.UpdateInvoiceConfigItemRequest" } } ], "responses": { "200": { "description": "OK", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "$ref": "#/definitions/responses.UpdateInvoiceConfigItemResponse" } } } ] } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } }, "delete": { "description": "Delete an invoice config item by its unique identifier", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "invoice-config-item" ], "summary": "Delete invoice config item", "parameters": [ { "type": "integer", "description": "Invoice config item ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/response.SuccessResponse" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } } }, "/v1/invoice-configs": { "get": { "description": "Retrieve a list of all invoice configs ordered by creation date", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "invoice-config" ], "summary": "List all invoice configs", "responses": { "200": { "description": "OK", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/definitions/models.InvoiceConfig" } } } } ] } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } }, "post": { "description": "Create a new invoice config with the provided details", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "invoice-config" ], "summary": "Create a new invoice config", "parameters": [ { "description": "Invoice config request body", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/requests.CreateInvoiceConfigRequest" } } ], "responses": { "201": { "description": "Created", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "$ref": "#/definitions/responses.CreateInvoiceConfigResponse" } } } ] } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } } }, "/v1/invoice-configs/{id}": { "get": { "description": "Retrieve a single invoice config using its unique identifier", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "invoice-config" ], "summary": "Get invoice config by ID", "parameters": [ { "type": "integer", "description": "Invoice config ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "$ref": "#/definitions/models.InvoiceConfig" } } } ] } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } }, "put": { "description": "Update an existing invoice config by its ID. Only non-empty fields will be updated.", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "invoice-config" ], "summary": "Update invoice config", "parameters": [ { "type": "integer", "description": "Invoice config ID", "name": "id", "in": "path", "required": true }, { "description": "Invoice config request body", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/requests.UpdateInvoiceConfigRequest" } } ], "responses": { "200": { "description": "OK", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "$ref": "#/definitions/responses.UpdateInvoiceConfigResponse" } } } ] } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } }, "delete": { "description": "Delete an invoice config by its unique identifier", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "invoice-config" ], "summary": "Delete invoice config", "parameters": [ { "type": "integer", "description": "Invoice config ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/response.SuccessResponse" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } } }, "/v1/invoices": { "get": { "description": "Retrieve a list of all invoices ordered by creation date", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "invoice" ], "summary": "List all invoices", "responses": { "200": { "description": "OK", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/definitions/models.Invoice" } } } } ] } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } }, "post": { "description": "Create a new invoice with the provided details", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "invoice" ], "summary": "Create a new invoice", "parameters": [ { "description": "Invoice request body", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/requests.CreateInvoiceRequest" } } ], "responses": { "201": { "description": "Created", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "$ref": "#/definitions/responses.CreateInvoiceResponse" } } } ] } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } } }, "/v1/invoices/{id}": { "get": { "description": "Retrieve a single invoice using its unique identifier", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "invoice" ], "summary": "Get invoice by ID", "parameters": [ { "type": "integer", "description": "Invoice ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "$ref": "#/definitions/models.Invoice" } } } ] } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } }, "put": { "description": "Update an existing invoice by its ID. Only non-empty fields will be updated.", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "invoice" ], "summary": "Update invoice", "parameters": [ { "type": "integer", "description": "Invoice ID", "name": "id", "in": "path", "required": true }, { "description": "Invoice request body", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/requests.UpdateInvoiceRequest" } } ], "responses": { "200": { "description": "OK", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "$ref": "#/definitions/responses.UpdateInvoiceResponse" } } } ] } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } }, "delete": { "description": "Delete an invoice by its unique identifier", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "invoice" ], "summary": "Delete invoice", "parameters": [ { "type": "integer", "description": "Invoice ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/response.SuccessResponse" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } } }, "/v1/rooms": { "get": { "description": "Retrieve a list of all rooms ordered by creation date", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "room" ], "summary": "List all rooms", "responses": { "200": { "description": "OK", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/definitions/models.Room" } } } } ] } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } }, "post": { "description": "Create a new room with the provided details", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "room" ], "summary": "Create a new room", "parameters": [ { "description": "Room request body", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/requests.CreateRoomRequest" } } ], "responses": { "201": { "description": "Created", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "$ref": "#/definitions/responses.CreateRoomResponse" } } } ] } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } } }, "/v1/rooms/{id}": { "get": { "description": "Retrieve a single room using its unique identifier", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "room" ], "summary": "Get room by ID", "parameters": [ { "type": "integer", "description": "Room ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "$ref": "#/definitions/models.Room" } } } ] } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } }, "put": { "description": "Update an existing room by its ID. Only non-empty fields will be updated.", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "room" ], "summary": "Update room", "parameters": [ { "type": "integer", "description": "Room ID", "name": "id", "in": "path", "required": true }, { "description": "Room request body", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/requests.UpdateRoomRequest" } } ], "responses": { "200": { "description": "OK", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "$ref": "#/definitions/responses.UpdateRoomResponse" } } } ] } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } }, "delete": { "description": "Delete a room by its unique identifier", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "room" ], "summary": "Delete room", "parameters": [ { "type": "integer", "description": "Room ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/response.SuccessResponse" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } } }, "/v1/shelves": { "get": { "description": "Retrieve a list of all shelves ordered by creation date", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "shelve" ], "summary": "List all shelves", "responses": { "200": { "description": "OK", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/definitions/models.Shelve" } } } } ] } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } }, "post": { "description": "Create a new shelve with the provided details", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "shelve" ], "summary": "Create a new shelve", "parameters": [ { "description": "Shelve request body", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/requests.CreateShelveRequest" } } ], "responses": { "201": { "description": "Created", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "$ref": "#/definitions/responses.CreateShelveResponse" } } } ] } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } } }, "/v1/shelves/{id}": { "get": { "description": "Retrieve a single shelve using its unique identifier", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "shelve" ], "summary": "Get shelve by ID", "parameters": [ { "type": "integer", "description": "Shelve ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "$ref": "#/definitions/models.Shelve" } } } ] } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } }, "put": { "description": "Update an existing shelve by its ID. Only non-empty fields will be updated.", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "shelve" ], "summary": "Update shelve", "parameters": [ { "type": "integer", "description": "Shelve ID", "name": "id", "in": "path", "required": true }, { "description": "Shelve request body", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/requests.UpdateShelveRequest" } } ], "responses": { "200": { "description": "OK", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "$ref": "#/definitions/responses.UpdateShelveResponse" } } } ] } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } }, "delete": { "description": "Delete a shelve by its unique identifier", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "shelve" ], "summary": "Delete shelve", "parameters": [ { "type": "integer", "description": "Shelve ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/response.SuccessResponse" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } } }, "/v1/warehouses": { "get": { "description": "Retrieve a list of all warehouses ordered by creation date", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "warehouse" ], "summary": "List all warehouses", "responses": { "200": { "description": "OK", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/definitions/models.Warehouse" } } } } ] } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } }, "post": { "description": "Create a new warehouse with the provided details", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "warehouse" ], "summary": "Create a new warehouse", "parameters": [ { "description": "Warehouse request body", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/requests.CreateWarehouseRequest" } } ], "responses": { "201": { "description": "Created", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "$ref": "#/definitions/responses.CreateWarehouseResponse" } } } ] } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } } }, "/v1/warehouses/{id}": { "get": { "description": "Retrieve a single warehouse using its unique identifier", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "warehouse" ], "summary": "Get warehouse by ID", "parameters": [ { "type": "integer", "description": "Warehouse ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "$ref": "#/definitions/models.Warehouse" } } } ] } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } }, "put": { "description": "Update an existing warehouse by its ID with the provided details", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "warehouse" ], "summary": "Update warehouse", "parameters": [ { "type": "integer", "description": "Warehouse ID", "name": "id", "in": "path", "required": true }, { "description": "Warehouse request body", "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/requests.UpdateWarehouseRequest" } } ], "responses": { "200": { "description": "OK", "schema": { "allOf": [ { "$ref": "#/definitions/response.SuccessResponse" }, { "type": "object", "properties": { "data": { "$ref": "#/definitions/responses.UpdateWarehouseResponse" } } } ] } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } }, "delete": { "description": "Delete a warehouse by its unique identifier", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "warehouse" ], "summary": "Delete warehouse", "parameters": [ { "type": "integer", "description": "Warehouse ID", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/response.SuccessResponse" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/response.ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/response.ErrorResponse" } } } } } }, "definitions": { "models.AbnormalAlert": { "type": "object", "properties": { "count": { "type": "integer" }, "status": { "type": "string" } } }, "models.AlternativeComponent": { "type": "object", "properties": { "alternativeComponentId": { "type": "integer" }, "conversionRatio": { "type": "string" }, "id": { "type": "integer" }, "invoiceConfigItemId": { "type": "integer" }, "metadata": { "type": "array", "items": { "type": "integer" } }, "note": { "type": "string" }, "priority": { "type": "integer" } } }, "models.Cabinet": { "type": "object", "properties": { "createdAt": { "type": "string" }, "description": { "type": "string" }, "id": { "type": "integer" }, "name": { "type": "string" }, "roomId": { "type": "integer" }, "updatedAt": { "type": "string" } } }, "models.Component": { "type": "object", "properties": { "componentTypeId": { "type": "integer" }, "createdAt": { "type": "string" }, "description": { "type": "string" }, "id": { "type": "integer" }, "metadata": { "type": "array", "items": { "type": "integer" } }, "minQuantity": { "type": "integer" }, "name": { "type": "string" }, "totalQuantity": { "type": "integer" }, "unit": { "type": "string" }, "updatedAt": { "type": "string" } } }, "models.ComponentCode": { "type": "object", "properties": { "code": { "type": "string" }, "codeType": { "type": "string" }, "componentId": { "type": "integer" }, "createdAt": { "type": "string" }, "id": { "type": "integer" }, "isPrimary": { "type": "boolean" }, "metadata": { "type": "array", "items": { "type": "integer" } } } }, "models.ComponentItem": { "type": "object", "properties": { "componentId": { "type": "integer" }, "containerId": { "type": "integer" }, "createdAt": { "type": "string" }, "id": { "type": "integer" }, "metadata": { "type": "array", "items": { "type": "integer" } }, "quantity": { "type": "integer" }, "status": { "type": "string" }, "updatedAt": { "type": "string" } } }, "models.ComponentType": { "type": "object", "properties": { "createdAt": { "type": "string" }, "description": { "type": "string" }, "id": { "type": "integer" }, "metadata": { "type": "array", "items": { "type": "integer" } }, "name": { "type": "string" }, "updatedAt": { "type": "string" } } }, "models.Container": { "type": "object", "properties": { "containerType": { "type": "string" }, "createdAt": { "type": "string" }, "description": { "type": "string" }, "id": { "type": "integer" }, "maxCapacity": { "type": "integer" }, "metadata": { "type": "array", "items": { "type": "integer" } }, "name": { "type": "string" }, "shelfId": { "type": "integer" }, "updatedAt": { "type": "string" } } }, "models.ContainerStats": { "type": "object", "properties": { "emptyContainers": { "type": "integer" }, "totalContainers": { "type": "integer" } } }, "models.DashboardSummary": { "type": "object", "properties": { "abnormalAlerts": { "type": "array", "items": { "$ref": "#/definitions/models.AbnormalAlert" } }, "emptyContainers": { "$ref": "#/definitions/models.ContainerStats" }, "lowStockComponents": { "type": "integer" }, "pendingInvoices": { "type": "integer" }, "todayInvoices": { "type": "array", "items": { "$ref": "#/definitions/models.TodayInvoiceCount" } }, "totalComponents": { "$ref": "#/definitions/models.TotalComponentStats" } } }, "models.FindComponentItemResult": { "type": "object", "properties": { "cabinetName": { "type": "string" }, "componentName": { "type": "string" }, "containerName": { "type": "string" }, "containerType": { "type": "string" }, "quantity": { "type": "integer" }, "roomName": { "type": "string" }, "shelfName": { "type": "string" }, "status": { "type": "string" }, "typeName": { "type": "string" }, "warehouseName": { "type": "string" } } }, "models.Invoice": { "type": "object", "properties": { "approvedBy": { "type": "string" }, "completedAt": { "type": "string" }, "createdAt": { "type": "string" }, "createdBy": { "type": "string" }, "id": { "type": "integer" }, "invoiceCode": { "type": "string" }, "invoiceConfigId": { "type": "integer" }, "metadata": { "type": "array", "items": { "type": "integer" } }, "note": { "type": "string" }, "status": { "type": "string" }, "totalItems": { "type": "integer" }, "type": { "type": "string" }, "updatedAt": { "type": "string" } } }, "models.InvoiceConfig": { "type": "object", "properties": { "createdAt": { "type": "string" }, "description": { "type": "string" }, "id": { "type": "integer" }, "isActive": { "type": "boolean" }, "metadata": { "type": "array", "items": { "type": "integer" } }, "name": { "type": "string" }, "type": { "type": "string" }, "updatedAt": { "type": "string" } } }, "models.InvoiceConfigItem": { "type": "object", "properties": { "allowAlternative": { "type": "boolean" }, "componentId": { "type": "integer" }, "id": { "type": "integer" }, "invoiceConfigId": { "type": "integer" }, "metadata": { "type": "array", "items": { "type": "integer" } }, "note": { "type": "string" }, "priorityOrder": { "type": "integer" }, "requiredQuantity": { "type": "integer" } } }, "models.Room": { "type": "object", "properties": { "createdAt": { "type": "string" }, "description": { "type": "string" }, "id": { "type": "integer" }, "name": { "type": "string" }, "updatedAt": { "type": "string" }, "warehouseId": { "type": "integer" } } }, "models.Shelve": { "type": "object", "properties": { "cabinetId": { "type": "integer" }, "createdAt": { "type": "string" }, "description": { "type": "string" }, "id": { "type": "integer" }, "levelIndex": { "type": "integer" }, "name": { "type": "string" }, "updatedAt": { "type": "string" } } }, "models.TodayInvoiceCount": { "type": "object", "properties": { "count": { "type": "integer" }, "type": { "type": "string" } } }, "models.TotalComponentStats": { "type": "object", "properties": { "totalQuantity": { "type": "integer" }, "totalTypes": { "type": "integer" } } }, "models.Warehouse": { "type": "object", "properties": { "address": { "type": "string" }, "createdAt": { "type": "string" }, "description": { "type": "string" }, "id": { "type": "integer" }, "name": { "type": "string" }, "updatedAt": { "type": "string" } } }, "requests.BodyRegisterRequest": { "type": "object", "required": [ "email", "password", "username" ], "properties": { "email": { "type": "string" }, "fullName": { "type": "string" }, "password": { "type": "string", "minLength": 8 }, "username": { "type": "string" } } }, "requests.CreateAlternativeComponentRequest": { "type": "object", "required": [ "alternativeComponentId", "conversionRatio", "invoiceConfigItemId", "priority" ], "properties": { "alternativeComponentId": { "type": "integer" }, "conversionRatio": { "type": "string" }, "invoiceConfigItemId": { "type": "integer" }, "note": { "type": "string" }, "priority": { "type": "integer" } } }, "requests.CreateCabinetRequest": { "type": "object", "required": [ "name", "roomId" ], "properties": { "description": { "type": "string" }, "name": { "type": "string" }, "roomId": { "type": "integer" } } }, "requests.CreateComponentCodeRequest": { "type": "object", "required": [ "code", "componentId" ], "properties": { "code": { "type": "string" }, "codeType": { "type": "string" }, "componentId": { "type": "integer" }, "isPrimary": { "type": "boolean" }, "metadata": { "type": "array", "items": { "type": "integer" } } } }, "requests.CreateComponentItemRequest": { "type": "object", "required": [ "componentId", "containerId", "quantity", "status" ], "properties": { "componentId": { "type": "integer" }, "containerId": { "type": "integer" }, "metadata": { "type": "array", "items": { "type": "integer" } }, "quantity": { "type": "integer" }, "status": { "type": "string" } } }, "requests.CreateComponentRequest": { "type": "object", "required": [ "componentTypeId", "minQuantity", "name", "unit" ], "properties": { "componentTypeId": { "type": "integer" }, "description": { "type": "string" }, "metadata": { "type": "array", "items": { "type": "integer" } }, "minQuantity": { "type": "integer" }, "name": { "type": "string" }, "unit": { "type": "string" } } }, "requests.CreateComponentTypeRequest": { "type": "object", "required": [ "name" ], "properties": { "description": { "type": "string" }, "metadata": { "type": "array", "items": { "type": "integer" } }, "name": { "type": "string" } } }, "requests.CreateContainerRequest": { "type": "object", "required": [ "containerType", "name", "shelfId" ], "properties": { "containerType": { "type": "string" }, "description": { "type": "string" }, "maxCapacity": { "type": "integer" }, "metadata": { "type": "array", "items": { "type": "integer" } }, "name": { "type": "string" }, "shelfId": { "type": "integer" } } }, "requests.CreateInvoiceConfigItemRequest": { "type": "object", "required": [ "componentId", "invoiceConfigId", "priorityOrder", "requiredQuantity" ], "properties": { "allowAlternative": { "type": "boolean" }, "componentId": { "type": "integer" }, "invoiceConfigId": { "type": "integer" }, "note": { "type": "string" }, "priorityOrder": { "type": "integer" }, "requiredQuantity": { "type": "integer" } } }, "requests.CreateInvoiceConfigRequest": { "type": "object", "required": [ "name", "type" ], "properties": { "description": { "type": "string" }, "isActive": { "type": "boolean" }, "name": { "type": "string" }, "type": { "type": "string" } } }, "requests.CreateInvoiceRequest": { "type": "object", "required": [ "status", "type" ], "properties": { "approvedBy": { "type": "string" }, "createdBy": { "type": "string" }, "invoiceConfigId": { "type": "integer" }, "note": { "type": "string" }, "status": { "type": "string" }, "totalItems": { "type": "integer" }, "type": { "type": "string" } } }, "requests.CreateRoomRequest": { "type": "object", "required": [ "name", "warehouseId" ], "properties": { "description": { "type": "string" }, "name": { "type": "string" }, "warehouseId": { "type": "integer" } } }, "requests.CreateShelveRequest": { "type": "object", "required": [ "cabinetId", "levelIndex", "name" ], "properties": { "cabinetId": { "type": "integer" }, "description": { "type": "string" }, "levelIndex": { "type": "integer" }, "name": { "type": "string" } } }, "requests.CreateWarehouseRequest": { "type": "object", "required": [ "address", "name" ], "properties": { "address": { "type": "string" }, "description": { "type": "string" }, "name": { "type": "string" } } }, "requests.UpdateAlternativeComponentRequest": { "type": "object", "properties": { "alternativeComponentId": { "type": "integer" }, "conversionRatio": { "type": "string" }, "invoiceConfigItemId": { "type": "integer" }, "note": { "type": "string" }, "priority": { "type": "integer" } } }, "requests.UpdateCabinetRequest": { "type": "object", "properties": { "description": { "type": "string" }, "name": { "type": "string" } } }, "requests.UpdateComponentCodeRequest": { "type": "object", "properties": { "code": { "type": "string" }, "codeType": { "type": "string" }, "componentId": { "type": "integer" }, "isPrimary": { "type": "boolean" }, "metadata": { "type": "array", "items": { "type": "integer" } } } }, "requests.UpdateComponentItemRequest": { "type": "object", "properties": { "componentId": { "type": "integer" }, "containerId": { "type": "integer" }, "metadata": { "type": "array", "items": { "type": "integer" } } } }, "requests.UpdateComponentItemStatusRequest": { "type": "object", "required": [ "status" ], "properties": { "changedQuantity": { "type": "integer" }, "note": { "type": "string" }, "status": { "type": "string", "enum": [ "normal", "damaged", "long_unused", "expired", "pending_inspection" ] } } }, "requests.UpdateComponentRequest": { "type": "object", "properties": { "componentTypeId": { "type": "integer" }, "description": { "type": "string" }, "metadata": { "type": "array", "items": { "type": "integer" } }, "minQuantity": { "type": "integer" }, "name": { "type": "string" }, "unit": { "type": "string" } } }, "requests.UpdateComponentTypeRequest": { "type": "object", "properties": { "description": { "type": "string" }, "metadata": { "type": "array", "items": { "type": "integer" } }, "name": { "type": "string" } } }, "requests.UpdateContainerRequest": { "type": "object", "properties": { "containerType": { "type": "string" }, "description": { "type": "string" }, "maxCapacity": { "type": "integer" }, "metadata": { "type": "array", "items": { "type": "integer" } }, "name": { "type": "string" } } }, "requests.UpdateInvoiceConfigItemRequest": { "type": "object", "properties": { "allowAlternative": { "type": "boolean" }, "note": { "type": "string" }, "priorityOrder": { "type": "integer" }, "requiredQuantity": { "type": "integer" } } }, "requests.UpdateInvoiceConfigRequest": { "type": "object", "properties": { "description": { "type": "string" }, "isActive": { "type": "boolean" }, "name": { "type": "string" }, "type": { "type": "string" } } }, "requests.UpdateInvoiceRequest": { "type": "object", "properties": { "invoiceConfigId": { "type": "integer" }, "note": { "type": "string" }, "status": { "type": "string" }, "totalItems": { "type": "integer" }, "type": { "type": "string" } } }, "requests.UpdateRoomRequest": { "type": "object", "properties": { "description": { "type": "string" }, "name": { "type": "string" } } }, "requests.UpdateShelveRequest": { "type": "object", "properties": { "description": { "type": "string" }, "levelIndex": { "type": "integer" }, "name": { "type": "string" } } }, "requests.UpdateWarehouseRequest": { "type": "object", "properties": { "address": { "type": "string" }, "description": { "type": "string" }, "name": { "type": "string" } } }, "response.ErrorResponse": { "type": "object", "properties": { "code": { "type": "integer" }, "message": { "type": "string" }, "now": { "type": "integer" }, "status": { "type": "integer" } } }, "response.SuccessResponse": { "type": "object", "properties": { "data": {}, "message": { "type": "string" }, "option": {}, "reason_status_code": { "type": "string" }, "status": { "type": "integer" } } }, "responses.BodyProfileResponse": { "type": "object", "properties": { "info": { "$ref": "#/definitions/responses.UserInfoResponse" }, "permissions": { "type": "array", "items": { "type": "string" } }, "roles": { "type": "array", "items": { "$ref": "#/definitions/responses.RoleItem" } } } }, "responses.BodyRegisterResponse": { "type": "object", "properties": { "id": { "type": "string" } } }, "responses.CreateAlternativeComponentResponse": { "type": "object", "properties": { "id": { "type": "integer" } } }, "responses.CreateCabinetResponse": { "type": "object", "properties": { "id": { "type": "integer" } } }, "responses.CreateComponentCodeResponse": { "type": "object", "properties": { "id": { "type": "integer" } } }, "responses.CreateComponentItemResponse": { "type": "object", "properties": { "id": { "type": "integer" } } }, "responses.CreateComponentResponse": { "type": "object", "properties": { "id": { "type": "integer" } } }, "responses.CreateComponentTypeResponse": { "type": "object", "properties": { "id": { "type": "integer" } } }, "responses.CreateContainerResponse": { "type": "object", "properties": { "id": { "type": "integer" } } }, "responses.CreateInvoiceConfigItemResponse": { "type": "object", "properties": { "id": { "type": "integer" } } }, "responses.CreateInvoiceConfigResponse": { "type": "object", "properties": { "id": { "type": "integer" } } }, "responses.CreateInvoiceResponse": { "type": "object", "properties": { "id": { "type": "integer" }, "invoiceCode": { "type": "string" } } }, "responses.CreateRoomResponse": { "type": "object", "properties": { "id": { "type": "integer" } } }, "responses.CreateShelveResponse": { "type": "object", "properties": { "id": { "type": "integer" } } }, "responses.CreateWarehouseResponse": { "type": "object", "properties": { "id": { "type": "integer" } } }, "responses.RoleItem": { "type": "object", "properties": { "description": { "type": "string" }, "id": { "type": "string" }, "name": { "type": "string" } } }, "responses.UpdateAlternativeComponentResponse": { "type": "object", "properties": { "alternativeComponentId": { "type": "integer" }, "conversionRatio": { "type": "string" }, "id": { "type": "integer" }, "invoiceConfigItemId": { "type": "integer" }, "note": { "type": "string" }, "priority": { "type": "integer" } } }, "responses.UpdateCabinetResponse": { "type": "object", "properties": { "description": { "type": "string" }, "id": { "type": "integer" }, "name": { "type": "string" }, "roomId": { "type": "integer" } } }, "responses.UpdateComponentCodeResponse": { "type": "object", "properties": { "code": { "type": "string" }, "codeType": { "type": "string" }, "componentId": { "type": "integer" }, "id": { "type": "integer" }, "isPrimary": { "type": "boolean" } } }, "responses.UpdateComponentItemResponse": { "type": "object", "properties": { "componentId": { "type": "integer" }, "containerId": { "type": "integer" }, "id": { "type": "integer" }, "metadata": { "type": "array", "items": { "type": "integer" } }, "quantity": { "type": "integer" }, "status": { "type": "string" } } }, "responses.UpdateComponentItemStatusResponse": { "type": "object", "properties": { "changedQuantity": { "type": "integer" }, "historyId": { "type": "integer" }, "id": { "type": "integer" }, "mergedComponentItemId": { "type": "integer" }, "newComponentItemId": { "type": "integer" }, "newStatus": { "type": "string" }, "oldStatus": { "type": "string" } } }, "responses.UpdateComponentResponse": { "type": "object", "properties": { "componentTypeId": { "type": "integer" }, "description": { "type": "string" }, "id": { "type": "integer" }, "minQuantity": { "type": "integer" }, "name": { "type": "string" }, "unit": { "type": "string" } } }, "responses.UpdateComponentTypeResponse": { "type": "object", "properties": { "description": { "type": "string" }, "id": { "type": "integer" }, "name": { "type": "string" } } }, "responses.UpdateContainerResponse": { "type": "object", "properties": { "containerType": { "type": "string" }, "description": { "type": "string" }, "id": { "type": "integer" }, "maxCapacity": { "type": "integer" }, "metadata": { "type": "array", "items": { "type": "integer" } }, "name": { "type": "string" }, "shelfId": { "type": "integer" } } }, "responses.UpdateInvoiceConfigItemResponse": { "type": "object", "properties": { "allowAlternative": { "type": "boolean" }, "componentId": { "type": "integer" }, "id": { "type": "integer" }, "invoiceConfigId": { "type": "integer" }, "note": { "type": "string" }, "priorityOrder": { "type": "integer" }, "requiredQuantity": { "type": "integer" } } }, "responses.UpdateInvoiceConfigResponse": { "type": "object", "properties": { "description": { "type": "string" }, "id": { "type": "integer" }, "isActive": { "type": "boolean" }, "name": { "type": "string" }, "type": { "type": "string" } } }, "responses.UpdateInvoiceResponse": { "type": "object", "properties": { "id": { "type": "integer" }, "invoiceCode": { "type": "string" }, "invoiceConfigId": { "type": "integer" }, "note": { "type": "string" }, "status": { "type": "string" }, "totalItems": { "type": "integer" }, "type": { "type": "string" } } }, "responses.UpdateRoomResponse": { "type": "object", "properties": { "description": { "type": "string" }, "id": { "type": "integer" }, "name": { "type": "string" }, "warehouseId": { "type": "integer" } } }, "responses.UpdateShelveResponse": { "type": "object", "properties": { "cabinetId": { "type": "integer" }, "description": { "type": "string" }, "id": { "type": "integer" }, "levelIndex": { "type": "integer" }, "name": { "type": "string" } } }, "responses.UpdateWarehouseResponse": { "type": "object", "properties": { "address": { "type": "string" }, "description": { "type": "string" }, "id": { "type": "integer" }, "name": { "type": "string" } } }, "responses.UserInfoResponse": { "type": "object", "properties": { "email": { "type": "string" }, "fullName": { "type": "string" }, "id": { "type": "string" }, "isActive": { "type": "boolean" }, "username": { "type": "string" } } } } }` // SwaggerInfo holds exported Swagger Info so clients can modify it var SwaggerInfo = &swag.Spec{ Version: "1.0", Host: "localhost:3000", BasePath: "/api/v1", Schemes: []string{}, Title: "Warehouse Management API", Description: "This is the Warehouse Management API server.", InfoInstanceName: "swagger", SwaggerTemplate: docTemplate, LeftDelim: "{{", RightDelim: "}}", } func init() { swag.Register(SwaggerInfo.InstanceName(), SwaggerInfo) }