# 文档服务管理

# 接口调用方式

本接口为主OA Http Rest,允许被异构系统远程调用,调用前需要调用Rest接口文档 (opens new window)获取Restful token身份凭证。

# 文档对象

# 文档对象实例

{
  "total" : 2,
  "data" : [ {
    "fr_size" : 31,
    "hasAtt" : false,
    "fr_mine_type" : 22,
    "fr_create_time" : "2017-03-17 15:40",
    "is_folder" : false,
    "fr_type" : 21,
    "fr_create_username" : "李世民",
    "fr_id" : "9123238966563718761",
    "fr_name" : "文件名称"
  }, {
    "fr_size" : 0,
    "fr_mine_type" : 31,
    "is_folder" : true,
    "fr_type" : 31,
    "fr_id" : "91511323164492939",
    "fr_name" : "单位子文件夹",
    "next_Doc_Num" : "0"
  } ],
  "pageNo" : 1,
  "pageSize" : 20
}

# 文档对象属性说明

参数 说明
total 总数
fr_size 文档大小
hasAtt 是否有附件
fr_mine_type 格式类型
fr_create_time 创建时间
is_folder 是否是文件夹
fr_type
fr_create_username 创建人
fr_id 文档ID
fr_name 文档名称
pageNo 页数
pageSize 每页条数

# 获取文档列表接口

根据文档ID[doc_resources表ID]获取目录或文件列表。

接口请求说明:

http请求方式:POST
http://ip:port/seeyon/rest/docs/search

注:请求需要携带token,否则无法使用,获取并传递token方法参考:https://open.seeyoncloud.com/seeyonapi/781/

Demo:
Map newDep = new HashMap() {
{
put("archiveID", "144411942544885803"); //archiveID:文档ID(必填):doc_resources表ID
put("searchType", "");//searchType:查询类型(非必填)
put("propertyName", "");//propertyName:查询参数名称(非必填)
put("simple", "");//simple:是否简单查询(非必填)
put("value1", "");//value1:查询值(非必填)
put("pageNo", "1");//页数
 put("pageSize", "20");//每页条数
}
CTPRestClient client = RestResource.getInstance().resouresClent();
String result = client.post("docs/search",res, String.class);
...

参数说明:

参数 是否必须 说明
archiveID 文档ID(必填):doc_resources表ID
searchType searchType:查询类型(非必填)
propertyName propertyName:查询参数名称(非必填)
simple simple:是否简单查询(非必填)
value1 value1:查询值(非必填)
pageNo 页数
pageSize 每页条数

返回说明

正常情况下,返回文档目录和文件列表文档对象实例

# 下载文件接口

根据文件ID[ctp_file表ID]下载指定的文件。

接口请求说明:

请求方式:GET
请求地址:http://ip:port/seeyon/rest/attachment/file/{ctp_file_id}?fileName={文件名}&token={}

示例:
http://127.0.0.1:8080/seeyon/rest/attachment/file/5968806997682768925?fileName=工作汇报&token=238f9e47-d801-496e-bc1a-30405e6b7276

注意:
(1)此下载文件接口,从V10.0之后的版本,已经禁止使用。V9.0SP1及以前的版本可以使用。
(2)请求必须携带token,否则无法使用,获取并传递token方法参考:https://open.seeyoncloud.com/seeyonapi/781/
(3)token必须绑定人员,请求token必须loginName参数,token可放在header中。如果获取token接口返回的数据中有 bindingUser参数,里面有绑定的人员信息。说明token是正确的。参考如下:

{
  "bindingUser": {
    "loginState": "logging",
    "sessionId": "520286638D9924A4BDF01CC4767655DF",
    "id": 7356757881649843864,
    "securityKey": 0,
    "loginName": "cs1",  //绑定的人员登录名
    "name": "cs1",
    "loginAccount": 2228640399537622815,
    "loginAccountName": "北京致远单位",
    "loginAccountShortName": "北致单位",
    "province": null,
    "city": null,
    "rectangle": null,
    "nodeIndex": "",
    "departmentId": -7755864159333824794,
    "levelId": -898767473727749834,
    "postId": -3718794558746048689,
    "accountId": 2228640399537622815,
    "remoteAddr": "10.4.2.12",
    "userAgentFrom": "rest",
    "externalType": 0,
    "locale": "zh_CN",
    "loginTimestamp": 1773632131987,
    "loginLogId": -1184265094362347931,
    "skin": "default",
    "userSSOFrom": null,
    "browser": null,
    "timeZone": "Asia/Shanghai",
    "canSendSMS": false,
    "etagRandom": "-1037424083",
    "changeRoleTimestamp": 0,
    "privacy": 0,
    "internal": true,
    "groupAdmin": false,
    "administrator": false,
    "vjoinMember": false,
    "fromM1": false,
    "v5External": false,
    "auditAdmin": false,
    "systemAdmin": false,
    "loginSign": 1,
    "admin": false,
    "v5Member": true,
    "visitor": false,
    "guest": false,
    "platformAdmin": false,
    "superAdmin": false,
    "defaultGuest": false,
    "screenGuest": false
  },
  "userName": "org",
  "clientInfo": null,
  "id": "805cf222-b3a1-4975-b982-a8b205b5e0ed"   //token
}

参数说明:

参数 是否必须 说明
ctp_file_id ctp_file表id
fileName fileName:文件名称,不需要加文件后缀。例如“工作汇报.doc”,fileName设置成“工作汇报”。
token 验证TOKEN,注意token必须绑定人员,请求token必须loginName参数,token可放在header中

返回说明

下载接口通过浏览器请求方式,下载成功会直接生成下载文件。

# 文件上传接口

上传指定的文件,返回文件在服务器上的id。

接口请求说明:

报文规则:

http请求方式:

POST

uri

/rest/attachment?token={token}&firstSave=true

如果不加firstSave=true参数,附件不会存到数据库

body: form-data类型

file [file类型]: {文件绝对路径}

注:请求需要携带token,否则无法使用,获取并传递token方法参考:https://open.seeyoncloud.com/seeyonapi/781/

示例:

参数说明:

参数 是否必须 说明
file(文件类型) File 需要上传的文件
token 验证TOKEN,注意token必须绑定人员,请求token必须loginName参数,token可放在header中

返回说明

{
    "n_a_s": 1,
    "atts": [
        {
            "id": null,
            "reference": "1",
            "subReference": "1",
            "category": 0,
            "type": 0,
            "filename": "org.log",
            "mimeType": "text/plain",
            "createdate": "2020-06-18 20:10",
            "size": "539",
            "description": null,
            "fileUrl": "-6868977902039185387",
            "extension": "log",
            "icon": "file.gif",
            "iconFont": "defaultICON",
            "genesisId": null,
            "sort": 0,
            "officeTransformEnable": "disable",
            "obsObjectKey": "",
            "v": "0bdd72df87561f67ef466e9d91e31554",
            "new": true,
            "extraMap": {}
        }
    ]
}

以上示例中:

atts[0].fileUrl 是 附件id

编撰人:admin、songcl、het、chuhc、lichaoj