From 6a3f41120c9e65f64f00eac0b7831e72cfb21e1c Mon Sep 17 00:00:00 2001 From: pasha1coil Date: Fri, 14 Nov 2025 12:08:16 +0300 Subject: [PATCH] added new db method GetAllYclientsAccounts --- dal/db_query/queries.sql | 3 +++ dal/sqlcgen/queries.sql.go | 34 +++++++++++++++++++++++++++++++++ repository/yclients/yclients.go | 19 ++++++++++++++++++ 3 files changed, 56 insertions(+) diff --git a/dal/db_query/queries.sql b/dal/db_query/queries.sql index 58e3d71..cc1ec28 100644 --- a/dal/db_query/queries.sql +++ b/dal/db_query/queries.sql @@ -1510,6 +1510,9 @@ FROM YclientsAccountUsers u WHERE u.Deleted = false ORDER BY u.ID OFFSET ($2 - 1) * $3 LIMIT $3; +-- name: GetAllYclientsAccounts :many +SELECT * from YclientsAccounts where Deleted = false; + -- -- name: GetCompanyYclientsWithPagination :many -- WITH user_data AS ( -- SELECT SalonID FROM YclientsAccounts WHERE YclientsAccounts.AccountID = $1 AND YclientsAccounts.Deleted = false diff --git a/dal/sqlcgen/queries.sql.go b/dal/sqlcgen/queries.sql.go index 198ef1a..e112c2e 100644 --- a/dal/sqlcgen/queries.sql.go +++ b/dal/sqlcgen/queries.sql.go @@ -2351,6 +2351,40 @@ func (q *Queries) GetAllTokens(ctx context.Context) ([]Token, error) { return items, nil } +const getAllYclientsAccounts = `-- name: GetAllYclientsAccounts :many +SELECT id, accountid, salonid, title, deleted, createdat from YclientsAccounts where Deleted = false +` + +func (q *Queries) GetAllYclientsAccounts(ctx context.Context) ([]Yclientsaccount, error) { + rows, err := q.db.QueryContext(ctx, getAllYclientsAccounts) + if err != nil { + return nil, err + } + defer rows.Close() + var items []Yclientsaccount + for rows.Next() { + var i Yclientsaccount + if err := rows.Scan( + &i.ID, + &i.Accountid, + &i.Salonid, + &i.Title, + &i.Deleted, + &i.Createdat, + ); err != nil { + return nil, err + } + items = append(items, i) + } + if err := rows.Close(); err != nil { + return nil, err + } + if err := rows.Err(); err != nil { + return nil, err + } + return items, nil +} + const getBitrixFieldByID = `-- name: GetBitrixFieldByID :one SELECT id, bitrixid, accountid, entityid, fieldname, editfromlabel, fieldtype, deleted, createdat FROM BitrixFields WHERE BitrixID = $1 AND Deleted = false ` diff --git a/repository/yclients/yclients.go b/repository/yclients/yclients.go index 5089cd6..e3aca29 100644 --- a/repository/yclients/yclients.go +++ b/repository/yclients/yclients.go @@ -46,6 +46,25 @@ func (r *YclientsRepository) GetCurrentAccount(ctx context.Context, accountID st return &user, nil } +func (r *YclientsRepository) GetAllYclientsAccounts(ctx context.Context) ([]*model.YclientsAccount, error) { + rows, err := r.queries.GetAllYclientsAccounts(ctx) + if err != nil { + return nil, err + } + var result []*model.YclientsAccount + for _, row := range rows { + result = append(result, &model.YclientsAccount{ + ID: row.ID, + AccountID: row.Accountid, + SalonID: row.Salonid, + Title: row.Title, + Deleted: row.Deleted, + CreatedAt: row.Createdat, + }) + } + return result, nil +} + func (r *YclientsRepository) GettingUserWithPagination(ctx context.Context, req *model.PaginationReq, accountID string) (*model.UserListYclientsResp, error) { rows, err := r.queries.GetUsersYclientsWithPagination(ctx, sqlcgen.GetUsersYclientsWithPaginationParams{ Accountid: accountID,