/** * @param Transaction|null $transaction * @param TransactionListItem $transactionListItem * @param string $apiUrl * @param string $explorerUrl * @return $this */ public static function from($transaction, TransactionListItem $transactionListItem, $apiUrl, $explorerUrl) { $transactionListItemDto = new self(); // From local app transaction if ($transaction !== null) { $transactionListItemDto->setDescription($transaction->getDescription()); } else { $transactionListItemDto->setDescription($transactionListItem->getTxHash()); } // From BlockCypher TXRef $transactionListItemDto->setTxHash($transactionListItem->getTxHash()); //$transactionListItemDto->setTxInputN($transactionListItem->getTxInputN()); //$transactionListItemDto->setValue($transactionListItem->getValue()); $transactionListItemDto->setConfirmations($transactionListItem->getConfirmations()); if ($transactionListItem->getReceived() !== null) { $transactionListItemDto->setReceived($transactionListItem->getReceived()); } if ($transactionListItem->getConfirmed() !== null) { $transactionListItemDto->setConfirmed($transactionListItem->getConfirmed()); } $transactionListItemDto->setBlockHeight($transactionListItem->getBlockHeight()); $transactionListItemDto->setTotal($transactionListItem->getFinalTotal()); $transactionListItemDto->setApiUrl($apiUrl); $transactionListItemDto->setExplorerUrl($explorerUrl); return $transactionListItemDto; }
/** * @param BlockCypherTXRef $blockCypherTXRef * @return TransactionListItem * @throws \Exception */ public static function from(BlockCypherTXRef $blockCypherTXRef) { $transactionListItem = new self(); // DEBUG //var_dump($blockCypherTXRef); //die(); $transactionListItem->setTxHash($blockCypherTXRef->getTxHash()); $transactionListItem->setConfirmations($blockCypherTXRef->getConfirmations()); if ($blockCypherTXRef->getReceived() !== null) { $transactionListItem->setReceived(DateTimeFactory::fromISO8601($blockCypherTXRef->getReceived())); } if ($blockCypherTXRef->getConfirmed() !== null) { $transactionListItem->setConfirmed(DateTimeFactory::fromISO8601($blockCypherTXRef->getConfirmed())); } $transactionListItem->setBlockHeight($blockCypherTXRef->getBlockHeight()); return $transactionListItem; }