e47e6cfbdc
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014FsEKyJrYF69Cj9ZXzFLRi
46 lines
1.4 KiB
Go
46 lines
1.4 KiB
Go
//go:build live
|
|
|
|
package lkgateway
|
|
|
|
import (
|
|
"context"
|
|
"database/sql"
|
|
"fmt"
|
|
"os"
|
|
"testing"
|
|
)
|
|
|
|
// Дописать PARAMETERS событиям перевода, где оно пустое. EV_GUID, EV_TYPES (через запятую не нужно — два типа), EV_PARAMS, EV_GO=1.
|
|
func TestEventParamsLive(t *testing.T) {
|
|
rc, err := NewRuntimeConfig("/var/lib/bj/.bj/setup.json")
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
db, err := depoEventsDB(rc)
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
defer db.Close()
|
|
ctx := context.Background()
|
|
g, p := os.Getenv("EV_GUID"), os.Getenv("EV_PARAMS")
|
|
if os.Getenv("EV_GO") == "1" {
|
|
res, err := db.ExecContext(ctx, `UPDATE dbo.FTV_M2M_EVENTS SET PARAMETERS=@p
|
|
WHERE GUID=@g AND EVENT_TYPE IN ('BJ_ORDER_ACCEPTED','BJ_EXECUTED') AND (PARAMETERS IS NULL OR PARAMETERS='')`, sql.Named("p", p), sql.Named("g", g))
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
n, _ := res.RowsAffected()
|
|
fmt.Println("обновлено строк:", n)
|
|
}
|
|
rows, err := db.QueryContext(ctx, `SELECT EVENT_TYPE, ISNULL(REFERENCE,''), ISNULL(STATE,''), ISNULL(PARAMETERS,''), EVENT_DATE FROM dbo.FTV_M2M_EVENTS WHERE GUID=@g ORDER BY EVENT_DATE`, sql.Named("g", g))
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
for rows.Next() {
|
|
var ty, ref, st, pr string
|
|
var at interface{}
|
|
_ = rows.Scan(&ty, &ref, &st, &pr, &at)
|
|
fmt.Printf("%-18s %-18s %-8s %-24q %v\n", ty, ref, st, pr, at)
|
|
}
|
|
}
|