|
|
@@ -1,222 +0,0 @@
|
|
|
-[TOC]
|
|
|
-
|
|
|
-# 接口规则
|
|
|
-
|
|
|
-## 协议规则
|
|
|
-
|
|
|
-调用API必须遵循以下规则:
|
|
|
-
|
|
|
-| 规则 | 说明 |
|
|
|
-| ---- | --------------------------------- |
|
|
|
-| 传输方式 | HTTP/HTTPS |
|
|
|
-| 提交方式 | 采用POST方法提交 |
|
|
|
-| 数据格式 | 提交和返回数据都为JSON格式 |
|
|
|
-| 字符编码 | 统一采用UTF-8字符编码 |
|
|
|
-| 安全机制 | 签名或者IP白名单 |
|
|
|
-| 签名算法 | 如安全机制未签名,RSA(2048)/和支付宝RAS2方式签名一样 |
|
|
|
-| 签名要求 | 如安全机制未签名,请求和接收数据均需要校验签名 |
|
|
|
-
|
|
|
-## 参数规则
|
|
|
-
|
|
|
-### 请求参数
|
|
|
-
|
|
|
-| 参数 | 类型 | 必填 | 描述 | 示例值 |
|
|
|
-| -------------- | ---------- | -- | ----------------------------------- | -------------------------------- |
|
|
|
-| appId | String(32) | 是 | 接口应用号 | 123456789 |
|
|
|
-| clientCode | String(32) | 是 | 商城客户号 | yinjie |
|
|
|
-| businessMethod | String(32) | 是 | 请求业务编号 | MallAppCall\_ProductList |
|
|
|
-| params | String | 是 | 请求业务参数 | 业务参数全部序列化为JSON 字符串传递 |
|
|
|
-| nonceStr | String(32) | 否 | ==如安全机制为签名,则必须传入== 随机字符串,长度要求在32位以内 | 5K8264ILTKCH16CQ2502SI8ZNMTM67VS |
|
|
|
-| sign | String(32) | 否 | ==如安全机制为签名,则必须传入== 通过签名算法计算得出的签名值 | |
|
|
|
-
|
|
|
-请求参数签名数据为
|
|
|
-
|
|
|
-```java
|
|
|
-content = "appid=" + x.getAppId() +
|
|
|
- "&businessMethod=" + x.getBusinessMethod() +
|
|
|
- "¶ms=" + x.getParams() +
|
|
|
- "&nonceStr=" + x.getNonceStr();
|
|
|
-```
|
|
|
-
|
|
|
-### 返回参数
|
|
|
-
|
|
|
-| 参数 | 类型 | 必填 | 描述 | 示例值 |
|
|
|
-| -------- | ---------- | -- | ----------------------------------- | -------------------------------- |
|
|
|
-| appId | String(32) | 是 | 接口应用号 | 123456789 |
|
|
|
-| data | String | 是 | 请求业务返回值 | 业务返回数据全部序列化为JSON 字符串传递 |
|
|
|
-| nonceStr | String(32) | 否 | ==如安全机制为签名,则必须传入== 随机字符串,长度要求在32位以内 | 5K8264ILTKCH16CQ2502SI8ZNMTM67VS |
|
|
|
-| sign | String(32) | 否 | ==如安全机制为签名,则必须传入== 通过签名算法计算得出的签名值 | |
|
|
|
-| httpCode | int | 是 | 错误编号 | |
|
|
|
-| msg | String | 否 | 错误内容 | |
|
|
|
-
|
|
|
-### 错误码
|
|
|
-
|
|
|
-| 错误代码 | 描述 | 原因 | 解决方案 |
|
|
|
-| :---- | :--------------------------- | :------------------------------- | :--- |
|
|
|
-| 10001 | POST数据为空 | http post无数据 | |
|
|
|
-| 10002 | JSON格式不正确 | 接口对应的json数据格式不正确 | |
|
|
|
-| 10003 | 参数中缺少businessMethod | 未传入businessMethod参数 | |
|
|
|
-| 10004 | 参数中缺少clientCode | 未传入clientCode参数 | |
|
|
|
-| 10005 | 未获取到clientCode对应商户信息 | clientCode由商城开发商提供 | |
|
|
|
-| 10006 | 商户信息不正确 | | |
|
|
|
-| 10007 | 参数中缺少appId | 未传入appId参数 | |
|
|
|
-| 10008 | 应用appId不存在/应用appId已禁用,无法调用接口 | appId传入错误或者不存在/应用appId已禁用,无法调用接口 | |
|
|
|
-| 10009 | 签名错误 | 签名错误 | |
|
|
|
-| 10012 | 网络通信错误 | 网络通信错误,请稍后重试 | |
|
|
|
-
|
|
|
-## 安全规范
|
|
|
-
|
|
|
-### 签名工具
|
|
|
-
|
|
|
-RAS密钥可以使用支付宝提供的工具计算 [密钥生成工具](http://p.tb.cn/rmsportal_6680_secret_key_tools_RSA_win.zip)  开发资源有限,目前只支持rsa,格式为pkcs8,长度为2048
|
|
|
-
|
|
|
-### 生成随机数算法
|
|
|
-
|
|
|
-API接口协议中包含字段nonceStr,主要保证签名不可预测。我们推荐生成随机数算法如下:调用随机数函数生成,将得到的值转换为字符串。
|
|
|
-
|
|
|
-## 接口链接
|
|
|
-
|
|
|
-**正式地址** **测试地址** [http://xxxxxxx\:xx/apis11/mallAppCall/gateway](http://xxxxxxx\:xx/apis20/mallAppCall/gateway)
|
|
|
-
|
|
|
-# 获取商品列表
|
|
|
-
|
|
|
-## 应用场景
|
|
|
-
|
|
|
-通过该接口获取商品列表
|
|
|
-
|
|
|
-## 请求参数
|
|
|
-
|
|
|
-| 参数 | 类型 | 必填 | 描述 | 参数值 |
|
|
|
-| -------------- | ------ | -- | ---- | ------------------------ |
|
|
|
-| businessMethod | String | 是 | 业务编码 | MallAppCall\_ProductList |
|
|
|
-| params | String | 是 | 业务参数 | JSON字符串,此接口传空即可 |
|
|
|
-
|
|
|
-## 返回结果
|
|
|
-
|
|
|
-data通过JSON反序列为商品列表数组
|
|
|
-
|
|
|
-| 变量名 | 描述 | 示例值 |
|
|
|
-| :-------------- | :----- | :--- |
|
|
|
-| id | 商品id | 1 |
|
|
|
-| idType | 商品分类id | 1 |
|
|
|
-| productName | 商品名称 | 无碳联单 |
|
|
|
-| productTypeName | 商品分类名称 | 联单票据 |
|
|
|
-
|
|
|
-# 获取商品详情
|
|
|
-
|
|
|
-## 应用场景
|
|
|
-
|
|
|
-获取商品详情,用于展示商品,进行报价。
|
|
|
-
|
|
|
-## 请求参数
|
|
|
-
|
|
|
-| 参数 | 类型 | 必填 | 描述 | 参数值 |
|
|
|
-| :------------- | :----- | :- | :--- | :------------------------- |
|
|
|
-| businessMethod | String | 是 | 业务编码 | MallAppCall\_ProductDetail |
|
|
|
-| params | String | 是 | 业务参数 | JSON字符串,此接口为{id:商品id} |
|
|
|
-
|
|
|
-### params内容
|
|
|
-
|
|
|
-| 变量名 | 描述 | 示例值 |
|
|
|
-| :-- | :--- | :-- |
|
|
|
-| id | 商品id | 1 |
|
|
|
-
|
|
|
-## 返回结果
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-data通过JSON反序列为商品详情信息
|
|
|
-
|
|
|
-### productInfo
|
|
|
-
|
|
|
-| 变量名 | 描述 | 示例值 |
|
|
|
-| :-------------- | :----------- | :--- |
|
|
|
-| id | 商品id | 1 |
|
|
|
-| idType | 商品分类id | 1 |
|
|
|
-| productTypeName | 商品分类名称 | 联单票据 |
|
|
|
-| productName | 商品名称 | 无碳联单 |
|
|
|
-| productUnit | 商品单位 | 本 |
|
|
|
-| priceQtyContent | 报价数量描述 | |
|
|
|
-| minDeliveryDay | 最短发货周期(天) | |
|
|
|
-| partInfoList | 部件partInfo数组 | |
|
|
|
-
|
|
|
-### partInfo部件信息
|
|
|
-
|
|
|
-| 变量名 | 描述 | 示例值 |
|
|
|
-| :------------ | :------------------ | :-- |
|
|
|
-| id | 部件id | |
|
|
|
-| partName | 部件名称 | |
|
|
|
-| parameterList | 报价参数parameterInfo数组 | |
|
|
|
-
|
|
|
-### parameterInfo报价参数信息
|
|
|
-
|
|
|
-| 变量名 | 描述 | 示例值 |
|
|
|
-| :------------ | :------------------ | :-- |
|
|
|
-| id | 参数id | |
|
|
|
-| defaultValue | 默认值 | |
|
|
|
-| idParameter | 对应产品参数id | |
|
|
|
-| parameterName | 参数名称 | |
|
|
|
-| itemList | 参数项目parameterItem列表 | |
|
|
|
-
|
|
|
-### parameterItem
|
|
|
-
|
|
|
-| 变量名 | 描述 | 示例值 |
|
|
|
-| :---------- | :----------- | :-- |
|
|
|
-| id | 参数项目id | |
|
|
|
-| itemName | 项目名称 | |
|
|
|
-| itemValue | 项目值 | |
|
|
|
-| itemControl | 参数项目控制可选参数项目 | |
|
|
|
-
|
|
|
-# 请求报价
|
|
|
-
|
|
|
-## 应用场景
|
|
|
-
|
|
|
-上传报价信息,获取结果。
|
|
|
-
|
|
|
-## 请求参数
|
|
|
-
|
|
|
-| 参数 | 类型 | 必填 | 描述 | 参数值 |
|
|
|
-| :------------- | :----- | :- | :--- | :------------------------ |
|
|
|
-| businessMethod | String | 是 | 业务编码 | MallAppCall\_ProductQuote |
|
|
|
-| params | String | 是 | 业务参数 | JSON字符串 |
|
|
|
-
|
|
|
-### params内容
|
|
|
-
|
|
|
-此结构有些复杂,表格不方面进行描述,下面用代码说明json数据信息
|
|
|
-
|
|
|
-```json
|
|
|
-
|
|
|
-{
|
|
|
- "idProduct": "产品id",
|
|
|
- "kindCount": "款数",
|
|
|
- "orderQty": "订单数量",
|
|
|
- "quoteMemo": "报价说明",
|
|
|
- "orderMemo": "订单备注",
|
|
|
- "partList": [
|
|
|
- {
|
|
|
- "partName": "部件名称",
|
|
|
- "paramValueList": [
|
|
|
- {
|
|
|
- "parameterName": "参数名称",
|
|
|
- "paramValue": "参数值",
|
|
|
- "paramDisplay": "参数显示值"
|
|
|
- },
|
|
|
- {
|
|
|
- "parameterName": "参数名称",
|
|
|
- "paramValue": "200克铜版C",
|
|
|
- "paramDisplay": "200克铜版C"
|
|
|
- }
|
|
|
- .........
|
|
|
- ]
|
|
|
- }
|
|
|
- ]
|
|
|
-}
|
|
|
-
|
|
|
-```
|
|
|
-
|
|
|
-## 返回结果
|
|
|
-
|
|
|
-| 变量名 | 描述 | 示例值 |
|
|
|
-| ---------- | ---- | --- |
|
|
|
-| TotalMoney | 商品货款 | |
|
|
|
-
|