# 电子合同 Java SDK
# 安装
# 下载 SDK
下载地址
点击立即下载电子合同 Java SDK# 添加到本地仓库
如果是非maven形式项目,直接将jar包放入Dependencies依赖目录
如果是maven项目,可在终端窗口执行以下命令安装到本地仓库:
Linux & Mac:
mvn install:install-file -Dfile=jar文件绝对路径 \
-DgroupId=cn.unitid.econtract \
-DartifactId=cslc-econtract-internal-sdk \
-Dversion=版本号 \
-Dpackaging=jar
Windows:
mvn install:install-file -Dfile=jar文件绝对路径 -DgroupId=cn.unitid.econtract -DartifactId=cslc-econtract-internal-sdk -Dversion=版本号 -Dpackaging=jar
然后在Maven项目pom文件中添加依赖:
<dependency>
<groupId>cn.unitid.econtract</groupId>
<artifactId>cslc-econtract-internal-sdk</artifactId>
<version>版本号</version>
</dependency>
<dependency>
<groupId>commons-codec</groupId>
<artifactId>commons-codec</artifactId>
<version>1.14</version>
</dependency>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.6</version>
</dependency>
# SDK教程
# 获取电子合同系统登录页面URL
# 1、请求参数
- 请求参数以表单形式提交,Content-Type值为: application/x-www-form-urlencoded;charset=utf-8
| 名称 | 类型 | 是否必须 | 描述 |
|---|---|---|---|
| provinceCenterName | String | 否 | 省名称 |
| cityCenterName | String | 否 | 地市名称 |
| countyCenterName | String | 否 | 县市名称 |
| userName | String | 是 | 登陆帐户 |
| fullName | String | 是 | 人员名称 |
| roleCd | String | 否 | 账号角色 R801、R802、R803、R804、R805、R806、R807、R808、R813中的一个或多个,多个用英文逗号隔开 |
| provinceCenterId | String | 是 | 省id |
| cityCenterId | String | 否 | 地市id |
| countyCenterId | String | 否 | 县市id |
| isOfficer | String | 否 | 是否是专管员 0:否 1:是 |
# 2、响应参数
| 名称 | 类型 | 存在 | 描述 |
|---|---|---|---|
| token | String | 是 | 登录token |
| loginPageUrl | String | 是 | 登录页url |
# 3、成功示例
JSON示例
{
"token":"6iRLzLONjbI3ue4nZL0fRvueyYqPwni0",
"loginPageUrl":"http://172.16.3.228:8650/auth/cslc-login?token=6iRLzLONjbI3ue4nZL0fRvueyYqPwni0"
}
# 4、SDK请求示例
//认证token
String authToken = "xxx";
//提供的url
String serverUrl = "xxx";
apiClient = new DefaultEcontractClient(serverUrl, authToken);
LoginUserTokenGetRequest apiRequest = new LoginUserTokenGetRequest();
//必填
apiRequest.setUserName("test-cslc-dev");
//必填
apiRequest.setProvinceCenterId("32");
apiRequest.setFullName("测试体彩登陆");
apiRequest.setRoleCd("R801,R802,R803,R804,R805");
apiRequest.setIsOfficer("0");
try {
LoginUserTokenGetResponse apiResponse = apiClient.execute(apiRequest);
// API调用成功
System.out.println("API调用结果:"+apiResponse.getBody());
} catch (ECApiException e) {
// API调用失败
e.printStackTrace();
}
# 获取电子合同系统合同下载地址等信息
# 1、请求参数
- 请求参数以表单形式提交,Content-Type值为: application/x-www-form-urlencoded;charset=utf-8
| 名称 | 类型 | 是否必须 | 描述 |
|---|---|---|---|
| shopNo | String | 是 | 门店编号 |
| ownerNo | String | 是 | 代销者编号 |
| contractNature | String | 是 | 合同性质 0:生效合同 1:历史合同 (详情见字段解释) |
字段解释
contractNature业务场景介绍
| 业务字段 | 业务场景介绍 |
|---|---|
| 0 | 生效合同:未解约且当前时间大于合同开始时间小于合同结束时间的主合同和补充合同 |
| 1 | 历史合同:已解约或当前时间不在合同起始时间之前的主合同、补充合同、解约合同 |
# 2、响应参数
| 名称 | 类型 | 存在 | 描述 |
|---|---|---|---|
| contractNo | String | 是 | 合同编号 |
| contractType | String | 是 | 合同类型 |
| internalUrl | String | 是 | 内部文件下载地址 |
| url | String | 是 | 外部文件下载路径 |
| timeout | Integer | 是 | 下载路径超时时间 单位:分钟 |
字段解释
contractType业务场景介绍
| 业务字段 | 业务场景介绍 |
|---|---|
| 101 | 代销者主体合同 |
| 102 | 实体店主体合同 |
| 103 | 终端机主体合同 |
| 201 | 主体合同关联补充协议 |
| 301 | 部分解约合同 |
| 302 | 解约通知书合同 |
# 3、成功示例
JSON示例
{
"data": [
{
"contractNo": "3200202010120009",
"contractType": "101",
"internalUrl": "http://172.16.3.228:20128/web/cslc-contract/contract-contract/5f840823de262d0001a1f41f/32/HtFXpp3ZCnu9tZ4o.pdf?token=6113ace36739b00001343630",
"url": "http://222.190.151.227:20128/web/cslc-contract/contract-contract/5f840823de262d0001a1f41f/32/HtFXpp3ZCnu9tZ4o.pdf?token=6113ace36739b00001343630",
"timeout": 30
},
{
"contractNo": "32002020101201",
"contractType": "201",
"internalUrl": "http://172.16.3.228:20128/web/cslc-contract/contract-contract/5f840823de262d0001a1f41f/32/HtFXpp3ZCnu9tZ4o.pdf?token=6113ace36739b00001343631",
"url": "http://222.190.151.227:20128/web/cslc-contract/contract-contract/5f840823de262d0001a1f41f/32/HtFXpp3ZCnu9tZ4o.pdf?token=6113ace36739b00001343631",
"timeout": 30
}
]
}
# 4、SDK请求示例
EcontractClient apiClient = new DefaultEcontractClient("http://localhost:8600", "xxxxxx");
ContractDownloadRequest apiRequest = new ContractDownloadRequest();
//必填 代销者编号
apiRequest.setOwnerNo("77777777");
//必填 合同性质 0生效合同 1历史合同
apiRequest.setContractNature("1");
//必填 门店编号
apiRequest.setShopNo("88888888");
try {
ContractDownloadResponse apiResponse = apiClient.execute(apiRequest);
// API调用成功
List<ContractDownloadResponse.Result> data = apiResponse.getData();
System.out.println("API调用结果:"+ JSONObject.toJSONString(data));
} catch (ECApiException e) {
// API调用失败
e.printStackTrace();
}
# 开启关闭sdk错误日志
//开启日志
ApiLogger.setNeedEnableLogger(true);
//关闭日志
ApiLogger.setNeedEnableLogger(false);
# SDK 版本变动记录
← 介绍