set correct coin color values

This commit is contained in:
einhornimmond 2026-02-18 14:07:39 +01:00
parent 521e678e1f
commit fcb701efb8
2 changed files with 8 additions and 5 deletions

View File

@ -50,7 +50,9 @@ export abstract class AbstractSyncRole<ItemType> {
if (publicKey.isEmpty()) {
throw new Error('publicKey is empty')
}
const lastSenderTransaction = blockchain.findOne(Filter.lastBalanceFor(publicKey))
const f = Filter.lastBalanceFor(publicKey)
f.coinCommunityId = communityId
const lastSenderTransaction = blockchain.findOne(f)
if (!lastSenderTransaction) {
return new Balance(publicKey, communityId)
}

View File

@ -105,15 +105,16 @@ export class RemoteTransactionsSyncRole extends AbstractSyncRole<TransactionDb>
calculateBalances(
item: TransactionDb,
communityContext: CommunityContext,
coinCommunityId: string,
amount: GradidoUnit,
publicKey: MemoryBlockPtr,
): AccountBalances {
this.accountBalances.clear()
if (communityContext.foreign) {
this.accountBalances.add(new AccountBalance(publicKey, GradidoUnit.zero(), communityContext.communityId))
this.accountBalances.add(new AccountBalance(publicKey, GradidoUnit.zero(), coinCommunityId))
return this.accountBalances
} else {
const lastBalance = this.getLastBalanceForUser(publicKey, communityContext.blockchain, communityContext.communityId)
const lastBalance = this.getLastBalanceForUser(publicKey, communityContext.blockchain, coinCommunityId)
try {
lastBalance.updateLegacyDecay(amount, item.balanceDate)
@ -171,7 +172,7 @@ export class RemoteTransactionsSyncRole extends AbstractSyncRole<TransactionDb>
outboundTransaction,
senderBlockchain,
ledgerAnchor,
this.calculateBalances(item, senderCommunityContext, item.amount.negated(), senderPublicKey),
this.calculateBalances(item, senderCommunityContext, senderCommunityContext.communityId, item.amount.negated(), senderPublicKey),
)
} catch(e) {
if (e instanceof NotEnoughGradidoBalanceError) {
@ -186,7 +187,7 @@ export class RemoteTransactionsSyncRole extends AbstractSyncRole<TransactionDb>
inboundTransaction,
recipientBlockchain,
ledgerAnchor,
this.calculateBalances(item, recipientCommunityContext, item.amount, recipientPublicKey),
this.calculateBalances(item, recipientCommunityContext, senderCommunityContext.communityId, item.amount, recipientPublicKey),
)
} catch(e) {
if (e instanceof NotEnoughGradidoBalanceError) {