K3API 接口说明
1. 概述
2. 问题与解决策略
3. 目标和约束
4. 架构
4.1 采用的技术
K/3 WISE WebAPI是一种轻量级的、可维护的、可自定义的 Web 平台。采用Restful+JSON+VB的方式来开发。使用.NET Framework 4.0为开发平台,源代码使用C#、VB编写。
5. WebAPI接口详细描述
5.1. 单据类接口
5.1.1. 获取模板
服务地址(Demo):
http://192.168.19.205/K3API/Bill1000019/GetTemplate
接口参数:
参数列表 |
参数含义 |
请求方式 |
备注 |
Token |
由授权码生成Token,每次访问接口需带上,用于判断合法性,以及帐套等信息。 |
GET |
必须 |
5.1.2. 保存
服务地址(Demo):
http://192.168.19.205/K3API/Bill1000019/Save
接口参数:
参数列表 |
参数含义 |
请求方式 |
备注 |
Token |
由授权码生成Token,每次访问接口需带上,用于判断合法性,以及帐套等信息。 |
GET |
必须 |
Data |
单据内容JSON数据,格式同GetTemplate获取的结果。 如: { "Data": { "Page1": [ { "FID": "", "FClassTypeID": "200000002", "FComboBox": "" } ], "Page2": [ { "FBaseProperty": "服务协议", "FAmount": "10" } ] } } |
Post |
必须 |
5.1.3. 序时薄查询
服务地址(Demo):
http://192.168.19.205/K3API/Bill1000019/GetList
接口参数
参数列表 |
参数含义 |
请求方式 |
备注 |
Token |
由授权码生成Token,每次访问接口需带上,用于判断合法性,以及帐套等信息。 |
GET |
必须 |
Data |
过滤条件JSON数据: { "Data": { "Top": "100", "PageSize": "10", "PageIndex": "1", "SelectPage": "2", "Fields": "FBillNo,FClassTypeID", "Filter": "[FBillNO] like '%0%'", "OrderBy": "[FBillNO] asc" } } |
Post |
Top:允许查询的数量,0表示不限制 PageSize:每页取数 PageIndex:页码,从1开始 SelectPage:表体索引,默认为2 Fields:待查询表单的字段列表 Filter:过滤条件 OrderBy:排序条件 |
5.1.4. 单据查询
服务地址(Demo):
http://192.168.19.205/K3API/Bill1000019/GetDetail
接口参数
参数列表 |
参数含义 |
请求方式 |
备注 |
Token |
由授权码生成Token,每次访问接口需带上,用于判断合法性,以及帐套等信息。 |
GET |
必须 |
Data |
单据获取JSON数据: { "Data": { "FBillNo": "200000002", "FInterID": "" } } |
POST |
必须 |
5.1.5. 删除
服务地址(Demo):
http://192.168.19.205/K3API/Bill1000019/Delete
接口参数:
参数列表 |
参数含义 |
请求方式 |
备注 |
Token |
由授权码生成Token,每次访问接口需带上,用于判断合法性,以及帐套等信息。 |
GET |
必须 |
Data |
删除JSON数据: { "Data": { "FBillNo": "200000002", "FInterID": "" } } |
Post |
必须 |
5.1.6. 修改
服务地址(Demo):
http://192.168.19.205/K3API/Bill1000019/Update
接口参数:
参数列表 |
参数含义 |
请求方式 |
备注 |
Token |
由授权码生成Token,每次访问接口需带上,用于判断合法性,以及帐套等信息。 |
GET |
必须 |
Data |
修改JSON数据: { "FBillNo": "200000002", "Data": { "Page1": [ { "FID": "1007", "FClassTypeID": "200000002", "FBillNo": "200000002", "FUser": { "FNumber": "", "FName": "" } } ], "Page2": [ { "FBaseProperty": "服务协议", "FAmount": "0", "FQty": "0" } ] } } |
Post |
必须 |
5.1.7. 审核
服务地址(Demo):
http://192.168.19.205/K3API/Bill1000019/CheckBill
接口参数:
参数列表 |
参数含义 |
请求方式 |
备注 |
Token |
由授权码生成Token,每次访问接口需带上,用于判断合法性,以及帐套等信息。 |
GET |
必须 |
Data |
审核内容JSON数据: { "data": { "FBillNo": "CIN000089", "FChecker": "administrator", "FCheckDirection": 2, "FDealComment":"API审核" } } |
Post |
FCheckDirection: 1:启动审核 2:审核 4:驳回 |
返回参数 |
{ "StatusCode": 200, "Message": "单据审核成功!", "Data": { "ReturnCode": 0, "ReturnString": "单据审核成功!" } } |
|
ReturnCode: 0:成功 非0:有错误。 |
5.2. 基础资料接口
金蝶API接口调用说明
一、环境说明
本API基于金蝶,采用C#+VB结合的方式完成查询及数据保存的功能。
服务器必须安装IIS6.0或以上版本;必须安装.Net 4.0。
API提交方式:http post
Content-Type:application/json
所有接口必须传递参数:AppKey ,Sesret , 除令牌获取接口外,其他接口还必须传递Token参数。
二、各个接口调用说明
UserToken.ashx 登录令牌获取接口 |
|
调用示例 |
http://localhost:8089/KISProfessionAPI/UserToken.ashx |
传递参数 |
|
AppKey |
由接口运营方提供 |
Sesret |
由接口运营方提供 |
返回参数 |
|
status |
状态 |
userToken |
令牌,有效期2小时 |
selTemplate.ashx 模板类型接口 |
|
调用示例 |
http://localhost:8089/KISProfessionAPI/selTemplate.ashx |
传递参数 |
|
AppKey |
由接口运营方提供 |
Sesret |
由接口运营方提供 |
Token |
|
返回参数 |
|
status |
状态 |
Data |
数据包: FTemplateID=类型ID FName=类型名称 |
by |
状态为No时才有该参数,错误说明 |
getBillTemp.ashx 模板对应字段接口 |
|
调用示例 |
http://localhost:8089/KISProfessionAPI/getBillTemp.ashx |
传递参数 |
|
AppKey |
由接口运营方提供 |
Sesret |
由接口运营方提供 |
Token |
|
FTypeID |
模板类型ID |
返回参数 |
|
status |
状态 |
Data |
数据包: FItemClassID=类型ID FName=字段显示名称 FSQLColumnName=数据库对应字段名 FDataType=数据类型(200=字符串,3=基础资料,7=日期,4=整数,5=小数,11=布尔) FPrecision=字段长度 FSearch=基础资料类型ID FDefaultValue=默认值 FIsInput=是否必录
FID=单据类型ID FCaption=字段显示名 FCtlType=字段类型(1=日期,4=字符串,2=基础资料ID,12=小数,11=小数,10=字符,3=小数,33=整数,0=字符) FLookUpCls=基础资料ID(-1表示非基础资料,其余的对应基础资料ID) FFieldName=数据包关键字(主要依靠这个字段里面的内容转换为数据库数据) FDefaultValue=默认值 FType=表头,表体(0=表头,1=表体) |
by |
状态为No时才有该参数,错误说明 |
selItem.ashx 基础资料查询接口 |
|
调用示例 |
http://localhost:8089/KISProfessionAPI/selItem.ashx |
传递参数 |
|
AppKey |
由接口运营方提供 |
Sesret |
由接口运营方提供 |
Token |
|
FTypeID |
基础资料类型ID |
返回参数 |
|
status |
状态 |
Data |
数据包:该包中的字段,请参考模板 |
by |
状态为No时才有该参数,错误说明 |
selBill.ashx 单据查询接口 |
|
调用示例 |
http://localhost:8089/KISProfessionAPI/selBill.ashx |
传递参数 |
|
AppKey |
由接口运营方提供 |
Sesret |
由接口运营方提供 |
Token |
|
FTypeID |
单据类型ID,必填 |
FBillNo |
单据编号,可选 |
FStartDate |
开始日期,可选 |
FEndDate |
截止日期,可选 |
返回参数 |
|
status |
状态 |
Data |
数据包:该包中的字段,请参考模板 |
by |
状态为No时才有该参数,错误说明 |
delBill.ashx 单据删除接口 |
|
调用示例 |
http://localhost:8089/KISProfessionAPI/delBill.ashx |
传递参数 |
|
AppKey |
由接口运营方提供 |
Sesret |
由接口运营方提供 |
Token |
|
FTypeID |
单据类型ID,必填 |
FBillNo |
单据编号,必填 |
返回参数 |
|
status |
状态 |
by |
说明 |
addData.ashx 单据增加修改接口,只支持单据的修改,基础资料不允许修改也不允许删除 请注意,该接口中,传递的数据中如果是查找类型的,则应该传递ID。 因为数据保存由服务器上另外的程序完成,所以该接口返回数据可能会有延迟。服务上程序每0.1秒处理一次接口数据。 |
|
调用示例 |
http://localhost:8089/KISProfessionAPI/addData.ashx |
传递参数 |
|
AppKey |
由接口运营方提供 |
Sesret |
由接口运营方提供 |
Token |
|
FTypeID |
单据类型ID,必填 |
FBillNo |
单据编号,当为单据时必填 |
BillHead |
单据头数据包,当为单据时必须有且必填,否则请填””,字段请参考模板 FFieldName |
BillEntry |
单据明细数据包,当为单据时必须有且必填,否则请填””,字段请参考模板 FFieldName |
ItemProp |
基础资料数据包,当为基础资料时必须有且必填,否则请填””,字段请参考模板 FSQLColumnName |
返回参数 |
|
status |
状态,返回1为正常 |
by |
状态=0时为空 |
|
|
示例数据 |
|
{"AppKey":"ABCD","Sesret":"ASn2qeu21iu192F2","Token":"12527129G728282HS71","FTypeID":"A01","BillNo":"A0001", "BillHead":{"FStatus":0,"FROB":1,"Fdate":"2018-08-08","BillNo":"A0001","FBillerID":16394,"FSupplyID":1001,"FPOStyle":252}, "BillEntry":[{"FItemID":243,"FUnitID":72,"Fauxqty":200,"Fauxprice":1.5,"Famount":300,"FBatchNo":"","FDCStockID":352},{"FItemID":243,"FUnitID":72,"Fauxqty":200,"Fauxprice":1.5,"Famount":300,"FBatchNo":"","FDCStockID":352}] } |