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}] } |