0. 公共部分

请求url
  • {apiRoot}/{method}?ver={version}&appkey={appkey}&sign={sign}
参数名 说明 示例
apiRoot 根地址 http://localhost:9000
method 方法名 /voucher/save
version 版本号 1.0
appkey AppKey FinanceClient
sign 签名 5D3AA349E953AF0C15E38C147B15EE35
参数
参数名 必选 类型 说明
Content Content 内容
Token string 鉴权令牌,登录后获取
返回
参数名 必选 类型 说明
Result int 结果码
ErrMsg string 错误描述
Solution string 解决建议
结果码
结果码 描述 说明
0 SUCCESS 成功
1000 NULL_DTL 没有导入的实现
1001 FILE_NOT_EXISST 文件不存在
1002 RECORD_NOT_EXIST 记录不存在
1003 RECORD_EXIST 记录已存在
1004 IMPERFECT_DATA 不完美的数据
1005 SERVICE_TIMEOUT 超时
1006 NULL 空的请求
1007 INCORRECT_STATE 当前状态不符合预期
1008 AMMOUNT_IMBALANCE 借贷不平衡
1009 LINKED_DATA 有关联的业务
3000 NOT_SUPPORT 不支持
3001 SYSTEM_ERROR 未知的系统错误
3002 AUTHENTICATION_ERROR 无效的签名
签名算法
string SignRequest(string body)
{
StringBuilder query = new StringBuilder(Secret);
query.Append(body);
query.Append(Secret);
MD5 md5 = MD5.Create();
byte[] bytes = md5.ComputeHash(Encoding.UTF8.GetBytes(query.ToString())); StringBuilder result = new StringBuilder();
for (int i = 0; i < bytes.Length; i++)
{
result.Append(bytes[i].ToString("X2"));
} return result.ToString();
}

1. 保存凭证

方法
  • /voucher/save
请求方式
  • POST
参数
  • Content
参数名 必选 类型 说明
header VoucherHeader 表头
entries List 分录
udefenties Map<string,<string,object>> 自定义扩展字段
  • VoucherHeader
参数名 必选 类型 说明
id int ID(为0即为新增,否则为修改的内码)
word string 凭证字:“记”
note string 备注
reference string 参考信息
year int 年度
period int 期间
businessDate dateTime 业务日期(2019-03-05T00:00:00)
date dateTime 日期(2019-03-05T00:00:00)
creatTime dateTime 创建时间(2019-03-05T00:00:00)
creater int 创建人
cashier string 出纳
agent string 经办人
  • VoucherEntry
参数名 必选 类型 说明
index int 分录号
accountSubjectNo string 科目代号
explanation string 摘要
amount decimal 金额
direction int 方向:1(借方),-1(贷方 )
uniqueKey string 唯一码(uuid),作为自定义内容的键值
返回
参数名 必选 类型 说明
Id 条件 int 如果成功,返回凭证内码
示例
{
"Content" : {
"header" : {
"id" : 0,
"word" : "记",
"note" : null,
"reference" : "参考信息",
"year" : 2019,
"period" : 3,
"businessDate" : "2019-03-05T00:00:00",
"date" : "2019-03-05T00:00:00",
"creatTime" : "2019-03-05T23:46:01",
"creater" : 13594,
"cashier" : "出纳",
"agent" : "经办"
},
"entries" : [{
"index" : 1,
"accountSubjectNo" : "1001",
"explanation" : "摘要",
"amount" : 200.0,
"direction" : 1,
"uniqueKey": "afffc876a94049afaa7275c7c7d8d76f"
}, {
"index" : 2,
"accountSubjectNo" : "1002",
"explanation" : "摘要",
"amount" : 200.0,
"direction" : -1,
"uniqueKey": "7761b2300fdb48bd991e570c0f8fc39f"
}
],
"udefenties": {
"afffc876a94049afaa7275c7c7d8d76f": {
"cust": "",
"price": 4.0,
"qty": 78.0
},
"7761b2300fdb48bd991e570c0f8fc39f": {
"cust": null,
"price": 0.0,
"qty": 0.0
}
}
},
"Token" : "3AIavxSAoaJhuBB1o4hc6fw4hNlpC4KoXgfT1mpu1hyQiA_lqKNKOkNDtC_mKdHiWEAHooTE1vZAtsYhz4g_jNoNR5JBkp9UHXZSYFbSuj0j38muKaMbFhTRMEZ_xqd4znSY_Fcp8V96hto4VpLWqh0__yHKFoRZQ0DGS5HcrpQ="
}
  • 返回

    {
    "id" : 233,
    "Result" : 0,
    "ErrMsg" : null,
    "Solution" : null
    }

Finance API文档的更多相关文章

  1. Java在DOS命令下的运行及其API文档制作过程

    该文档主要描述java程序在DOS命令下的运行,以及一些常用的命令 常用DOS命令: d: 回车 盘符切换 dir(directory):列出当前目录下的文件以及文件夹 md (make direct ...

  2. 在ASP.NET Core Web API上使用Swagger提供API文档

    我在开发自己的博客系统(http://daxnet.me)时,给自己的RESTful服务增加了基于Swagger的API文档功能.当设置IISExpress的默认启动路由到Swagger的API文档页 ...

  3. 利用sphinx为python项目生成API文档

    sphinx可以根据python的注释生成可以查找的api文档,简单记录了下步骤 1:安装 pip install -U Sphinx 2:在需要生成文档的.py文件目录下执行sphinx-apido ...

  4. 如何使 WebAPI 自动生成漂亮又实用在线API文档

    1.前言 1.1 SwaggerUI SwaggerUI 是一个简单的Restful API 测试和文档工具.简单.漂亮.易用(官方demo).通过读取JSON 配置显示API. 项目本身仅仅也只依赖 ...

  5. Android多媒体--MediaCodec 中文API文档

    *由于工作需要,需要利用MediaCodec实现Playback及Transcode等功能,故在学习过程中翻译了Google官方的MediaCodec API文档,由于作者水平限制,文中难免有错误和不 ...

  6. 新手如何查看API文档?

    Java API文档为例: 1:知道包名,可以在Overview里直接找到这个包,然后去查这个包下面的类和方法.2:知道类名和方法名,可以在Index.html里直接去找这个类或方法,然后查看.3:如 ...

  7. Bullet的学习资源(用Doxygen生成API文档)

    Bullet 全称 Bullet Physics Library,是著名的开源物理引擎(可用于碰撞检测.刚体模拟.可变形体模拟),这里将bullet的学习资源整理一下,希望能帮助入门者少走弯路. 看下 ...

  8. [API]使用Blueprint来高雅的编写接口文档 前后端api文档,移动端api文档

    网址:http://apiary.io/ 介绍:一款非常强大的前后端交互api设计编辑工具(编辑器采用Markdown类似的描述标记,非常高效),高颜值的api文档,还能生成多种语言的测试代码. 中文 ...

  9. jQuery MiniUI开发系列之:使用API文档

    jQuery MiniUI在组件设计上,是简约.独立的,没有复杂的继承体系. 比如使用DataGrid,可以在api文档的datagrid部分,查找到datagrid的所有属性.方法.事件,而无需关注 ...

随机推荐

  1. LeetCode 105. Construct Binary Tree from Preorder and Inorder Traversal 由前序和中序遍历建立二叉树 C++

    Given preorder and inorder traversal of a tree, construct the binary tree. Note:You may assume that ...

  2. python-day3集合、文件读写、函数

    @集合运算 s.union(t) s | t 返回一个新的 set 包含 s 和 t 中的每一个元素 s.intersection(t) s & t 返回一个新的 set 包含 s 和 t 中 ...

  3. (12)SecureCRT中文乱码问题

    Options -- Session Options -- Appearance --Character encoding:选择UTF-8

  4. Vue stage3

    <body> <div id="box1"> <div v-bind:class="{ 'active': isActive, 'error ...

  5. ORM版学员管理系统 2

    学生信息管理 展示学生信息 URL部分 url(r'^student_list/', app01_views.student_list, name="student_list"), ...

  6. swift 加载 本地html 和 网络路径

    先上代码: xcode 9.4  ios 11.4 import UIKit import WebKit class RootViewController: UIViewController, WKN ...

  7. WPF 自定义控件缩放

    方式一: 自定义控件使用固定大小绘制:控件内的各个子控件大小设定固定值 优点:控件绘制简单.快捷. 缺点:使用时如需缩放,需在自定义控件的外面加一个 ViewBox . 使用示例如下(将 UserCo ...

  8. 用python发送短消息(基于阿里云平台)

    新版短信接口在线测试页面:https://api.aliyun.com/new#/?product=Dysmsapi&api=SendSms&params={}&tab=DEM ...

  9. supervisord的安装使用

    由于生产环境使用的的tomcat,项目比较重要,所以要做进程守护,本来打算自己写脚本,但是效果不理想,想了下还是用supervisord了 由于很久不用,所以写下来部署步骤 第一:安装,安装的方法有y ...

  10. 实现硬件PWM控制电机旋转和通过编码器计算所转圈数的简单例程

    该例程所用的硬件设备: 直流电机驱动模块YYH-LWZ: H桥 大功率 正反转 刹车 PWM 调速 5/12/24V 12V直流减速电机JGB37-520B:ASLONG JGB37-520B编码器减 ...