update sqlc gen

This commit is contained in:
Pavel 2024-05-03 18:00:30 +03:00
parent 450d3330d6
commit fe2fac1eac

@ -559,31 +559,77 @@ func (q *Queries) CheckTags(ctx context.Context, arg CheckTagsParams) ([]CheckTa
return items, nil return items, nil
} }
const checkUsers = `-- name: CheckUsers :exec const checkUsers = `-- name: CheckUsers :many
INSERT INTO users (AmoID, Name, Email, Role, "Group", AmoUserID) WITH new_users AS (
VALUES ($1, $2, $3, $4, $5, $6) SELECT (u->>'AmocrmID')::INT AS AmoID,
ON CONFLICT (AmoID) DO NOTHING (u->>'Name')::VARCHAR(512) AS Name,
(u->>'Group')::INT AS "Group",
(u->>'Role')::INT AS Role,
(u->>'Email')::VARCHAR(50) AS Email,
(u->>'AmoUserID')::INT AS AmoUserID,
CURRENT_TIMESTAMP AS createdAt
FROM json_array_elements($1::json) AS u
), inserted_users AS (
INSERT INTO users (AmoID, Name, "Group", Role, Email, AmoUserID,createdAt)
SELECT nu.AmoID,
nu.Name,
nu."Group",
nu.Role,
nu.Email,
nu.AmoUserID,
nu.createdAt
FROM new_users nu
ON CONFLICT (amoID) DO NOTHING
RETURNING id, accountid, amoid, name, email, role, "Group", deleted, createdat, subdomain, amouserid, country
)
SELECT nu.amoid, nu.name, nu."Group", nu.role, nu.email, nu.amouserid, nu.createdat
FROM new_users nu
WHERE NOT EXISTS (
SELECT id, accountid, amoid, name, email, role, "Group", deleted, createdat, subdomain, amouserid, country
FROM inserted_users ins
WHERE ins.amoID = nu.amoID
)
` `
type CheckUsersParams struct { type CheckUsersRow struct {
Amoid int32 `db:"amoid" json:"amoid"` Amoid int32 `db:"amoid" json:"amoid"`
Name string `db:"name" json:"name"` Name string `db:"name" json:"name"`
Email string `db:"email" json:"email"` Group int32 `db:"Group" json:"Group"`
Role int32 `db:"role" json:"role"` Role int32 `db:"role" json:"role"`
Group int32 `db:"Group" json:"Group"` Email string `db:"email" json:"email"`
Amouserid int32 `db:"amouserid" json:"amouserid"` Amouserid int32 `db:"amouserid" json:"amouserid"`
Createdat interface{} `db:"createdat" json:"createdat"`
} }
func (q *Queries) CheckUsers(ctx context.Context, arg CheckUsersParams) error { func (q *Queries) CheckUsers(ctx context.Context, dollar_1 json.RawMessage) ([]CheckUsersRow, error) {
_, err := q.db.ExecContext(ctx, checkUsers, rows, err := q.db.QueryContext(ctx, checkUsers, dollar_1)
arg.Amoid, if err != nil {
arg.Name, return nil, err
arg.Email, }
arg.Role, defer rows.Close()
arg.Group, var items []CheckUsersRow
arg.Amouserid, for rows.Next() {
) var i CheckUsersRow
return err if err := rows.Scan(
&i.Amoid,
&i.Name,
&i.Group,
&i.Role,
&i.Email,
&i.Amouserid,
&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 copyQuestion = `-- name: CopyQuestion :one const copyQuestion = `-- name: CopyQuestion :one
@ -3071,8 +3117,7 @@ const updateFields = `-- name: UpdateFields :exec
UPDATE fields AS f UPDATE fields AS f
SET name = (update_data ->> 'Name')::varchar(512), SET name = (update_data ->> 'Name')::varchar(512),
code = (update_data ->> 'Code')::varchar(255), code = (update_data ->> 'Code')::varchar(255),
type = (update_data ->> 'Type')::fieldtype, type = (update_data ->> 'Type')::fieldtype
createdAt = CURRENT_TIMESTAMP
FROM json_array_elements($1::json) AS update_data FROM json_array_elements($1::json) AS update_data
WHERE f.amoID = (update_data ->> 'AmoID')::INT WHERE f.amoID = (update_data ->> 'AmoID')::INT
AND f.accountID = (update_data ->> 'AccountID')::INT AND f.accountID = (update_data ->> 'AccountID')::INT
@ -3087,8 +3132,7 @@ func (q *Queries) UpdateFields(ctx context.Context, dollar_1 json.RawMessage) er
const updatePipelines = `-- name: UpdatePipelines :exec const updatePipelines = `-- name: UpdatePipelines :exec
UPDATE pipelines AS p UPDATE pipelines AS p
SET name = (update_data ->> 'Name')::varchar(512), SET name = (update_data ->> 'Name')::varchar(512),
isArchive = CASE WHEN (update_data ->> 'IsArchive') = 'true' THEN TRUE ELSE FALSE END, isArchive = CASE WHEN (update_data ->> 'IsArchive') = 'true' THEN TRUE ELSE FALSE END
createdAt = CURRENT_TIMESTAMP
FROM json_array_elements($1::json) AS update_data FROM json_array_elements($1::json) AS update_data
WHERE p.amoID = (update_data ->> 'AmoID')::INT WHERE p.amoID = (update_data ->> 'AmoID')::INT
AND p.accountID = (update_data ->> 'AccountID')::INT AND p.accountID = (update_data ->> 'AccountID')::INT
@ -3137,8 +3181,7 @@ func (q *Queries) UpdatePrivilegeAmount(ctx context.Context, arg UpdatePrivilege
const updateSteps = `-- name: UpdateSteps :exec const updateSteps = `-- name: UpdateSteps :exec
UPDATE steps AS s UPDATE steps AS s
SET name = (update_data ->> 'Name')::varchar(512), SET name = (update_data ->> 'Name')::varchar(512),
color = (update_data ->> 'Color')::varchar(50), color = (update_data ->> 'Color')::varchar(50)
createdAt = CURRENT_TIMESTAMP
FROM json_array_elements($1::json) AS update_data FROM json_array_elements($1::json) AS update_data
WHERE s.amoID = (update_data ->> 'AmoID')::INT WHERE s.amoID = (update_data ->> 'AmoID')::INT
AND s.accountID = (update_data ->> 'AccountID')::INT AND s.accountID = (update_data ->> 'AccountID')::INT
@ -3153,8 +3196,7 @@ func (q *Queries) UpdateSteps(ctx context.Context, dollar_1 json.RawMessage) err
const updateTags = `-- name: UpdateTags :exec const updateTags = `-- name: UpdateTags :exec
UPDATE tags AS t UPDATE tags AS t
SET name = (update_data ->> 'Name')::varchar(512), SET name = (update_data ->> 'Name')::varchar(512),
color = (update_data ->> 'Color')::varchar(50), color = (update_data ->> 'Color')::varchar(50)
createdAt = CURRENT_TIMESTAMP
FROM json_array_elements($1::json) AS update_data FROM json_array_elements($1::json) AS update_data
WHERE t.amoID = (update_data ->> 'AmoID')::INT WHERE t.amoID = (update_data ->> 'AmoID')::INT
AND t.accountID = (update_data ->> 'AccountID')::INT AND t.accountID = (update_data ->> 'AccountID')::INT
@ -3167,27 +3209,18 @@ func (q *Queries) UpdateTags(ctx context.Context, dollar_1 json.RawMessage) erro
} }
const updateUsers = `-- name: UpdateUsers :exec const updateUsers = `-- name: UpdateUsers :exec
UPDATE users SET Name = $2, Email = $3, Role = $4, "Group" = $5, AmoUserID = $6 WHERE AmoID = $1 UPDATE users AS u
SET Name = (update_data ->> 'Name')::varchar(512),
Email = (update_data ->> 'Email')::varchar(50),
Role = (update_data ->> 'Role')::INT,
"Group" = (update_data ->> 'Group')::INT,
AmoUserID= (update_data ->> 'AmoUserID')::INT
FROM json_array_elements($1::json) AS update_data
WHERE u.AmoID = (update_data ->> 'AmocrmID')::INT
` `
type UpdateUsersParams struct { func (q *Queries) UpdateUsers(ctx context.Context, dollar_1 json.RawMessage) error {
Amoid int32 `db:"amoid" json:"amoid"` _, err := q.db.ExecContext(ctx, updateUsers, dollar_1)
Name string `db:"name" json:"name"`
Email string `db:"email" json:"email"`
Role int32 `db:"role" json:"role"`
Group int32 `db:"Group" json:"Group"`
Amouserid int32 `db:"amouserid" json:"amouserid"`
}
func (q *Queries) UpdateUsers(ctx context.Context, arg UpdateUsersParams) error {
_, err := q.db.ExecContext(ctx, updateUsers,
arg.Amoid,
arg.Name,
arg.Email,
arg.Role,
arg.Group,
arg.Amouserid,
)
return err return err
} }