QUIK МНП: bj ведёт справочник депозитариев-получателей M2M (M2MDepoRecipients) по справочнику НРД — раз в 30 мин до 20:00 и при изменении справочника; состояние на «Поручения QUIK»
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014FsEKyJrYF69Cj9ZXzFLRi
This commit is contained in:
@@ -0,0 +1,37 @@
|
||||
//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)
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user