done
This commit is contained in:
parent
3a860e873c
commit
5f98c38c39
1 changed files with 5 additions and 3 deletions
|
@ -343,6 +343,7 @@ class BlockShell extends Shell {
|
||||||
|
|
||||||
// Create / update addresses
|
// Create / update addresses
|
||||||
$addr_id_map = [];
|
$addr_id_map = [];
|
||||||
|
$new_addr_map = [];
|
||||||
foreach($all_tx_data['addresses'] as $address => $addro) {
|
foreach($all_tx_data['addresses'] as $address => $addro) {
|
||||||
$prev_addr = $this->Addresses->find()->select(['Id'])->where(['Address' => $address])->first();
|
$prev_addr = $this->Addresses->find()->select(['Id'])->where(['Address' => $address])->first();
|
||||||
if (!$prev_addr) {
|
if (!$prev_addr) {
|
||||||
|
@ -357,6 +358,7 @@ class BlockShell extends Shell {
|
||||||
} else {
|
} else {
|
||||||
$addr_id_map[$address] = $entity->Id;
|
$addr_id_map[$address] = $entity->Id;
|
||||||
}
|
}
|
||||||
|
$new_addr_map[$address] = 1;
|
||||||
} else {
|
} else {
|
||||||
$addr_id_map[$address] = $prev_addr->Id;
|
$addr_id_map[$address] = $prev_addr->Id;
|
||||||
}
|
}
|
||||||
|
@ -393,7 +395,7 @@ class BlockShell extends Shell {
|
||||||
$conn->execute('INSERT INTO TransactionsAddresses (TransactionId, AddressId) VALUES (?, ?) ON DUPLICATE KEY UPDATE TransactionId = TransactionId', [$txid, $addr_id]);
|
$conn->execute('INSERT INTO TransactionsAddresses (TransactionId, AddressId) VALUES (?, ?) ON DUPLICATE KEY UPDATE TransactionId = TransactionId', [$txid, $addr_id]);
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($addr_id > -1) {
|
if ($addr_id > -1 && isset($new_addr_map[$address])) {
|
||||||
if (!isset($addr_id_drcr[$addr_id])) {
|
if (!isset($addr_id_drcr[$addr_id])) {
|
||||||
$addr_id_drcr[$addr_id] = ['debit' => 0, 'credit' => 0];
|
$addr_id_drcr[$addr_id] = ['debit' => 0, 'credit' => 0];
|
||||||
}
|
}
|
||||||
|
@ -449,11 +451,11 @@ class BlockShell extends Shell {
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($addr_id > -1) {
|
if ($addr_id > -1) {
|
||||||
$conn->execute('INSERT INTO InputsAddresses (InputId, AddressId) VALUES (?, ?) ON DUPLICATE KEY UPDATE InputId = InputId', [$exist_output, $addr_id]);
|
$conn->execute('INSERT INTO InputsAddresses (InputId, AddressId) VALUES (?, ?) ON DUPLICATE KEY UPDATE InputId = InputId', [$exist_input->Id, $addr_id]);
|
||||||
$conn->execute('INSERT INTO TransactionsAddresses (TransactionId, AddressId) VALUES (?, ?) ON DUPLICATE KEY UPDATE TransactionId = TransactionId', [$txid, $addr_id]);
|
$conn->execute('INSERT INTO TransactionsAddresses (TransactionId, AddressId) VALUES (?, ?) ON DUPLICATE KEY UPDATE TransactionId = TransactionId', [$txid, $addr_id]);
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($addr_id > -1) {
|
if ($addr_id > -1 && isset($new_addr_map[$address])) {
|
||||||
if (!isset($addr_id_drcr[$addr_id])) {
|
if (!isset($addr_id_drcr[$addr_id])) {
|
||||||
$addr_id_drcr[$addr_id] = ['debit' => 0, 'credit' => 0];
|
$addr_id_drcr[$addr_id] = ['debit' => 0, 'credit' => 0];
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue