|
4 | 4 | "errors" |
5 | 5 | "log" |
6 | 6 | "net/http" |
| 7 | + "sync" |
7 | 8 |
|
8 | 9 | "github.com/YaleOpenLab/opensolar/messages" |
9 | 10 |
|
@@ -473,43 +474,69 @@ func invDashboard() { |
473 | 474 | erpc.ResponseHandler(w, erpc.StatusInternalServerError, messages.TickerError) |
474 | 475 | } |
475 | 476 |
|
476 | | - primNativeBalance := xlm.GetNativeBalance(prepInvestor.U.StellarWallet.PublicKey) * xlmUSD |
477 | | - if primNativeBalance < 0 { |
478 | | - primNativeBalance = 0 |
479 | | - } |
| 477 | + var primNativeBalance, secNativeBalance, primUsdBalance, secUsdBalance float64 |
480 | 478 |
|
481 | | - secNativeBalance := xlm.GetNativeBalance(prepInvestor.U.SecondaryWallet.PublicKey) * xlmUSD |
482 | | - if secNativeBalance < 0 { |
483 | | - secNativeBalance = 0 |
484 | | - } |
| 479 | + var wg sync.WaitGroup |
485 | 480 |
|
486 | | - if !consts.Mainnet { |
487 | | - primUsdBalance := xlm.GetAssetBalance(prepInvestor.U.StellarWallet.PublicKey, consts.StablecoinCode) |
488 | | - if primUsdBalance < 0 { |
489 | | - primUsdBalance = 0 |
| 481 | + wg.Add(1) |
| 482 | + go func(wg *sync.WaitGroup) { |
| 483 | + defer wg.Done() |
| 484 | + primNativeBalance = xlm.GetNativeBalance(prepInvestor.U.StellarWallet.PublicKey) * xlmUSD |
| 485 | + if primNativeBalance < 0 { |
| 486 | + primNativeBalance = 0 |
490 | 487 | } |
491 | | - |
492 | | - secUsdBalance := xlm.GetAssetBalance(prepInvestor.U.SecondaryWallet.PublicKey, consts.StablecoinCode) |
493 | | - if secUsdBalance < 0 { |
494 | | - secUsdBalance = 0 |
| 488 | + }(&wg) |
| 489 | + |
| 490 | + wg.Add(1) |
| 491 | + go func(wg *sync.WaitGroup) { |
| 492 | + defer wg.Done() |
| 493 | + secNativeBalance = xlm.GetNativeBalance(prepInvestor.U.SecondaryWallet.PublicKey) * xlmUSD |
| 494 | + if secNativeBalance < 0 { |
| 495 | + secNativeBalance = 0 |
495 | 496 | } |
| 497 | + }(&wg) |
496 | 498 |
|
497 | | - ret.AccountBalance1 = primNativeBalance + primUsdBalance |
498 | | - ret.AccountBalance2 = secNativeBalance + secUsdBalance |
| 499 | + if !consts.Mainnet { |
| 500 | + wg.Add(1) |
| 501 | + go func(wg *sync.WaitGroup) { |
| 502 | + defer wg.Done() |
| 503 | + primUsdBalance = xlm.GetAssetBalance(prepInvestor.U.StellarWallet.PublicKey, consts.StablecoinCode) |
| 504 | + if primUsdBalance < 0 { |
| 505 | + primUsdBalance = 0 |
| 506 | + } |
| 507 | + }(&wg) |
| 508 | + |
| 509 | + wg.Add(1) |
| 510 | + go func(wg *sync.WaitGroup) { |
| 511 | + defer wg.Done() |
| 512 | + secUsdBalance = xlm.GetAssetBalance(prepInvestor.U.SecondaryWallet.PublicKey, consts.StablecoinCode) |
| 513 | + if secUsdBalance < 0 { |
| 514 | + secUsdBalance = 0 |
| 515 | + } |
| 516 | + }(&wg) |
499 | 517 | } else { |
500 | | - primUsdBalance := xlm.GetAssetBalance(prepInvestor.U.StellarWallet.PublicKey, consts.AnchorUSDCode) |
501 | | - if primUsdBalance < 0 { |
502 | | - primUsdBalance = 0 |
503 | | - } |
504 | | - |
505 | | - secUsdBalance := xlm.GetAssetBalance(prepInvestor.U.SecondaryWallet.PublicKey, consts.AnchorUSDCode) |
506 | | - if secUsdBalance < 0 { |
507 | | - secUsdBalance = 0 |
508 | | - } |
509 | | - |
510 | | - ret.AccountBalance1 = primNativeBalance + primUsdBalance |
511 | | - ret.AccountBalance2 = secNativeBalance + secUsdBalance |
512 | | - } |
| 518 | + wg.Add(1) |
| 519 | + go func(wg *sync.WaitGroup) { |
| 520 | + defer wg.Done() |
| 521 | + primUsdBalance = xlm.GetAssetBalance(prepInvestor.U.StellarWallet.PublicKey, consts.AnchorUSDCode) |
| 522 | + if primUsdBalance < 0 { |
| 523 | + primUsdBalance = 0 |
| 524 | + } |
| 525 | + }(&wg) |
| 526 | + wg.Add(1) |
| 527 | + go func(wg *sync.WaitGroup) { |
| 528 | + defer wg.Done() |
| 529 | + secUsdBalance = xlm.GetAssetBalance(prepInvestor.U.SecondaryWallet.PublicKey, consts.AnchorUSDCode) |
| 530 | + if secUsdBalance < 0 { |
| 531 | + secUsdBalance = 0 |
| 532 | + } |
| 533 | + }(&wg) |
| 534 | + } |
| 535 | + |
| 536 | + wg.Wait() |
| 537 | + |
| 538 | + ret.AccountBalance1 = primNativeBalance + primUsdBalance |
| 539 | + ret.AccountBalance2 = secNativeBalance + secUsdBalance |
513 | 540 |
|
514 | 541 | if ret.AccountBalance2 < 0 { |
515 | 542 | ret.AccountBalance2 = 0 |
|
0 commit comments