上传图纸文件
功能介绍
该API用于上传一个图纸文件并对该文件执行轻量化转换。
- 上传方式主要分为两种:单片上传和分片上传。
- 文件类型分为两种:零件和装配体。
- 零件:如果是零件直接上传即可。
- 装配体:如果是装配体文件,则需要将装配体主文件以及子件打包成一个zip格式的压缩包,并且压缩包文件名必须和主文件名保持一致,否则系统无法识别主文件也就无法成功转换。如果装配体比较大采用分片上传方式时,在上传阶段必须将分片后缀名修改为.chunk格式。
URI
POST /basic/coremgr/public/api/v1/drawing/upload
请求参数
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
Authorization |
是 |
String |
机机认证token,获取token请参考链接。 |
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
file |
是 |
Binary |
文件 最小长度:1 最大长度:1073741824 |
|
id |
否 |
String |
文件id 最小长度:2 最大长度:64 |
|
name |
是 |
String |
文件名称 最小长度:2 最大长度:255 |
|
check_code |
是 |
String |
校验码 最小长度:2 最大长度:255 |
|
is_chunked |
是 |
Boolean |
是否分片:true,false |
|
request_type |
否 |
String |
请求类型:init,upload 枚举值:
|
|
chunk_total |
否 |
Integer |
分片总数 最小值:0 最大值:1000 |
|
chunk_index |
否 |
Integer |
分片索引 最小值:0 最大值:1000 |
|
source |
是 |
String |
来源:图纸文件上传的来源方,当配置为“temp”时,会被视为临时文件,默认超过7天时会自动删除 最小长度:1 最大长度:255 |
|
type |
是 |
String |
文件类型:PART,ASSEMBLY 枚举值:
|
|
main_file_name |
否 |
String |
装配体主文件名 最小长度:0 最大长度:255 |
响应参数
状态码: 200
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
id |
String |
文件id 最小长度:36 最大长度:40 |
|
name |
String |
文件名称 最小长度:2 最大长度:512 |
|
status |
String |
上传状态: 上传中UPLOADING/上传完成SUCCESS/上传失败FAILED 枚举值:
|
|
is_chunked |
Boolean |
是否分片:true,false |
|
chunk_total |
Integer |
分片总数 最小值:0 最大值:1000 |
|
source |
String |
来源 最小长度:1 最大长度:255 |
|
type |
String |
文件类型:PART,ASSEMBLY 枚举值:
|
|
create_time |
String |
创建时间 最小长度:1 最大长度:30 |
|
update_time |
String |
更新时间 最小长度:0 最大长度:30 |
|
file_lightweight_task_result |
文件轻量化转换任务Vo对象 |
|
|
file_chunk_upload_result |
Array of FileChunkUploadRspVo objects |
文件分片上传响应Vo对象 数组长度:0 - 1000 |
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
file_id |
String |
文件id 最小长度:36 最大长度:40 |
|
file_name |
String |
文件名称 最小长度:2 最大长度:255 |
|
status |
String |
轻量化状态:UPLOADING,UNMOUNTED,MOUNTING,SUCCESS,FAILED 枚举值:
|
|
failed_reason |
String |
失败原因 最小长度:0 最大长度:500 |
|
task_id |
String |
轻量化任务id 最小长度:1 最大长度:40 |
|
create_time |
String |
创建时间 最小长度:1 最大长度:30 |
|
update_time |
String |
更新时间 最小长度:0 最大长度:30 |
|
lightweight_file_path |
String |
轻量化文件路径 最小长度:0 最大长度:500 |
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
chunk_id |
String |
文件分片id 最小长度:36 最大长度:40 |
|
chunk_status |
String |
上传状态: 上传中UPLOADING/上传完成SUCCESS/上传失败FAILED 枚举值:
|
|
chunk_index |
Integer |
分片索引 最小值:0 最大值:1000 |
|
create_time |
String |
创建时间 最小长度:1 最大长度:30 |
|
update_time |
String |
更新时间 最小长度:0 最大长度:30 |
状态码: 400
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
error_code |
String |
错误码 最小长度:8 最大长度:36 |
|
error_msg |
String |
错误描述 最小长度:2 最大长度:512 |
请求示例
- 零件上传-单片上传
/basic/coremgr/public/api/v1/drawing/upload { "name" : "4903N12.STEP", "check_code" : "fefeb94f12c7d604c4b2c9570ac847864a731e9a029a2d6d81021bbc3ab52343", "is_chunked" : false, "type" : "PART", "source" : "company name", "file" : "binary(二进制文件流)" } - 零件上传-分片上传(初始化阶段)
/basic/coremgr/public/api/v1/drawing/upload { "name" : "010758215.stp", "check_code" : "b82bdd878b4788f95744eaa646a7a286ef5f4110caa703f9b521f4fbb59f48aa", "is_chunked" : true, "chunk_total" : 29, "type" : "PART", "source" : "company name", "request_type" : "init" } - 零件上传-分片上传(上传阶段)
/basic/coremgr/public/api/v1/drawing/upload { "id" : "4f2bddfa-dee7-4858-b41c-34705e9642a3", "name" : "010758215.stp", "check_code" : "b82bdd878b4788f95744eaa646a7a286ef5f4110caa703f9b521f4fbb59f48aa", "is_chunked" : true, "type" : "PART", "source" : "company name", "request_type" : "upload", "chunk_total" : 29, "chunk_index" : 1, "file" : "binary(二进制文件流)" } - 装配体上传-单片上传
/basic/coremgr/public/api/v1/drawing/upload { "name" : "ensamble_suicide.zip", "check_code" : "af101d8c580ea70cb3c05fccf871a38303fb94e6cca00ff4214aebbab674b5df", "is_chunked" : false, "type" : "ASSEMBLY", "main_file_name" : "ensamble_suicide.asm.1", "source" : "company name", "file" : "binary(二进制文件流)" } - 装配体上传-分片上传(初始化阶段)
/basic/coremgr/public/api/v1/drawing/upload { "name" : "engine_test_02总装.asm.1.zip", "check_code" : "a4a3e7aca08918a148c52ffee862add3c78ac57c204847f91151297ce211a58a", "is_chunked" : true, "chunk_total" : 25, "type" : "ASSEMBLY", "main_file_name" : "engine_test_02总装.asm.1", "source" : "company name", "request_type" : "init" } - 装配体上传-分片上传(上传阶段)
/basic/coremgr/public/api/v1/drawing/upload { "name" : "engine_test_02总装.asm.1.zip", "check_code" : "a4a3e7aca08918a148c52ffee862add3c78ac57c204847f91151297ce211a58a", "is_chunked" : true, "chunk_total" : 25, "type" : "ASSEMBLY", "main_file_name" : "engine_test_02总装.asm.1", "source" : "company name", "request_type" : "upload", "id" : "f1afbc15-b4db-4ff6-9bd4-80160a4f1bf8", "file" : "binary(二进制文件流)", "chunk_index" : 1 }
响应示例
状态码:200
零件上传-单片上传
{
"result_code": "PUB-000000",
"result_info": "success",
"datas": {
"id": "ef9a97c7-6344-4118-8486-612d10fdf2e4",
"name": "4903N12.STEP",
"is_chunked": false,
"chunk_total": 0,
"status": "UPLOADING",
"type": "PART",
"create_time": "2024-06-21 09:22:30",
"file_lightweight_task_result": {
"file_id": "ef9a97c7-6344-4118-8486-612d10fdf2e4",
"file_name": "4903N12.STEP",
"status": "UPLOADING",
"task_id": "3d02ef30-0e56-43c0-ab0a-5d6bca5ab7ba",
"create_time": "2024-06-21 09:22:30"
}
}
}
零件上传-分片上传(初始化阶段)
{
"result_code": "PUB-000000",
"result_info": "success",
"datas": {
"id": "4f2bddfa-dee7-4858-b41c-34705e9642a3",
"name": "010758215.stp",
"is_chunked": true,
"chunk_total": 29,
"status": "UPLOADING",
"type": "PART",
"create_time": "2024-06-21 10:18:10",
"file_lightweight_task_result":{
"file_id": "4f2bddfa-dee7-4858-b41c-34705e9642a3",
"file_name": "010758215.stp",
"status": "UPLOADING",
"task_id": "3bfe5727-ec30-4539-bbc0-4be54fbdaee2",
"create_time": "2024-06-21 10:18:10"
}
}
}
零件上传-分片上传(上传阶段)
{
"result_code": "PUB-000000",
"result_info": "success",
"datas": {
"id": "4f2bddfa-dee7-4858-b41c-34705e9642a3",
"name": "010758215.stp",
"is_chunked": true,
"chunk_total": 29,
"status": "UPLOADING",
"type": "PART",
"create_time": "2024-06-21 10:18:10",
"file_lightweight_task_result": {
"file_id": "4f2bddfa-dee7-4858-b41c-34705e9642a3",
"file_name": "010758215.stp",
"status": "UPLOADING",
"task_id": "3bfe5727-ec30-4539-bbc0-4be54fbdaee2",
"create_time": "2024-06-21 10:18:10"
}
}
}
装配体-单片上传
{
"result_code": "PUB-000000",
"result_info": "success",
"datas": {
"id": "4466cc07-1b58-42d1-a0e7-748ef8f59204",
"name": "ensamble_suicide.zip",
"status": "UPLOADING",
"is_chunked": false,
"chunk_total": 0,
"source": "company name",
"type": "ASSEMBLY",
"file_lightweight_task_result": {
"file_id": "4466cc07-1b58-42d1-a0e7-748ef8f59204",
"file_name": "ensamble_suicide.zip",
"status": "UPLOADING",
"task_id": "c06edf2b-a1e1-4f15-bbf3-3bfae556b8b9",
"create_time": "2024-06-21 14:21:11"
}
}
}
装配体-分片上传(初始化阶段)
{
"result_code": "PUB-000000",
"result_info": "success",
"datas": {
"id": "f1afbc15-b4db-4ff6-9bd4-80160a4f1bf8",
"name": "engine_test_02总装.asm.1.zip",
"status": "UPLOADING",
"is_chunked": true,
"chunk_total": 25,
"source": "company name",
"type": "ASSEMBLY",
"create_time": "2024-06-21 14:11:16",
"file_lightweight_task_result": {
"file_id": "f1afbc15-b4db-4ff6-9bd4-80160a4f1bf8",
"file_name": "engine_test_02总装.asm.1.zip",
"status": "UPLOADING",
"task_id": "bd0f7935-d7a1-4d0a-8aa7-e742d80e984d",
"create_time": "2024-06-21 14:11:16"
}
}
}
装配体-分片上传(上传阶段)
{
"result_code": "PUB-000000",
"result_info": "success",
"datas": {
"id": "f1afbc15-b4db-4ff6-9bd4-80160a4f1bf8",
"name": "engine_test_02总装.asm.1.zip",
"status": "UPLOADING",
"is_chunked": true,
"chunk_total": 25,
"source": "company name",
"type": "ASSEMBLY",
"create_time": "2024-06-21 14:11:16",
"file_lightweight_task_result": {
"file_id": "f1afbc15-b4db-4ff6-9bd4-80160a4f1bf8",
"file_name": "engine_test_02总装.asm.1.zip",
"status": "UPLOADING",
"task_id": "bd0f7935-d7a1-4d0a-8aa7-e742d80e984d",
"create_time": "2024-06-21 14:11:16"
}
}
}
状态码: 400
错误响应
示例一:
{
"error_code" : "01090001",
"error_msg" : "系统错误,请联系管理员!"
}
示例二:
{
"error_code" : "01099901",
"error_msg" : "请求参数无效!"
}
示例二:
{
"error_code" : "01099902",
"error_msg" : "认证失败!"
}
状态码
|
状态码 |
描述 |
|---|---|
|
200 |
文件上传响应Vo对象 |
|
400 |
错误响应 |
错误码
请参见错误码。