{ "openapi": "3.0.1", "info": { "title": "默认模块", "description": "", "version": "1.0.0" }, "tags": [], "paths": { "/api/v1/resource/list": { "get": { "summary": "分页查询资源列表", "deprecated": false, "description": "", "tags": [], "parameters": [ { "name": "pageNum", "in": "query", "description": "", "required": true, "example": 1, "schema": { "type": "integer" } }, { "name": "pageSize", "in": "query", "description": "", "required": true, "example": 10, "schema": { "type": "integer" } }, { "name": "projectId", "in": "query", "description": "", "required": false, "schema": { "type": "integer" } }, { "name": "resourceType", "in": "query", "description": "", "required": false, "schema": { "type": "string" } }, { "name": "status", "in": "query", "description": "", "required": false, "schema": { "type": "string" } }, { "name": "keyword", "in": "query", "description": "", "required": false, "schema": { "type": "string" } }, { "name": "Authorization", "in": "header", "description": "", "example": "Bearer b35c6f5b-bc0b-4652-bef2-eca04a5cdd95", "schema": { "type": "string", "default": "Bearer b35c6f5b-bc0b-4652-bef2-eca04a5cdd95" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BaseResponsePageMapObject" } } } } }, "security": [] } }, "/api/v1/resource/{id}": { "get": { "summary": "根据ID查询资源详情", "deprecated": false, "description": "", "tags": [], "parameters": [ { "name": "id", "in": "path", "description": "", "required": true, "schema": { "type": "integer" } }, { "name": "Authorization", "in": "header", "description": "", "example": "Bearer b35c6f5b-bc0b-4652-bef2-eca04a5cdd95", "schema": { "type": "string", "default": "Bearer b35c6f5b-bc0b-4652-bef2-eca04a5cdd95" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BaseResponseResource" } } } } }, "security": [] }, "delete": { "summary": "删除资源", "deprecated": false, "description": "", "tags": [], "parameters": [ { "name": "id", "in": "path", "description": "", "required": true, "schema": { "type": "integer" } }, { "name": "Authorization", "in": "header", "description": "", "example": "Bearer b35c6f5b-bc0b-4652-bef2-eca04a5cdd95", "schema": { "type": "string", "default": "Bearer b35c6f5b-bc0b-4652-bef2-eca04a5cdd95" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BaseResponseVoid" } } } } }, "security": [] } }, "/api/v1/resource": { "post": { "summary": "新增资源", "deprecated": false, "description": "", "tags": [], "parameters": [ { "name": "Authorization", "in": "header", "description": "", "example": "Bearer b35c6f5b-bc0b-4652-bef2-eca04a5cdd95", "schema": { "type": "string", "default": "Bearer b35c6f5b-bc0b-4652-bef2-eca04a5cdd95" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Resource", "description": "" } } } }, "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BaseResponseLong" } } } } }, "security": [] }, "put": { "summary": "修改资源", "deprecated": false, "description": "", "tags": [], "parameters": [ { "name": "Authorization", "in": "header", "description": "", "example": "Bearer b35c6f5b-bc0b-4652-bef2-eca04a5cdd95", "schema": { "type": "string", "default": "Bearer b35c6f5b-bc0b-4652-bef2-eca04a5cdd95" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ResourceUpdateRequest", "description": "" } } } }, "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BaseResponseVoid" } } } } }, "security": [] } }, "/api/v1/resource/{id}/status": { "put": { "summary": "更新资源状态", "deprecated": false, "description": "", "tags": [], "parameters": [ { "name": "id", "in": "path", "description": "", "required": true, "schema": { "type": "integer" } }, { "name": "status", "in": "query", "description": "", "required": true, "schema": { "type": "string" } }, { "name": "Authorization", "in": "header", "description": "", "example": "Bearer b35c6f5b-bc0b-4652-bef2-eca04a5cdd95", "schema": { "type": "string", "default": "Bearer b35c6f5b-bc0b-4652-bef2-eca04a5cdd95" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BaseResponseVoid" } } } } }, "security": [] } }, "/api/v1/resource/{id}/quantity": { "put": { "summary": "更新资源数量", "deprecated": false, "description": "", "tags": [], "parameters": [ { "name": "id", "in": "path", "description": "", "required": true, "schema": { "type": "integer" } }, { "name": "actualQuantity", "in": "query", "description": "", "required": true, "schema": { "type": "string" } }, { "name": "Authorization", "in": "header", "description": "", "example": "Bearer b35c6f5b-bc0b-4652-bef2-eca04a5cdd95", "schema": { "type": "string", "default": "Bearer b35c6f5b-bc0b-4652-bef2-eca04a5cdd95" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BaseResponseVoid" } } } } }, "security": [] } }, "/api/v1/resource/stats/budget": { "get": { "summary": "查询资源预算汇总", "deprecated": false, "description": "", "tags": [], "parameters": [ { "name": "projectId", "in": "query", "description": "", "required": true, "schema": { "type": "integer" } }, { "name": "Authorization", "in": "header", "description": "", "example": "Bearer b35c6f5b-bc0b-4652-bef2-eca04a5cdd95", "schema": { "type": "string", "default": "Bearer b35c6f5b-bc0b-4652-bef2-eca04a5cdd95" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BaseResponseListMapObject" } } } } }, "security": [] } }, "/api/v1/resource/pending-arrival": { "get": { "summary": "查询即将到位的资源", "deprecated": false, "description": "", "tags": [], "parameters": [ { "name": "projectId", "in": "query", "description": "", "required": true, "schema": { "type": "integer" } }, { "name": "days", "in": "query", "description": "", "required": true, "example": 7, "schema": { "type": "integer" } }, { "name": "Authorization", "in": "header", "description": "", "example": "Bearer b35c6f5b-bc0b-4652-bef2-eca04a5cdd95", "schema": { "type": "string", "default": "Bearer b35c6f5b-bc0b-4652-bef2-eca04a5cdd95" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BaseResponseListResource" } } } } }, "security": [] } }, "/api/v1/resource/pending-approval": { "get": { "summary": "查询待审批的资源申请", "deprecated": false, "description": "", "tags": [], "parameters": [ { "name": "projectId", "in": "query", "description": "", "required": false, "schema": { "type": "integer" } }, { "name": "Authorization", "in": "header", "description": "", "example": "Bearer b35c6f5b-bc0b-4652-bef2-eca04a5cdd95", "schema": { "type": "string", "default": "Bearer b35c6f5b-bc0b-4652-bef2-eca04a5cdd95" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BaseResponseListMapObject" } } } } }, "security": [] } } }, "components": { "schemas": { "OrderItem": { "type": "object", "properties": { "column": { "type": "string", "description": "需要进行排序的字段" }, "asc": { "type": "boolean", "description": "是否正序排列,默认 true", "default": true } } }, "MapObject": { "type": "object", "properties": { "key": { "$ref": "#/components/schemas/key" } } }, "PageMapObject": { "type": "object", "properties": { "records": { "type": "array", "items": { "$ref": "#/components/schemas/MapObject" }, "description": "查询数据列表", "default": "Collections.emptyList()" }, "total": { "type": "integer", "description": "总数", "format": "int64", "default": 0 }, "size": { "type": "integer", "description": "每页显示条数,默认 10", "format": "int64", "default": 10 }, "current": { "type": "integer", "description": "当前页", "format": "int64", "default": 1 }, "orders": { "type": "array", "items": { "$ref": "#/components/schemas/OrderItem", "description": "com.baomidou.mybatisplus.core.metadata.OrderItem" }, "description": "排序字段信息", "default": "new ArrayList<>()" }, "optimizeCountSql": { "type": "boolean", "description": "自动优化 COUNT SQL", "default": true }, "searchCount": { "type": "boolean", "description": "是否进行 count 查询", "default": true }, "optimizeJoinOfCountSql": { "type": "boolean", "description": "{@link #optimizeJoinOfCountSql()}", "default": true }, "maxLimit": { "type": "integer", "description": "单页分页条数限制", "format": "int64" }, "countId": { "type": "string", "description": "countId" }, "pages": { "type": "integer", "format": "int64" } } }, "BaseResponsePageMapObject": { "type": "object", "properties": { "code": { "type": "integer", "description": "" }, "data": { "$ref": "#/components/schemas/PageMapObject", "description": "" }, "message": { "type": "string", "description": "" } } }, "Resource": { "type": "object", "properties": { "id": { "type": "integer", "description": "", "format": "int64" }, "resourceCode": { "type": "string", "description": "资源编号" }, "projectId": { "type": "integer", "description": "项目ID", "format": "int64" }, "resourceType": { "type": "string", "description": "资源类型: human-人力, material-物料, equipment-设备, software-软件, finance-资金, other-其他" }, "resourceName": { "type": "string", "description": "资源名称" }, "description": { "type": "string", "description": "资源描述" }, "specification": { "type": "string", "description": "规格型号" }, "unit": { "type": "string", "description": "单位" }, "planQuantity": { "type": "number", "description": "计划数量" }, "actualQuantity": { "type": "number", "description": "实际数量" }, "unitPrice": { "type": "number", "description": "单价" }, "currency": { "type": "string", "description": "币种" }, "supplier": { "type": "string", "description": "供应商/来源" }, "status": { "type": "string", "description": "状态: planned-计划中, requested-已申请, approved-已批准, procuring-采购中, arrived-已到货, in_use-使用中, completed-已完成" }, "planArriveDate": { "type": "string", "description": "计划到位日期" }, "actualArriveDate": { "type": "string", "description": "实际到位日期" }, "responsibleId": { "type": "integer", "description": "负责人ID", "format": "int64" }, "location": { "type": "string", "description": "存放位置" }, "tags": { "type": "array", "items": { "type": "string" }, "description": "标签" }, "extraData": { "type": "object", "properties": {}, "description": "扩展数据" }, "createBy": { "type": "integer", "description": "创建人", "format": "int64" }, "createTime": { "type": "string", "description": "创建时间" }, "updateBy": { "type": "integer", "description": "更新人", "format": "int64" }, "updateTime": { "type": "string", "description": "更新时间" }, "deleted": { "type": "integer", "description": "删除标记" } } }, "key": { "type": "object", "properties": {} }, "BaseResponseLong": { "type": "object", "properties": { "code": { "type": "integer", "description": "" }, "data": { "type": "integer", "description": "", "format": "int64" }, "message": { "type": "string", "description": "" } } }, "BaseResponseResource": { "type": "object", "properties": { "code": { "type": "integer", "description": "" }, "data": { "$ref": "#/components/schemas/Resource", "description": "" }, "message": { "type": "string", "description": "" } } }, "BaseResponseVoid": { "type": "object", "properties": { "code": { "type": "integer", "description": "" }, "data": { "description": "", "type": "null" }, "message": { "type": "string", "description": "" } } }, "ResourceUpdateRequest": { "type": "object", "properties": { "id": { "type": "integer", "description": "资源ID(必填)", "format": "int64" }, "resourceType": { "type": "string", "description": "资源类型: human-人力, material-物料, equipment-设备, software-软件, finance-资金, other-其他" }, "resourceName": { "type": "string", "description": "资源名称" }, "description": { "type": "string", "description": "资源描述" }, "specification": { "type": "string", "description": "规格型号" }, "unit": { "type": "string", "description": "单位" }, "planQuantity": { "type": "number", "description": "计划数量" }, "actualQuantity": { "type": "number", "description": "实际数量" }, "unitPrice": { "type": "number", "description": "单价" }, "currency": { "type": "string", "description": "币种" }, "supplier": { "type": "string", "description": "供应商/来源" }, "status": { "type": "string", "description": "状态: planned-计划中, requested-已申请, approved-已批准, procuring-采购中, arrived-已到货, in_use-使用中, completed-已完成" }, "planArriveDate": { "type": "string", "description": "计划到位日期" }, "actualArriveDate": { "type": "string", "description": "实际到位日期" }, "responsibleId": { "type": "integer", "description": "负责人ID(直接传递ID时使用)", "format": "int64" }, "responsibleName": { "type": "string", "description": "负责人姓名(根据姓名自动匹配用户ID)" }, "location": { "type": "string", "description": "存放位置" }, "tags": { "type": "array", "items": { "type": "string" }, "description": "标签" }, "extraData": { "type": "object", "properties": {}, "description": "扩展数据" } } }, "BaseResponseListMapObject": { "type": "object", "properties": { "code": { "type": "integer", "description": "" }, "data": { "type": "array", "items": { "$ref": "#/components/schemas/MapObject" }, "description": "" }, "message": { "type": "string", "description": "" } } }, "BaseResponseListResource": { "type": "object", "properties": { "code": { "type": "integer", "description": "" }, "data": { "type": "array", "items": { "$ref": "#/components/schemas/Resource", "description": "资源实体类\n对应数据库表: resource" }, "description": "" }, "message": { "type": "string", "description": "" } } } }, "responses": {}, "securitySchemes": {} }, "servers": [], "security": [] }