[TOC]



### 下载并打开线上文件

**url：**127.0.0.1:5855/download_and_open_file

**method:** post

**请求:**
参数说明

| 字段名称    | 类型   | 解释                         | 示例 |
| ----------- | ------ | ---------------------------- | ---- |
| file_id     | string | 文件id                       |      |
| is_template | int    | 是否为模板文件（1=是，0=否） |      |

示例：

```json
{"file_id":"sgjufgsajlgdfusyag", "is_template":1}
```

返回：

参数说明：

| 字段名称 | 类型   | 解释     | 示例                                                         |
| -------- | ------ | -------- | ------------------------------------------------------------ |
| code     | int    | 业务代码 | 1000: 操作完成，<br />2001: 检测到文档正在被编辑，无法下载 <br />2002: 检测到远程文件已经更新本地文件也发生改动，终止操作 <br />3001: 不支持该类型的文件 <br />3002: 下载文件失败 |
| msg      | string | 返回消息 |                                                              |

示例：

```json
{
    "code": 1000,
    "msg": "操作完成"
}
```



### 获取本地文件状态

**url：**127.0.0.1:5855/file_state_list

**method:** get

请求参数：无

返回：


| 字段名称                 | 类型        | 解释                  | 示例                                                         |
| ------------------------ | ----------- | --------------------- | ------------------------------------------------------------ |
| code                     | int         | 业务代码              | 1000 ：操作成功<br />3000：操作失败                          |
| msg                      | string      |                       |                                                              |
| data                     | list[dict,] |                       |                                                              |
| &emsp; file_name         | string      | 文件名                |                                                              |
| &emsp; cloud_update_time | string      | 云端文件更新时间      |                                                              |
| &emsp; source_md5        | string      | 下载文件时文件的md5值 |                                                              |
| &emsp; show_name         | string      | 展示的文件名          |                                                              |
| &emsp;state              | int         | 文件当前状态          | 0 正常， <br />1: 云端有更新 <br />2: 本地有变动且无冲突可以上传 <br />3: 本地文件和云端文件有冲突<br />4：云端文件已被删除<br /> |

示例：

```json
{
    "code": 1000,
    "msg":"操作完成",
    "data":[
        {
            "file_name":"xxx.csv",
            "cloud_update_time":"2025-06-05 12:00:00",
            "source_md5": "***********************",
            "show_name":"xxx.csv"
            "state":0
        }
    ]
}
```

### 上传本地文件

**url：**127.0.0.1:5855/upload_local_file

**method:** post

**注：**上传文件后会尝试删除本地文件，此接口会覆盖线上文件

**请求:**
参数说明

| 字段名称  | 类型   | 解释   | 示例 |
| --------- | ------ | ------ | ---- |
| file_name | string | 文件名 |      |

示例：

```json
{"file_name":"aaa.csv"}
```

返回示例：

```json
{
    "code":1000,
    "msg": "操作成功"
}
```

| 字段名称 | 类型   | 解释     | 示例                                                         |
| -------- | ------ | -------- | ------------------------------------------------------------ |
| code     | int    | 业务代码 | 1000：操作成功<br />3003：操作失败，上传文件失败<br />3004：操作失败，文件已被打开无法操作 |
| msg      | string | 返回消息 |                                                              |

### 更新本地文件

**url：**127.0.0.1:5855/update_local_file

**method:** post

**注：**此接口会强制覆盖本地文件

**请求:**
参数说明

| 字段名称  | 类型   | 解释   | 示例 |
| --------- | ------ | ------ | ---- |
| file_name | string | 文件名 |      |

```json
{
    "file_name": "aaa.csv"
}
```

响应：

| 字段名称 | 类型   | 解释     | 示例                                                         |
| -------- | ------ | -------- | ------------------------------------------------------------ |
| code     | int    | 业务代码 | 1000：操作成功<br />3004：操作失败，文件已被打开无法操作<br />3005：操作失败，无权限操作本地文件 |
| msg      | string |          |                                                              |

### 删除本地文件

**url：**127.0.0.1:5855/remove_file

**method:** post

| 字段名称  | 类型   | 解释   | 示例 |
| --------- | ------ | ------ | ---- |
| file_name | string | 文件名 |      |

```json
{
    "file_name": "aaa.csv"
}
```

响应

| 字段名称 | 类型   | 解释     | 示例                                                         |
| -------- | ------ | -------- | ------------------------------------------------------------ |
| code     | int    | 业务代码 | 1000：操作成功<br />3006：操作失败，文件不存在<br />3005：操作失败，无权限操作本地文件 |
| msg      | string |          |                                                              |

### 打开本地文件

**url：**127.0.0.1:5855/open_file

**method:** post

| 字段名称  | 类型   | 解释   | 示例 |
| --------- | ------ | ------ | ---- |
| file_name | string | 文件名 |      |

```json
{
    "file_name": "aaa.csv"
}
```

响应

| 字段名称 | 类型   | 解释     | 示例                                                         |
| -------- | ------ | -------- | ------------------------------------------------------------ |
| code     | int    | 业务代码 | 1000：操作成功<br />3006：操作失败，文件不存在<br />3001：操作失败，不支持该类型的文件 |
| msg      | string |          |                                                              |

### 启动wps插件安装服务

**url：**127.0.0.1:5855/start_wps_server

**method:** post

参数：无


响应

| 字段名称 | 类型 | 解释     | 示例           |
| -------- | ---- | -------- | -------------- |
| code     | int  | 业务代码 | 1000：操作成功 |

注：

前端需要在服务启动后调用接口进行加载项安装/卸载：

接口地址 127.0.0.1:5855/deployaddons/runParams

参数示例：

```json
{
    "data": {"cmd": "enable", "name": "jx_office", "url": "http://127.0.0.1:58890/", "addonType": "wps","online": "true"},# data字段需要使用base64编码，data中的cmd字段enable为安装/更新，disable为卸载
    
    "serverId": "aef5ac0d-d5a3-49ee-b02f-c31eeb063f9b"}
```

返回
成功：OK
失败：failed

获取插件状态接口：

接口地址：http://127.0.0.1:58890/deployaddons/runParams

headers：content-type=text/plain;charset=UTF-8

请求参数：

```json
{"serverId":"aef5ac0d-d5a3-49ee-b02f-c31eeb063f9b"}
```



返回实例：

```json
[
	{
		"addonType" : "wps",
		"customDomain" : "",
		"enable" : "false",
		"name" : "wpsPlugin",
		"online" : "true",
		"tagname" : "jspluginonline",
		"url" : "http://120.195.49.22:7212/",
		"version" : ""
	},
	{
		"addonType" : "wps",
		"customDomain" : "",
		"enable" : "enable_dev",
		"name" : "jx_office",
		"online" : "true",
		"tagname" : "jspluginonline",
		"url" : "http://127.0.0.1:5855/",
		"version" : ""
	}
]

```

### 下载线上文件

**url：**127.0.0.1:5855/download_cloud_file

**method:** post

**请求:**
参数说明

| 字段名称    | 类型   | 解释                         | 示例 |
| ----------- | ------ | ---------------------------- | ---- |
| file_id     | string | 文件id                       |      |
| is_template | int    | 是否为模板文件（1=是，0=否） |      |

示例：

```json
{"file_id":"sgjufgsajlgdfusyag","is_template":1}
```

返回：

参数说明：

| 字段名称  | 类型   | 解释         | 示例                                                         |
| --------- | ------ | ------------ | ------------------------------------------------------------ |
| code      | int    | 业务代码     | 1000: 操作完成，<br />2001: 检测到文档正在被编辑，无法下载 <br />2002: 检测到远程文件已经更新本地文件也发生改动，终止操作 <br />3001: 不支持该类型的文件 <br />3002: 下载文件失败<br />3006: 文件不存在云端 |
| msg       | string | 返回消息     |                                                              |
| file_path | string | 文件绝对路径 |                                                              |

示例：

```json
{
    "code": 1000,
    "msg": "操作完成",
    "file_path":"D:/test.docx"
}
```

### 获取用户登录信息

**url：**127.0.0.1:5855/get_token

**method:** post
参数：
 无
响应：

```json
{
    "access_token": "nOaPPqWxiolVN-jJWIYvyEpqPmIVUHPPxGVqL6qvOM4lLEHBE6CGpNEFc9vRYa4HFB3_O70QeienrtPPpeW3iF2IVqgMuL4iAGb5nkEfA05mlE6UPFQcN-7BkoJtrhqs",
    "expires_in": 3000000,
    "permissions": [],
    "refresh_token": "fNz8ntCsFnOMdfIeEKVQYbgiX8zMIKFzqwo8Tl5_KlZMZiWWGagzAbq1F3JuoMGMg97_9rc9yye5BOuB-ldSjYfIksugYXrgzVyY7mccliQf0jla1JB-nJCQrD6hn2i-",
    "tokenType": {
        "value": "Bearer"
    },
    "userDto": " ",
    "username": "admin"
}
```



### 刷新用户登录信息

**url：**127.0.0.1:5855/refresh_token

**method:** post
参数：
 无
响应：

```json
{
    "access_token": "nOaPPqWxiolVN-jJWIYvyEpqPmIVUHPPxGVqL6qvOM4lLEHBE6CGpNEFc9vRYa4HFB3_O70QeienrtPPpeW3iF2IVqgMuL4iAGb5nkEfA05mlE6UPFQcN-7BkoJtrhqs",
    "expires_in": 3000000,
    "permissions": [],
    "refresh_token": "fNz8ntCsFnOMdfIeEKVQYbgiX8zMIKFzqwo8Tl5_KlZMZiWWGagzAbq1F3JuoMGMg97_9rc9yye5BOuB-ldSjYfIksugYXrgzVyY7mccliQf0jla1JB-nJCQrD6hn2i-",
    "tokenType": {
        "value": "Bearer"
    },
    "userDto": " ",
    "username": "admin"
}
```

