diff --git a/dal/db_query/queries.sql b/dal/db_query/queries.sql index 315a89b..4de2631 100644 --- a/dal/db_query/queries.sql +++ b/dal/db_query/queries.sql @@ -931,3 +931,16 @@ WITH user_data AS ( RETURNING * ) SELECT * from inserted_utms; + +-- name: GetQuizRule +SELECT * FROM rules WHERE QuizID = $1 AND Deleted = false; + +-- name: SetQuizSettings +INSERT INTO rules (AccountID, QuizID, PerformerID, PipelineID, StepID, UTMS, FieldsRule) +SELECT u.AmoID AS AccountID,$1 AS QuizID,$2 AS PerformerID,$3 AS PipelineID, + $4 AS StepID,$5 AS UTMS,$6 AS FieldsRule FROM users u WHERE u.AccountID = $7; + +-- name: ChangeQuizSettings +UPDATE rules +SET PerformerID = $1,PipelineID = $2,StepID = $3,UTMS = $4,FieldsRule = $5 +WHERE AccountID = (SELECT AmoID FROM users WHERE AccountID = $6) AND QuizID = $7; diff --git a/model/amoReq.go b/model/amoReq.go index 915be29..4699560 100644 --- a/model/amoReq.go +++ b/model/amoReq.go @@ -13,8 +13,11 @@ type PaginationReq struct { } type RulesReq struct { - /* - ID квиза*/ - ID string `json:"ID"` + PerformerID int // айдишник ответственного за сделку + PipelineID int // айдишник воронки + StepID int // айдишник этапа + Utms []int // список UTM для этого опроса + Fieldsrule Fieldsrule // правила заполнения полей сущностей в амо } type SaveUserListUTMReq struct { diff --git a/repository/amo/amo.go b/repository/amo/amo.go index e721a54..168af0c 100644 --- a/repository/amo/amo.go +++ b/repository/amo/amo.go @@ -584,15 +584,14 @@ func (r *AmoRepository) CheckFields(ctx context.Context, fields []model.Field, t // методы rules -func (r *AmoRepository) ChangeQuizSettings(ctx context.Context, request *model.RulesReq) error { +func (r *AmoRepository) ChangeQuizSettings(ctx context.Context, request *model.RulesReq, accountID string, quizID int) error { //TODO:IMPLEMENT ME return nil } -func (r *AmoRepository) SetQuizSettings(ctx context.Context, request *model.RulesReq) error { - //TODO:IMPLEMENT ME +func (r *AmoRepository) SetQuizSettings(ctx context.Context, request *model.RulesReq, accountID string, quizID int) error { return nil