类 TransactionService


  • public class TransactionService
    extends Object
    • 方法详细资料

      • getTransaction

        public Result getTransaction​(String txHash)
      • calcTransferTxFee

        public BigInteger calcTransferTxFee​(TransferTxFeeDto dto)
        计算转账交易手续费
        参数:
        dto - 请求参数
        返回:
        result
      • calcCrossTransferTxFee

        public Map<String,​BigInteger> calcCrossTransferTxFee​(CrossTransferTxFeeDto dto)
        计算跨链交易手续费 包含本链资产手续费与NULS链手续费
        参数:
        dto -
        返回:
      • createTxSimpleTransferOfNonNvt

        public Result createTxSimpleTransferOfNonNvt​(String fromAddress,
                                                     String toAddress,
                                                     int assetChainId,
                                                     int assetId,
                                                     BigInteger amount)
        便捷版 组装在NERVE链内,转账非NVT资产的单账户对单账户普通转账(不能用于转NVT)。 该方法会主动用fromAddress组装(NVT资产)打包手续费, 如果from地址中没有足够的手续费,该交易不会成功。

        如果需要完整信息或结构更复杂的转账(比如多账户),请使用完全版的离线交易组装

        参数:
        fromAddress - 转出地址(NERVE地址)
        toAddress - 转入地址(NERVE地址)
        assetId -
        amount -
        返回:
      • createTxSimpleTransferOfNonNvt

        public Result createTxSimpleTransferOfNonNvt​(String fromAddress,
                                                     String toAddress,
                                                     int assetChainId,
                                                     int assetId,
                                                     BigInteger amount,
                                                     long time,
                                                     String remark)
        便捷版 组装在NERVE链内,转账非NVT资产的单账户对单账户普通转账(不能用于转NVT)。 该方法会主动用fromAddress组装(NVT资产)打包手续费, 如果from地址中没有足够的手续费,该交易不会成功。

        如果需要完整信息或结构更复杂的转账(比如多账户),请使用完全版的离线交易组装

        参数:
        fromAddress - 转出地址(NERVE地址)
        toAddress - 转入地址(NERVE地址)
        assetChainId -
        assetId -
        amount -
        time -
        remark -
        返回:
      • createTxSimpleTransferOfNvt

        public Result createTxSimpleTransferOfNvt​(String fromAddress,
                                                  String toAddress,
                                                  BigInteger amount)
        便捷版 组装在NERVE链内,转账NVT资产的单账户对单账户普通转账。 !! 打包手续费不包含在amount中, 本函数将从fromAddress中额外获取手续费追加到coinfrom中, 请不要将手续费事先加入到amount参数中, amount参数作为实际到账的数量。。

        如果需要完整信息或结构更复杂的转账(比如多账户),请使用完全版的离线交易组装

        参数:
        fromAddress -
        toAddress -
        amount -
        返回:
      • createTxSimpleTransferOfNvt

        public Result createTxSimpleTransferOfNvt​(String fromAddress,
                                                  String toAddress,
                                                  BigInteger amount,
                                                  long time,
                                                  String remark)
        便捷版 组装在NERVE链内,转账NVT资产的单账户对单账户普通转账。 !! 打包手续费不包含在amount中, 本函数将从fromAddress中额外获取手续费追加到coinfrom中, 请不要将手续费事先加入到amount参数中, amount参数作为实际到账的数量。

        如果需要完整信息或结构更复杂的转账(比如多账户),请使用完全版的离线交易组装

        参数:
        fromAddress -
        toAddress -
        amount -
        time -
        remark -
        返回:
      • createTransferTx

        public Result createTransferTx​(TransferDto transferDto)
        创建转账交易(离线) create transfer transaction(off-line)
        参数:
        transferDto - 转账请求参数
        返回:
      • createCrossTxSimpleTransferOfNonNvtNuls

        public Result createCrossTxSimpleTransferOfNonNvtNuls​(String fromAddress,
                                                              String toAddress,
                                                              int assetChainId,
                                                              int assetId,
                                                              BigInteger amount)
        便捷版 组装跨链转账非[NULS和NVT]资产的单账户对单账户普通跨链转账(不能用于转NULS和NVT),用于将资产转入NULS主网。 该方法会主动用fromAddress组装(NULS和NVT资产)打包手续费。

        如果需要完整信息或结构更复杂的转账(比如多账户),请使用完全版的离线交易组装

        参数:
        fromAddress - 转出地址(当前链地址)
        toAddress - 转入地址(NULS地址)
        assetChainId - 转账资产链id
        assetId - 转账资产id
        amount - 转账token数量
        返回:
      • createCrossTxSimpleTransferOfNonNvtNuls

        public Result createCrossTxSimpleTransferOfNonNvtNuls​(String fromAddress,
                                                              String toAddress,
                                                              int assetChainId,
                                                              int assetId,
                                                              BigInteger amount,
                                                              long time,
                                                              String remark)
        便捷版 组装跨链转账非[NULS和NVT]资产的单账户对单账户跨链转账(不能用于转NULS和NVT),用于将资产转入NULS主网。 该方法会主动用fromAddress组装(NULS和NVT资产)打包手续费。

        如果需要完整信息或结构更复杂的转账(比如多账户),请使用完全版的离线交易组装

        参数:
        fromAddress - 转出地址(当前链地址)
        toAddress - 转入地址(NULS地址)
        assetChainId - 转账资产链id
        assetId - 转账资产id
        amount - 转账token数量
        time - 交易时间
        remark - 备注
        返回:
      • createCrossTxSimpleTransferOfNvt

        public Result createCrossTxSimpleTransferOfNvt​(String fromAddress,
                                                       String toAddress,
                                                       BigInteger amount)
        便捷版 组装跨链转账NVT资产的单账户对单账户跨链转账,用于将NVT资产转入NULS主网。 !! 打包手续费不包含在amount中, 本函数将从fromAddress中额外获取[NULS与NVT]手续费追加到coinfrom中, 请不要将手续费事先加入到amount参数中, amount参数作为实际到账的数量。

        如果需要完整信息或结构更复杂的转账(比如多账户),请使用完全版的离线交易组装

        参数:
        fromAddress - 转出地址(当前链地址)
        toAddress - 转入地址(NULS地址)
        amount -
        返回:
      • createCrossTxSimpleTransferOfNvt

        public Result createCrossTxSimpleTransferOfNvt​(String fromAddress,
                                                       String toAddress,
                                                       BigInteger amount,
                                                       long time,
                                                       String remark)
        便捷版 组装跨链转账NVT资产的单账户对单账户跨链转账,用于将NVT资产转入NULS主网。 !! 打包手续费不包含在amount中, 本函数将从fromAddress中额外获取[NULS与NVT]手续费追加到coinfrom中, 请不要将手续费事先加入到amount参数中, amount参数作为实际到账的数量。

        如果需要完整信息或结构更复杂的转账(比如多账户),请使用完全版的离线交易组装

        参数:
        fromAddress - 转出地址(当前链地址)
        toAddress - 转入地址(NULS地址)
        amount -
        time -
        remark -
        返回:
      • createCrossTxSimpleTransferOfNuls

        public Result createCrossTxSimpleTransferOfNuls​(String fromAddress,
                                                        String toAddress,
                                                        BigInteger amount)
        便捷版 组装跨链转账NULS资产的单账户对单账户跨链转账,用于将NULS资产转入NULS主网。 !! 打包手续费不包含在amount中, 本函数将从fromAddress中额外获取[NULS与NVT]手续费追加到coinfrom中, 请不要将手续费事先加入到amount参数中, amount参数作为实际到账的数量。

        如果需要完整信息或结构更复杂的转账(比如多账户),请使用完全版的离线交易组装

        参数:
        fromAddress - 转出地址(当前链地址)
        toAddress - 转入地址(NULS地址)
        amount -
        返回:
      • createCrossTxSimpleTransferOfNuls

        public Result createCrossTxSimpleTransferOfNuls​(String fromAddress,
                                                        String toAddress,
                                                        BigInteger amount,
                                                        long time,
                                                        String remark)
        便捷版 组装跨链转账NULS资产的单账户对单账户跨链转账,用于将NULS资产转入NULS主网。 !! 打包手续费不包含在amount中, 本函数将从fromAddress中额外获取[NULS与NVT]手续费追加到coinfrom中, 请不要将手续费事先加入到amount参数中, amount参数作为实际到账的数量。

        如果需要完整信息或结构更复杂的转账(比如多账户),请使用完全版的离线交易组装

        参数:
        fromAddress - 转出地址(当前链地址)
        toAddress - 转入地址(NULS地址)
        amount -
        time -
        remark -
        返回:
      • createCrossTransferTx

        public Result createCrossTransferTx​(TransferDto transferDto)
        创建跨链转账交易
        参数:
        transferDto -
        返回:
      • createWithdrawalTx

        public Result createWithdrawalTx​(WithdrawalTxDto withdrawalTxDto,
                                         String withdrawalAssetNonce,
                                         String nvtFeeAssetNonce)
        提现 异构跨链转出 收取nvt作为手续费
        参数:
        withdrawalTxDto -
        返回:
      • withdrawalAdditionalFeeTx

        public Result withdrawalAdditionalFeeTx​(String fromAddress,
                                                String txHash,
                                                BigInteger amount,
                                                long time,
                                                String remark,
                                                String nonce)
        追加异构提现手续费
        参数:
        fromAddress -
        txHash -
        amount -
        time -
        remark -
        返回:
      • stableSwapTradeTx

        public Result stableSwapTradeTx​(String from,
                                        String to,
                                        NerveTokenAmount[] tokenAmountIns,
                                        String[] nonces,
                                        int tokenOutIndex,
                                        String pairAddress,
                                        String feeTo,
                                        String remark)
        Stable-Swap稳定币兑换交易
        参数:
        from - 用户地址
        to - 接收地址
        tokenAmountIns - 卖出的资产数量列表
        nonces - 卖出的资产nonce列表
        tokenOutIndex - 买进的资产索引
        pairAddress - 交易对地址
        feeTo - 交易手续费取出一部分给指定的接收地址(当前未收取手续费)
        remark - 交易备注
        返回:
      • calcMultiSignTransferTxFee

        public BigInteger calcMultiSignTransferTxFee​(MultiSignTransferTxFeeDto dto)
        计算转账交易手续费
        参数:
        dto - 请求参数
        返回:
        result
      • createConsensusTx

        public Result createConsensusTx​(ConsensusDto consensusDto)
        组装创建共识节点交易 Assemble to create consensus node transactions
        参数:
        consensusDto - 创建共识节点请求参数
        返回:
        result
      • createDepositTx

        public Result createDepositTx​(DepositDto dto)
        Create a proxy consensus transaction 创建委托共识交易
        参数:
        dto - 委托共识请求参数
        返回:
        result
      • createWithdrawDepositTx

        public Result createWithdrawDepositTx​(WithDrawDto dto)
        创建取消委托交易
        参数:
        dto - 取消委托交易参数
        返回:
        result
      • createStopConsensusTx

        public Result createStopConsensusTx​(StopConsensusDto dto)
        创建注销共识节点交易
        参数:
        dto - 注销节点参数请求
        返回:
        result
      • signTx

        public Result signTx​(String txHex,
                             String address,
                             String encryptedPrivateKey,
                             String password)
        密文私钥签名交易(单签)
        参数:
        address -
        txHex -
        返回:
      • signTx

        public Result signTx​(String txHex,
                             String address,
                             String privateKey)
        明文私钥签名交易(单签)
        参数:
        address -
        txHex -
        返回:
      • broadcastTx

        public Result broadcastTx​(String txHex)
        广播交易
        参数:
        txHex -
        返回:
      • validateTx

        public Result validateTx​(String txHex)
        验证交易
        参数:
        txHex -
        返回:
      • createMultiSignWithdrawDepositTx

        public Result createMultiSignWithdrawDepositTx​(MultiSignWithDrawDto dto)
        创建取消委托交易
        参数:
        dto - 取消委托交易参数
        返回:
        result
      • getCurrentTimeSeconds

        public long getCurrentTimeSeconds()