# Merchant API
介绍
Merchant API是对Merchant模块进行的功能封装。提供一些通用的模板,供开发者使用。目前有以下三种模板:
普通销售模板: 销售者创建资产,然后将资产授权给托管合约,进行上架销售。消费者通过托管合约购买资产。托管合约完成销售者资产与消费者资金进行交换的过程。解决双方信任问题。
收费活动模板: 活动发起者创建一次活动,发行一定数量的活动门票。然后将门票授权给托管合约进行上架出售。活动参与在通过托管合约购买活动门票,参与者付出的资金由托管合约进行保管。当活动结束后,活动发起者才能获得活动门票的资金。
质押活动模板: 活动发起者创建一次活动,发行一定数量的活动门票。然后将门票授权给托管合约进行上架出售。活动参与在通过托管合约购买活动门票,参与者付出的资金由托管合约进行保管。活动开始前活动发起者校验到场者的门票id,并返回其支付的押金。未到场者押金在活动结束后转移到活动发起者地址。
使用Merchant API快速进行开发,请阅读以下文档
Build
//公用参数
String node = "http://47.105.149.174:8545";//节点地址
BigInteger gasPrice = BigInteger.valueOf(1000000000);
BigInteger gasLimit = BigInteger.valueOf(8000000);
//普通销售模板
MerchantService ethMerchantService = new MerchantServiceImpl("DMA_TESTNET",nodeurl);
//收费活动模板
ChargeActivityServiceImpl chargeActivityService = new ChargeActivityServiceImpl("DMA_TESTNET", nodeurl);
//质押活动模板
PledgeActivityService pledgeActivityService = new PledgeActivityServiceImpl("DMA_TESTNET",nodeurl);
目录
API
1. 普通销售模板
1. 1 创建合约
- 方法名 :
deploy()
参数说明:
参数名 | 参数类型 | 参数说明 |
---|---|---|
privateKey | String | 用户私钥 |
gasPrice | BigInteger | gas价格 |
gasLimit | BigInteger | gas限制 |
返回值类型:
JsonResult
返回说明:
/*
{
"code": 0,
"data": "0xac047d394e92061ba0c3ceeab7e658264ea13d98",
"map": {},
"msg": "操作成功",
"success": true
}
*/
- 示例代码
@Test
public void deploy() throws Exception {
String privateKey = "afac4908cd6230baa24ef265e5609e9d0908989582779355b307f86a1e6db64d";
String name = "Test merchant";
String symbol = "TM";
String _metadata = "TestData";
JsonResult<DeployResult> jsonResult = merchantService.deploy(privateKey, gasPrice, gasLimit);
System.out.println(JSON.toJSONString(jsonResult));
}
1. 3 资产上架
- 方法名 :
onSales()
参数说明:
参数名 | 参数类型 | 参数说明 |
---|---|---|
trustAddress | String | 托管合约地址 |
assetAddress | String | 资产合约地址 |
privateKey | String | 私钥 |
map | Map | [{1000000001: 1.0 }] |
gasPrice | BigInteger | gas价格 |
gasLimit | BigInteger | gas限制 |
owner | String | 资产拥有者 |
返回值类型:
JsonResult
返回说明:
/*{
"code": 0,
"data": {
"saveApprove": ["0x799f75c8997471725c00d9c5a976745c33c9cdfb2b142b058944035483f4e012"],
"approve": ["0xd8a33f82422243277b162a5444a565440c652dea9f624ba58ea3506596a74eae"]
},
"map": {},
"msg": "操作成功",
"success": true
}*/
- 示例代码
@Test
public void onSales() throws Exception {
List<Long> longs = Arrays.asList(8672524357L,5584566998L,9767553216L,9913677584L,6355617671L);
String assetAddress = "0xbc1Bea10F80f4EA26d9344F0e7c588502539Ea2A";
String trustAddress = "0xac047d394e92061ba0c3ceeab7e658264ea13d98";
Map<BigInteger, BigDecimal> list = new HashMap<>();
for (Long aLong : longs) {
list.put(BigInteger.valueOf(aLong ) , BigDecimal.ONE) ;
}
String owner = credentials.getAddress();
JsonResult<Map<String, List<String>>> map = merchantService.onSales(trustAddress ,assetAddress, privateKey, gasPrice, gasLimit, list, owner);
System.out.println(JSON.toJSONString(map));
}
1. 4 资产下架
方法名 :
offSales()
参数说明:
参数名 | 参数类型 | 参数说明 |
---|---|---|
trustAddress | String | 托管合约地址 |
privateKey | String | 私钥 |
gasPrice | BigInteger | gas价格 |
gasLimit | BigInteger | gas限制 |
tokenids | List | 资产id |
返回值类型:
JsonResult
返回说明:
/*{
"code": 0,
"data": ["0x1c93d141447c7f1c2a356e31251ca3616c3131185a01a4437ddecd2291d19bcc"],
"map": {},
"msg": "操作成功",
"success": true
}*/
1. 5 创建订单
- 方法名 :
createOrder()
方法说明: 创建订单操作先执行代币合约的
approve()
授权操作,再执行平台托管合约的transfer()
交易操作
- 参数说明
参数名 | 参数类型 | 参数说明 |
---|---|---|
trustAddress | String | 平台托管合约地址 |
tokenIdList | List | 资产id数组 |
privateKey | String | 私钥 |
gasPrice | BigInteger | gas价格 |
gasLimit | BigInteger | gas限制 |
sumPrice | String | 总金额 |
owner | String | 资产拥有者 |
返回值类型:
JsonResult
返回说明:
/*{
"code": 0,
"data": "0xf049cbe05dd14361bc7b2c01d79be0eb97530e6c249c43f6db7e352c7f61ba15",
"map": {},
"msg": "操作成功",
"success": true
}*/
- 示例代码
@Test
public void createOrder() throws Exception {
String assetAddress = "0xbc1Bea10F80f4EA26d9344F0e7c588502539Ea2A";
String trustAddress = "0xac047d394e92061ba0c3ceeab7e658264ea13d98";
List<Long> longs = Arrays.asList(8672524357L,5584566998L,9767553216L,9913677584L,6355617671L);
BigDecimal sumPrice =BigDecimal.valueOf(longs.size());
List<BigInteger> tokenIds = new ArrayList<>( );
for (Long aLong : longs) {
tokenIds.add(BigInteger.valueOf(aLong ) ) ;
}
JsonResult<String> map = merchantService.createOrder(trustAddress, assetAddress, privateKeyB, gasPrice, gasLimit, tokenIds, sumPrice, credentials.getAddress());
System.out.println(JSON.toJSONString(map));
}
1. 6 查询指定tokenid上架信息
方法名 :
getApproveInfo()
参数说明:
参数名 | 参数类型 | 参数说明 |
---|---|---|
trustAddress | String | 交易托管合约地址 |
tokenId | String | tokenId |
返回值类型:
JsonResult
返回说明:
{
"code": 0,
"data": {
"owner": "0xd07de12d15e686c013666fb9c47f23c5997faa21",
"tokenid": 8672524357,
"value": "1"
},
"map": {},
"msg": "操作成功",
"success": true
}
- 示例代码
@Test public void getApproveInfo(){
String assetAddress = "0xbc1Bea10F80f4EA26d9344F0e7c588502539Ea2A";
String trustAddress = "0xac047d394e92061ba0c3ceeab7e658264ea13d98";
JsonResult<PlatFormApproveInfo> approveInfo = merchantService.getApproveInfo(trustAddress, assetAddress, BigInteger.valueOf(8672524357L));
System.out.println("approveInfo = " + approveInfo);
}
2. 收费活动模板
2. 1 创建合约
- 方法名 :
deploy()
参数说明:
参数名 | 参数类型 | 参数说明 |
---|---|---|
privateKey | String | 用户私钥 |
name | String | 合约名称 |
symbol | String | 合约简称 |
metaData | String | 描述信息 |
gasPrice | BigInteger | gas价格 |
gasLimit | BigInteger | gas限制 |
endTime | long | 活动结束时间戳 |
endTime
返回值类型:
JsonResult
返回说明:
/*{
"code": "0",
"data": {
"trustAddress": "0x919f05c5845e67edd5f7f627f9340c61405d1c39",//平台托管合约地址
"assetAddress": "0x41c73a10c9bf866e413d93a2d8ebf2a2a9d533ca"//资产合约地址
},
"map": {},
"msg": "操作成功",
"success": true
}*/
- 示例代码
@Test
public void deploy() throws Exception {
String privateKey = "afac4908cd6230baa24ef265e5609e9d0908989582779355b307f86a1e6db64d";
String name = "Test merchant";
String symbol = "TM";
String _metadata = "TestData";
long endTime = 1564140675;
JsonResult<DeployResult> jsonResult = chargeActivityService.deploy(privateKey, gasPrice, gasLimit, name, symbol, _metadata);
System.out.println(JSON.toJSONString(jsonResult));
}
2. 2 发布资产
- 方法名 :
mint()
参数说明:
参数名 | 参数类型 | 参数说明 |
---|---|---|
assetAddress | String | 资产合约地址 |
privateKey | String | 私钥 |
gasPrice | BigInteger | gas价格 |
gasLimit | BigInteger | gas限制 |
to | String | 资产拥有者 |
metaData | String | 自定义信息 |
tokenIdList | List | 资产Id数组 |
canTrans | Boolean | 是否可转移 |
canBurn | Boolean | 是否可销毁 |
返回值类型:
JsonResult
返回说明:
/*{
"code": "0",
"data": "0xe4843ccebe183be09e5d306f77eecea42ac2e1e443782cfde952b9a56a5596e7",
"map": {},
"msg": "操作成功",
"success": true
}*/
- 示例代码
@Test
public void mint() throws Exception {
String assetAddress = "0x41c73a10c9bf866e413d93a2d8ebf2a2a9d533ca";
String privateKey = "afac4908cd6230baa24ef265e5609e9d0908989582779355b307f86a1e6db64d";
String to = "0xB6901ccE4e9643e73B5E43948CAf888E8BDF9453";
String _metadata = "TestData";
List<BigInteger> list=new ArrayList<>();
list.add(BigInteger.valueOf(210001));
list.add(BigInteger.valueOf(210002));
list.add(BigInteger.valueOf(210003));
list.add(BigInteger.valueOf(210004));
JsonResult<String> map = chargeActivityService.mint(assetAddress,privateKey, gasPrice, gasLimit, to, _metadata,list,true,true);
System.out.println(JSON.toJSONString(map));
}
2. 3 资产上架
- 方法名 :
onSales()
参数说明:
参数名 | 参数类型 | 参数说明 |
---|---|---|
assetAddress | String | 资产合约地址 |
trustAddress | String | 托管合约地址 |
tokenIdList | List | 资产id数组 |
privateKey | String | 私钥 |
gasPrice | BigInteger | gas价格 |
gasLimit | BigInteger | gas限制 |
price | BigDecimal | 上架单价 |
owner | String | 资产拥有者 |
返回值类型:
JsonResult
返回说明:
/*{
"code": "0",
"data": {
"approveTxId": "0x3964e6f84eda2abe381aa7f9dcf357cf91346ab639b5e78e7e6d4762300edb4e",//资产合约授权返回hash
"saveApproveTxId": "0x1dd86d2a15bf5d3c8a9fbf33c2a2b0dd571397e74f112a6736307c20a5b86358"//平台托管合约上架返回hash
},
"map": {},
"msg": "操作成功",
"success": true
}*/
- 示例代码
@Test
public void onSales() throws Exception {
String assetAddress = "0x41c73a10c9bf866e413d93a2d8ebf2a2a9d533ca";
String trustAddress = "0x919f05c5845e67edd5f7f627f9340c61405d1c39";
String privateKey = "afac4908cd6230baa24ef265e5609e9d0908989582779355b307f86a1e6db64d";
String owner = "0xB6901ccE4e9643e73B5E43948CAf888E8BDF9453";
List<BigInteger> list=new ArrayList<>();
list.add(BigInteger.valueOf(390001));
list.add(BigInteger.valueOf(390002));
list.add(BigInteger.valueOf(390003));
list.add(BigInteger.valueOf(390004));
JsonResult<OnSaleResult> map = chargeActivityService.onSales( assetAddress, trustAddress, privateKey, gasPrice, gasLimit, list, new BigDecimal("10"), owner);
System.out.println(JSON.toJSONString(map));
}
2. 4 资产下架
方法名 :
offSales()
参数说明:
参数名 | 参数类型 | 参数说明 |
---|---|---|
trustAddress | String | 托管合约地址 |
privateKey | String | 私钥 |
gasPrice | BigInteger | gas价格 |
gasLimit | BigInteger | gas限制 |
tokenids | List | 资产id |
返回值类型:
JsonResult
返回说明:
/* {
"code": "0",
"data": "0x4d645a3465be5bb54d1ff2aaabbcf49040e715eb8988e434f75e01bc31fed8ea",//hash
"map": {},
"msg": "操作成功",
"success": true
}*/
2. 5 创建订单
- 方法名 :
createOrder()
方法说明: 创建订单操作先执行代币合约的
approve()
授权操作,再执行平台托管合约的transfer()
交易操作
- 参数说明
参数名 | 参数类型 | 参数说明 |
---|---|---|
trustAddress | String | 平台托管合约地址 |
tokenIdList | List | 资产id数组 |
privateKey | String | 私钥 |
gasPrice | BigInteger | gas价格 |
gasLimit | BigInteger | gas限制 |
sumPrice | String | 总金额 |
owner | String | 资产拥有者 |
返回值类型:
JsonResult
返回说明:
/*{
"code": "0",
"data": {
"transferTxId": "0xd1dcd4fc74d8980fde8073fc939ee4bcafd584a0987e5bdaac2917c008a4b7cb",//平台托管合约交易返回hash
"approveTxId": "0xf69606bc7c25ee450777a7d7836141ed5f8ef4bf1fb30456cf45724b9f60e6f1"//代币授权返回hash
},
"map": {},
"msg": "操作成功",
"success": true
}*/
- 示例代码
@Test
public void createOrder() throws Exception {
String trustAddress = "0x919f05c5845e67edd5f7f627f9340c61405d1c39";
String privateKey = "b6c77d007c04e1b2f1bf8e2f8eab8c012f5a4044ca09f02980ae79b148c921e0";
String owner = "0xB6901ccE4e9643e73B5E43948CAf888E8BDF9453";
List<BigInteger> list = new ArrayList<>();
list.add(BigInteger.valueOf(2001));
list.add(BigInteger.valueOf(2002));
list.add(BigInteger.valueOf(2003));
list.add(BigInteger.valueOf(2004));
String sumPrice = "40";
JsonResult<Map<String, String>> map = chargeActivityService.createOrder(trustAddress, privateKey, gasPrice, gasLimit, list, sumPrice, owner);
System.out.println(JSON.toJSONString(map));
}
2. 6 查询指定tokenid上架信息
方法名 :
getApproveInfo()
参数说明:
参数名 | 参数类型 | 参数说明 |
---|---|---|
trustAddress | String | 交易托管合约地址 |
tokenId | String | tokenId |
返回值类型:
JsonResult
返回说明:
{
"code": "0",
"data": {
"owner": "0x591f62ef4b811dc400473cabe0d6641f59186089",
"tokenid": 450002,
"value": "1"
},
"map": {},
"msg": "操作成功",
"success": true
}
- 示例代码
@Test
public void getApproveInfo() throws Exception {
String trustAddress = "0x6bc5d6249344b3372f6a18d0285c94f677f2afaa";
BigInteger tokenid = BigInteger.valueOf(450002);
JsonResult<PlatFormApproveInfo> platFormApproveInfo = chargeActivityService.getApproveInfo(trustAddress, tokenid);
System.out.println(JSON.toJSONString(platFormApproveInfo));
}
2. 7 结束活动
方法名 :
endActivity()
参数说明:
参数名 | 参数类型 | 参数说明 |
---|---|---|
trustAddress | String | 交易托管合约地址 |
privateKey | String | 私钥 |
gasPrice | BigInteger | tokenId |
gasLimit | BigInteger | tokenId |
返回值类型:
JsonResult
返回说明:
/* {
"code": "0",
"data": "0x4d645a3465be5bb54d1ff2aaabbcf49040e715eb8988e434f75e01bc31fed8ea",//hash
"map": {},
"msg": "操作成功",
"success": true
}*/
- 示例代码
@Test
public void endActivity() throws Exception {
String trustAddress = "0x6bc5d6249344b3372f6a18d0285c94f677f2afaa";
String privateKey = "b6c77d007c04e1b2f1bf8e2f8eab8c012f5a4044ca09f02980ae79b148c921e0";
JsonResult<String> platFormApproveInfo = chargeActivityService.endActivity(trustAddress, privateKey,gasPrice,gasLimit);
}
2. 8 获取活动结束时间
方法名 :
getEndTime()
参数说明:
参数名 | 参数类型 | 参数说明 |
---|---|---|
trustAddress | String | 交易托管合约地址 |
返回值类型:
JsonResult
返回说明:
{
"code": "0",
"data": { 1564140675
},
"map": {},
"msg": "操作成功",
"success": true
}
- 示例代码
@Test
public void getEndTime() throws Exception {
String trustAddress = "0x6bc5d6249344b3372f6a18d0285c94f677f2afaa";
BigInteger tokenid = BigInteger.valueOf(450002);
JsonResult<Long> json = chargeActivityService.getEndTime(trustAddress, tokenid);
}
3. 质押活动模板
3. 1 创建合约
- 方法名 :
deploy()
参数说明:
参数名 | 参数类型 | 参数说明 |
---|---|---|
privateKey | String | 用户私钥 |
name | String | 合约名称 |
symbol | String | 合约简称 |
metaData | String | 描述信息 |
gasPrice | BigInteger | gas价格 |
gasLimit | BigInteger | gas限制 |
返回值类型:
JsonResult
返回说明:
/*{
"code": "0",
"data": {
"trustAddress": "0x919f05c5845e67edd5f7f627f9340c61405d1c39",//平台托管合约地址
"assetAddress": "0x41c73a10c9bf866e413d93a2d8ebf2a2a9d533ca"//资产合约地址
},
"map": {},
"msg": "操作成功",
"success": true
}*/
- 示例代码
@Test
public void deploy() throws Exception {
String privateKey = "afac4908cd6230baa24ef265e5609e9d0908989582779355b307f86a1e6db64d";
String name = "Test merchant";
String symbol = "TM";
String _metadata = "TestData";
JsonResult<DeployResult> jsonResult = pledgeActivityService.deploy(privateKey, gasPrice, gasLimit, name, symbol, _metadata);
System.out.println(JSON.toJSONString(jsonResult));
}
3. 2 发布资产
- 方法名 :
mint()
参数说明:
参数名 | 参数类型 | 参数说明 |
---|---|---|
assetAddress | String | 资产合约地址 |
privateKey | String | 私钥 |
gasPrice | BigInteger | gas价格 |
gasLimit | BigInteger | gas限制 |
to | String | 资产拥有者 |
metaData | String | 自定义信息 |
tokenIdList | List | 资产Id数组 |
canTrans | Boolean | 是否可转移 |
canBurn | Boolean | 是否可销毁 |
返回值类型:
JsonResult
返回说明:
/*{
"code": "0",
"data": "0xe4843ccebe183be09e5d306f77eecea42ac2e1e443782cfde952b9a56a5596e7",
"map": {},
"msg": "操作成功",
"success": true
}*/
- 示例代码
@Test
public void mint() throws Exception {
String assetAddress = "0x41c73a10c9bf866e413d93a2d8ebf2a2a9d533ca";
String privateKey = "afac4908cd6230baa24ef265e5609e9d0908989582779355b307f86a1e6db64d";
String to = "0xB6901ccE4e9643e73B5E43948CAf888E8BDF9453";
String _metadata = "TestData";
List<BigInteger> list=new ArrayList<>();
list.add(BigInteger.valueOf(210001));
list.add(BigInteger.valueOf(210002));
list.add(BigInteger.valueOf(210003));
list.add(BigInteger.valueOf(210004));
JsonResult<String> map = pledgeActivityService.mint(assetAddress,privateKey, gasPrice, gasLimit, to, _metadata,list,true,true);
System.out.println(JSON.toJSONString(map));
}
3. 3 资产上架
- 方法名 :
onSales()
参数说明:
参数名 | 参数类型 | 参数说明 |
---|---|---|
assetAddress | String | 资产合约地址 |
trustAddress | String | 托管合约地址 |
tokenIdList | List | 资产id数组 |
privateKey | String | 私钥 |
gasPrice | BigInteger | gas价格 |
gasLimit | BigInteger | gas限制 |
price | BigDecimal | 上架单价 |
owner | String | 资产拥有者 |
返回值类型:
JsonResult
返回说明:
/*{
"code": "0",
"data": {
"approveTxId": "0x3964e6f84eda2abe381aa7f9dcf357cf91346ab639b5e78e7e6d4762300edb4e",//资产合约授权返回hash
"saveApproveTxId": "0x1dd86d2a15bf5d3c8a9fbf33c2a2b0dd571397e74f112a6736307c20a5b86358"//平台托管合约上架返回hash
},
"map": {},
"msg": "操作成功",
"success": true
}*/
- 示例代码
@Test
public void onSales() throws Exception {
String assetAddress = "0x41c73a10c9bf866e413d93a2d8ebf2a2a9d533ca";
String trustAddress = "0x919f05c5845e67edd5f7f627f9340c61405d1c39";
String privateKey = "afac4908cd6230baa24ef265e5609e9d0908989582779355b307f86a1e6db64d";
String owner = "0xB6901ccE4e9643e73B5E43948CAf888E8BDF9453";
List<BigInteger> list=new ArrayList<>();
list.add(BigInteger.valueOf(390001));
list.add(BigInteger.valueOf(390002));
list.add(BigInteger.valueOf(390003));
list.add(BigInteger.valueOf(390004));
JsonResult<OnSaleResult> map = pledgeActivityService.onSales( assetAddress, trustAddress, privateKey, gasPrice, gasLimit, list, new BigDecimal("10"), owner);
System.out.println(JSON.toJSONString(map));
}
3. 4 资产下架
方法名 :
offSales()
参数说明:
参数名 | 参数类型 | 参数说明 |
---|---|---|
trustAddress | String | 托管合约地址 |
privateKey | String | 私钥 |
gasPrice | BigInteger | gas价格 |
gasLimit | BigInteger | gas限制 |
tokenids | List | 资产id |
返回值类型:
JsonResult
返回说明:
/* {
"code": "0",
"data": "0x4d645a3465be5bb54d1ff2aaabbcf49040e715eb8988e434f75e01bc31fed8ea",//hash
"map": {},
"msg": "操作成功",
"success": true
}*/
3. 5 创建订单
- 方法名 :
createOrder()
方法说明: 创建订单操作先执行代币合约的
approve()
授权操作,再执行平台托管合约的transfer()
交易操作
- 参数说明
参数名 | 参数类型 | 参数说明 |
---|---|---|
trustAddress | String | 平台托管合约地址 |
tokenIdList | List | 资产id数组 |
privateKey | String | 私钥 |
gasPrice | BigInteger | gas价格 |
gasLimit | BigInteger | gas限制 |
sumPrice | String | 总金额 |
owner | String | 资产拥有者 |
返回值类型:
JsonResult
返回说明:
/*{
"code": "0",
"data": {
"transferTxId": "0xd1dcd4fc74d8980fde8073fc939ee4bcafd584a0987e5bdaac2917c008a4b7cb",//平台托管合约交易返回hash
"approveTxId": "0xf69606bc7c25ee450777a7d7836141ed5f8ef4bf1fb30456cf45724b9f60e6f1"//代币授权返回hash
},
"map": {},
"msg": "操作成功",
"success": true
}*/
- 示例代码
@Test
public void createOrder() throws Exception {
String trustAddress = "0x919f05c5845e67edd5f7f627f9340c61405d1c39";
String privateKey = "b6c77d007c04e1b2f1bf8e2f8eab8c012f5a4044ca09f02980ae79b148c921e0";
String owner = "0xB6901ccE4e9643e73B5E43948CAf888E8BDF9453";
List<BigInteger> list = new ArrayList<>();
list.add(BigInteger.valueOf(2001));
list.add(BigInteger.valueOf(2002));
list.add(BigInteger.valueOf(2003));
list.add(BigInteger.valueOf(2004));
String sumPrice = "40";
JsonResult<Map<String, String>> map = pledgeActivityService.createOrder(trustAddress, privateKey, gasPrice, gasLimit, list, sumPrice, owner);
System.out.println(JSON.toJSONString(map));
}
3. 6 查询指定tokenid上架信息
方法名 :
getApproveInfo()
参数说明:
参数名 | 参数类型 | 参数说明 |
---|---|---|
trustAddress | String | 交易托管合约地址 |
tokenId | String | tokenId |
返回值类型:
JsonResult
返回说明:
{
"code": "0",
"data": {
"owner": "0x591f62ef4b811dc400473cabe0d6641f59186089",
"tokenid": 450002,
"value": "1"
},
"map": {},
"msg": "操作成功",
"success": true
}
- 示例代码
@Test
public void getApproveInfo() throws Exception {
String trustAddress = "0x6bc5d6249344b3372f6a18d0285c94f677f2afaa";
BigInteger tokenid = BigInteger.valueOf(450002);
JsonResult<PlatFormApproveInfo> json = pledgeActivityService.getApproveInfo(trustAddress, tokenid);
}
3. 7 结束活动
方法名 :
endActivity()
参数说明:
参数名 | 参数类型 | 参数说明 |
---|---|---|
trustAddress | String | 交易托管合约地址 |
privateKey | String | 私钥 |
gasPrice | BigInteger | tokenId |
gasLimit | BigInteger | tokenId |
返回值类型:
JsonResult
返回说明:
/* {
"code": "0",
"data": "0x4d645a3465be5bb54d1ff2aaabbcf49040e715eb8988e434f75e01bc31fed8ea",//hash
"map": {},
"msg": "操作成功",
"success": true
}*/
- 示例代码
@Test
public void endActivity() throws Exception {
String trustAddress = "0x6bc5d6249344b3372f6a18d0285c94f677f2afaa";
String privateKey = "b6c77d007c04e1b2f1bf8e2f8eab8c012f5a4044ca09f02980ae79b148c921e0";
JsonResult<String> json = pledgeActivityService.endActivity(trustAddress, privateKey,gasPrice,gasLimit);
}
3. 8 获取活动结束时间
方法名 :
getEndTime()
参数说明:
参数名 | 参数类型 | 参数说明 |
---|---|---|
trustAddress | String | 交易托管合约地址 |
返回值类型:
JsonResult
返回说明:
{
"code": "0",
"data": { 1564140675
},
"map": {},
"msg": "操作成功",
"success": true
}
- 示例代码
@Test
public void getEndTime() throws Exception {
String trustAddress = "0x6bc5d6249344b3372f6a18d0285c94f677f2afaa";
BigInteger tokenid = BigInteger.valueOf(450002);
JsonResult<Long> json = pledgeActivityService.getEndTime(trustAddress, tokenid);
}
3. 9 验证签到后退还押金
方法名 :
verify()
参数说明:
参数名 | 参数类型 | 参数说明 |
---|---|---|
trustAddress | String | 交易托管合约地址 |
privateKey | String | 私钥 |
gasPrice | BigInteger | tokenId |
gasLimit | BigInteger | tokenId |
tokenId | BigInteger | 待验证tokenId |
owner | String | 待验证拥有者地址 |
返回值类型:
JsonResult
返回说明:
/* {
"code": "0",
"data": "0x4d645a3465be5bb54d1ff2aaabbcf49040e715eb8988e434f75e01bc31fed8ea",//hash
"map": {},
"msg": "操作成功",
"success": true
}*/
- 示例代码
@Test
public void verify() throws Exception {
String trustAddress = "0x6bc5d6249344b3372f6a18d0285c94f677f2afaa";
String privateKey = "b6c77d007c04e1b2f1bf8e2f8eab8c012f5a4044ca09f02980ae79b148c921e0";
BigInteger tokenid = BigInteger.valueOf(450002);
String owner="0x0b23eff3a9d8f02829d3b0714cf2e00f5fae2b47";
JsonResult<String> json = pledgeActivityService.endActivity(trustAddress, privateKey,gasPrice,gasLimit,tokenid,owner);
}
3. 10 发起方主动退款
方法名 :
refund()
参数说明:
参数名 | 参数类型 | 参数说明 |
---|---|---|
trustAddress | String | 交易托管合约地址 |
privateKey | String | 私钥 |
gasPrice | BigInteger | tokenId |
gasLimit | BigInteger | tokenId |
tokenId | BigInteger | tokenId |
返回值类型:
JsonResult
返回说明:
/* {
"code": "0",
"data": "0x4d645a3465be5bb54d1ff2aaabbcf49040e715eb8988e434f75e01bc31fed8ea",//hash
"map": {},
"msg": "操作成功",
"success": true
}*/
- 示例代码
@Test
public void refund() throws Exception {
String trustAddress = "0x6bc5d6249344b3372f6a18d0285c94f677f2afaa";
String privateKey = "b6c77d007c04e1b2f1bf8e2f8eab8c012f5a4044ca09f02980ae79b148c921e0";
BigInteger tokenid = BigInteger.valueOf(450002);
String owner="0x0b23eff3a9d8f02829d3b0714cf2e00f5fae2b47";
JsonResult<String> json = pledgeActivityService.refund(trustAddress, privateKey,gasPrice,gasLimit,tokenid);
}