成本计算接口
接口说明
成本计算接口目前为同步接口,暂不支持异步。所以可能由于成本计算时间过长而导致连接超时,调用时注意不要设置响应时间。不要使用多线程调用避免服务器压力过大导致程序卡死。
地址说明
通过获取程序Api地址接口返回参数中ApiServerAddress的值
调用方法
POSTContentType: application/x-www-form-urlencoded;Charset=UTF-8
参数:
| 参数名 | 必选 | 类型 | 说明 |
|---|---|---|---|
| managename | 是 | string | 接口名 固定值为:GraspCMServerApi.dll |
| dbname | 是 | string | 数据库名称 |
| ptypedata | 是 | string | 存货列表json 计算全部存货json中传空数组 |
| apiparam | 是 | string | 通过获取程序API地址接口返回 |
| apitype | 是 | string | 接口类型 传calccost |
| sign | 是 | string | 签名字符串 |
| mobile | 是 | string | 云平台手机号 获取API地址返回的GraspCloudMobile,为空时传0 |
| serviceid | 是 | string | 云平台ServerID 获取API地址返回的GraspCloudServerId,为空时传0 |
| interiorapi | 是 | int | 该参数始终为1 |
参数传入说明 1、采用x-www-form-urlencode的方式传参,即参数通过key=value&key=value拼接成字符串,再通过Body传入。 2.再拼接字符串时需要对参数中的所有value做URLEncode,特别注意只有再拼接Post传入参数时才对Value做URLEncode,而计算签名时不要进行转译
sign签名规则
- 将上述参数中除了sign以外的所有参数,根据参数名按照字母排序,以Key+Value的形式拼接字符串。
- 字符串拼接后在结尾加上SignKey。(SignKey获取方法见:获取接口所需SignStr接口)
- 将这个最终拼接成的字符串通过MD5加密,取32位小写。
MD5加密前字符串示例
apiparam7/eAVT1NN2MtBY+MkAylECap5/ltsZWlW/+VkbLwXBYJzxTRld+NpuD188Mr81zc4ERFQfeXEjnoyl9hyrlg16iv+GDEsYZLEQQPXHwZkFo=apitypecalccostdbname工贸220interiorapi1managenameGraspCMServerApi.dllmobile0ptypedata{"ptypelist":[{"typeid":"00001","rec":"","usercode":"","fullname":""},{"typeid":"","rec":2,"usercode":"","fullname":""},{"typeid":"","rec":"","usercode":"002","fullname":"存货2"}]}serviceid02020cmgmsignkeyappkey@#986
参数ptypedata的Json格式
| 参数名 | 必选 | 类型 | 说明 |
|---|---|---|---|
| usercode | 是 | string | 存货编号 |
| fullname | 是 | string | 存货全名 |
Json参考示例
{
"ptypelist": [
{
"typeid": "00001",
"rec": "",
"usercode": "",
"fullname": ""
},
{
"typeid": "",
"rec": "",
"usercode": "002",
"fullname": "存货2"
}
]
}
如果是计算全部存货则固定传{"ptypelist":[]}