From 14d08909a7306ef36d80b5d787afbd387da586ab Mon Sep 17 00:00:00 2001 From: Pasha Date: Mon, 27 Oct 2025 17:39:40 +0300 Subject: [PATCH] added new field in table YclientsRules --- dal/db_query/queries.sql | 6 +++--- dal/schema/000028_init.up.sql | 1 + dal/sqlcgen/models.go | 1 + dal/sqlcgen/queries.sql.go | 13 +++++++++---- model/yclients.go | 1 + repository/yclients/yclients.go | 3 +++ 6 files changed, 18 insertions(+), 7 deletions(-) diff --git a/dal/db_query/queries.sql b/dal/db_query/queries.sql index 61206f6..a12b070 100644 --- a/dal/db_query/queries.sql +++ b/dal/db_query/queries.sql @@ -1620,12 +1620,12 @@ SELECT 1; SELECT * FROM YclientsRules WHERE QuizID = $1 AND Deleted = false; -- name: SetYclientsQuizSettings :one -INSERT INTO YclientsRules (SalonID, QuizID, Services,FieldsRule, CustomColor) -SELECT ya.SalonID, $1 AS QuizID, $2 AS Services, $3 AS FieldsRule, $4 AS CustomColor +INSERT INTO YclientsRules (SalonID, QuizID, Services,FieldsRule, CustomColor,StaffID) +SELECT ya.SalonID, $1 AS QuizID, $2 AS Services, $3 AS FieldsRule, $4 AS CustomColor,$6 AS StaffID FROM YclientsAccounts ya WHERE ya.AccountID = $5 AND ya.Deleted = false RETURNING id; -- name: ChangeYclientsQuizSettings :one -UPDATE YclientsRules SET Services = $1, CustomColor = $2,FieldsRule = $3 +UPDATE YclientsRules SET Services = $1, CustomColor = $2,FieldsRule = $3,StaffID=$6 WHERE SalonID = (SELECT SalonID FROM YclientsAccounts WHERE YclientsAccounts.AccountID = $4 AND YclientsAccounts.Deleted = false) AND QuizID = $5 AND Deleted = false RETURNING id; \ No newline at end of file diff --git a/dal/schema/000028_init.up.sql b/dal/schema/000028_init.up.sql index d02bc22..eb7d94a 100644 --- a/dal/schema/000028_init.up.sql +++ b/dal/schema/000028_init.up.sql @@ -80,6 +80,7 @@ CREATE TABLE IF NOT EXISTS YclientsRules ( ID BIGSERIAL UNIQUE NOT NULL PRIMARY KEY, SalonID INT NOT NULL, -- ID компании QuizID INT NOT NULL, -- ID квиза на которое вешается правило + StaffID INT NOT NULL, Services JSONB NOT NULL DEFAULT '{}', FieldsRule JSONB NOT NULL DEFAULT '{}', CustomColor text NOT NULL Default '', diff --git a/dal/sqlcgen/models.go b/dal/sqlcgen/models.go index 74a5ab8..03370a9 100644 --- a/dal/sqlcgen/models.go +++ b/dal/sqlcgen/models.go @@ -430,6 +430,7 @@ type Yclientsrule struct { ID int64 `db:"id" json:"id"` Salonid int32 `db:"salonid" json:"salonid"` Quizid int32 `db:"quizid" json:"quizid"` + Staffid int32 `db:"staffid" json:"staffid"` Services json.RawMessage `db:"services" json:"services"` Fieldsrule json.RawMessage `db:"fieldsrule" json:"fieldsrule"` Customcolor string `db:"customcolor" json:"customcolor"` diff --git a/dal/sqlcgen/queries.sql.go b/dal/sqlcgen/queries.sql.go index 6107b4f..ce0fac9 100644 --- a/dal/sqlcgen/queries.sql.go +++ b/dal/sqlcgen/queries.sql.go @@ -342,7 +342,7 @@ func (q *Queries) ChangeQuizSettings(ctx context.Context, arg ChangeQuizSettings } const changeYclientsQuizSettings = `-- name: ChangeYclientsQuizSettings :one -UPDATE YclientsRules SET Services = $1, CustomColor = $2,FieldsRule = $3 +UPDATE YclientsRules SET Services = $1, CustomColor = $2,FieldsRule = $3,StaffID=$6 WHERE SalonID = (SELECT SalonID FROM YclientsAccounts WHERE YclientsAccounts.AccountID = $4 AND YclientsAccounts.Deleted = false) AND QuizID = $5 AND Deleted = false RETURNING id ` @@ -353,6 +353,7 @@ type ChangeYclientsQuizSettingsParams struct { Fieldsrule json.RawMessage `db:"fieldsrule" json:"fieldsrule"` Accountid string `db:"accountid" json:"accountid"` Quizid int32 `db:"quizid" json:"quizid"` + Staffid int32 `db:"staffid" json:"staffid"` } func (q *Queries) ChangeYclientsQuizSettings(ctx context.Context, arg ChangeYclientsQuizSettingsParams) (int64, error) { @@ -362,6 +363,7 @@ func (q *Queries) ChangeYclientsQuizSettings(ctx context.Context, arg ChangeYcli arg.Fieldsrule, arg.Accountid, arg.Quizid, + arg.Staffid, ) var id int64 err := row.Scan(&id) @@ -4793,7 +4795,7 @@ func (q *Queries) GetUsersYclientsWithPagination(ctx context.Context, arg GetUse } const getYclientsQuizRule = `-- name: GetYclientsQuizRule :one -SELECT id, salonid, quizid, services, fieldsrule, customcolor, deleted, createdat FROM YclientsRules WHERE QuizID = $1 AND Deleted = false +SELECT id, salonid, quizid, staffid, services, fieldsrule, customcolor, deleted, createdat FROM YclientsRules WHERE QuizID = $1 AND Deleted = false ` func (q *Queries) GetYclientsQuizRule(ctx context.Context, quizid int32) (Yclientsrule, error) { @@ -4803,6 +4805,7 @@ func (q *Queries) GetYclientsQuizRule(ctx context.Context, quizid int32) (Yclien &i.ID, &i.Salonid, &i.Quizid, + &i.Staffid, &i.Services, &i.Fieldsrule, &i.Customcolor, @@ -5706,8 +5709,8 @@ func (q *Queries) SetQuizSettings(ctx context.Context, arg SetQuizSettingsParams } const setYclientsQuizSettings = `-- name: SetYclientsQuizSettings :one -INSERT INTO YclientsRules (SalonID, QuizID, Services,FieldsRule, CustomColor) -SELECT ya.SalonID, $1 AS QuizID, $2 AS Services, $3 AS FieldsRule, $4 AS CustomColor +INSERT INTO YclientsRules (SalonID, QuizID, Services,FieldsRule, CustomColor,StaffID) +SELECT ya.SalonID, $1 AS QuizID, $2 AS Services, $3 AS FieldsRule, $4 AS CustomColor,$6 AS StaffID FROM YclientsAccounts ya WHERE ya.AccountID = $5 AND ya.Deleted = false RETURNING id ` @@ -5718,6 +5721,7 @@ type SetYclientsQuizSettingsParams struct { Fieldsrule json.RawMessage `db:"fieldsrule" json:"fieldsrule"` Customcolor string `db:"customcolor" json:"customcolor"` Accountid string `db:"accountid" json:"accountid"` + Staffid int32 `db:"staffid" json:"staffid"` } func (q *Queries) SetYclientsQuizSettings(ctx context.Context, arg SetYclientsQuizSettingsParams) (int64, error) { @@ -5727,6 +5731,7 @@ func (q *Queries) SetYclientsQuizSettings(ctx context.Context, arg SetYclientsQu arg.Fieldsrule, arg.Customcolor, arg.Accountid, + arg.Staffid, ) var id int64 err := row.Scan(&id) diff --git a/model/yclients.go b/model/yclients.go index f68648f..91f7ab1 100644 --- a/model/yclients.go +++ b/model/yclients.go @@ -130,6 +130,7 @@ type YclientsRule struct { ID int64 `json:"id"` SalonID int32 `json:"salon_id"` // ID "аккаунта который ГЛАВНЫЙ" QuizID int32 `json:"quizID"` // ID квиза на которое вешается правило + StaffID int32 `json:"staffID"` Services ServiceYclientsRule `json:"services"` FieldsRule YclientsFieldRule `json:"fields_rule"` CustomColor string `json:"custom_color"` diff --git a/repository/yclients/yclients.go b/repository/yclients/yclients.go index a87bf11..cdda7b7 100644 --- a/repository/yclients/yclients.go +++ b/repository/yclients/yclients.go @@ -629,6 +629,7 @@ func (r *YclientsRepository) GettingQuizRules(ctx context.Context, quizID int32) CustomColor: row.Customcolor, Deleted: row.Deleted, CreatedAt: row.Createdat, + StaffID: row.Staffid, }, nil } @@ -643,6 +644,7 @@ func (r *YclientsRepository) SetQuizSettings(ctx context.Context, rule model.Ycl } _, err = r.queries.SetYclientsQuizSettings(ctx, sqlcgen.SetYclientsQuizSettingsParams{ Quizid: rule.QuizID, + Staffid: rule.StaffID, Services: jsonServices, Fieldsrule: jsonFieldsRule, Customcolor: rule.CustomColor, @@ -667,6 +669,7 @@ func (r *YclientsRepository) ChangeQuizSettings(ctx context.Context, rule model. } _, err = r.queries.ChangeYclientsQuizSettings(ctx, sqlcgen.ChangeYclientsQuizSettingsParams{ Quizid: rule.QuizID, + Staffid: rule.StaffID, Services: jsonServices, Fieldsrule: jsonFieldsRule, Customcolor: rule.CustomColor,