70 lines
1.0 KiB
Go
70 lines
1.0 KiB
Go
package queries
|
|
|
|
import (
|
|
"bssapp-backend/db"
|
|
"context"
|
|
"database/sql"
|
|
)
|
|
|
|
type FastBalanceRow struct {
|
|
CariKodu string
|
|
CariDoviz string
|
|
PislemTipi string
|
|
SirketKodu int
|
|
YerelBakiye float64
|
|
Bakiye float64
|
|
IslemTarihi string
|
|
IslemKur float64
|
|
TLBakiye float64
|
|
TLYerel float64
|
|
GuncelKur float64
|
|
KurBakiye float64
|
|
UsdKur float64
|
|
}
|
|
|
|
func getFastBalances(
|
|
ctx context.Context,
|
|
date string,
|
|
) ([]FastBalanceRow, error) {
|
|
|
|
rows, err := db.MssqlDB.QueryContext(
|
|
ctx,
|
|
`EXEC dbo.SP_CARI_BAKIYE_API_FAST @Tarih`,
|
|
sql.Named("Tarih", date),
|
|
)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
defer rows.Close()
|
|
|
|
out := make([]FastBalanceRow, 0, 4096)
|
|
|
|
for rows.Next() {
|
|
|
|
var r FastBalanceRow
|
|
|
|
err := rows.Scan(
|
|
&r.CariKodu,
|
|
&r.CariDoviz,
|
|
&r.PislemTipi,
|
|
&r.SirketKodu,
|
|
&r.YerelBakiye,
|
|
&r.Bakiye,
|
|
&r.IslemTarihi,
|
|
&r.IslemKur,
|
|
&r.TLBakiye,
|
|
&r.TLYerel,
|
|
&r.GuncelKur,
|
|
&r.KurBakiye,
|
|
&r.UsdKur,
|
|
)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
|
|
out = append(out, r)
|
|
}
|
|
|
|
return out, nil
|
|
}
|