Files
Bridge-and-Join-s/internal/lkgateway/bub_live_test.go
T

38 lines
1.2 KiB
Go

//go:build live
package lkgateway
import (
"context"
"fmt"
"testing"
)
// Только чтение: остатки SBER по счёту клиента в DEPO во всех разрезах. ACC=ВТНКЦ00002000
func TestDepoRestsLive(t *testing.T) {
rc, err := NewRuntimeConfig("/var/lib/bj/.bj/setup.json")
if err != nil {
t.Fatal(err)
}
fs := rc.Snapshot().Fancy
db, err := fancyOpen(fs, fs.DepoDB())
if err != nil {
t.Fatal(err)
}
defer db.Close()
rows, err := db.QueryContext(context.Background(), `SELECT c.NUMBER, ISNULL(p.PORT_NUM,''), v.ISIN, CAST(rst.K AS float), CAST(ISNULL(rst.A,0) AS float), ISNULL(rst.BLOCK_REASON,''), ISNULL(rst.BAL_ACC,0)
FROM OD_RESTS rst JOIN OD_CLIENTS c ON c.ID=rst.REG_1 LEFT JOIN OD_CLIENTS_PORTS p ON p.CLIENT=c.ID
JOIN OD_VALUES v ON v.ID=rst.VALUE_ID
WHERE c.NUMBER IN ('ВТНКЦ00002000','ВТНКЦ00000816') AND v.ISIN='RU0009029540'`)
if err != nil {
t.Fatal(err)
}
for rows.Next() {
var num, port, isin, br string
var k, a float64
var bal int
_ = rows.Scan(&num, &port, &isin, &k, &a, &br, &bal)
fmt.Printf("%s %s %s K=%v A=%v блок=%q бал.счёт=%d\n", num, port, isin, k, a, br, bal)
}
}