Skip to content

Commit 336d830

Browse files
Dao-Hospokonya
authored andcommitted
feat: update users endpoint to have email and phone (#214)
* users schema update * rm file
1 parent dfbc503 commit 336d830

File tree

2 files changed

+8
-4
lines changed

2 files changed

+8
-4
lines changed

backend/internal/models/users.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,8 @@ type CreateUser struct {
1212
Role *string `json:"role,omitempty" validate:"omitempty" example:"Receptionist"`
1313
Department *string `json:"department,omitempty" validate:"omitempty" example:"Housekeeping"`
1414
Timezone *string `json:"timezone,omitempty" validate:"omitempty,timezone" example:"America/New_York"`
15+
PhoneNumber *string `json:"phone_number,omitempty" validate:"omitempty" example:"+11234567890"`
16+
PrimaryEmail *string `json:"primary_email,omitempty" validate:"omitempty,email" example:"john@example.com"`
1517
} //@name CreateUser
1618

1719
type CreateUserWebhook struct {

backend/internal/repository/users.go

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -66,11 +66,11 @@ func (r *UsersRepository) ResolveStaffUserIDForRequests(ctx context.Context, hea
6666

6767
func (r *UsersRepository) FindUser(ctx context.Context, id string) (*models.User, error) {
6868
row := r.db.QueryRow(ctx, `
69-
SELECT id, first_name, last_name, hotel_id, employee_id, profile_picture, role, department, timezone, created_at, updated_at FROM users where id = $1
69+
SELECT id, first_name, last_name, hotel_id, employee_id, profile_picture, role, department, timezone, phone_number, primary_email, created_at, updated_at FROM users where id = $1
7070
`, id)
7171

7272
var user models.User
73-
err := row.Scan(&user.ID, &user.FirstName, &user.LastName, &user.HotelID, &user.EmployeeID, &user.ProfilePicture, &user.Role, &user.Department, &user.Timezone, &user.CreatedAt, &user.UpdatedAt)
73+
err := row.Scan(&user.ID, &user.FirstName, &user.LastName, &user.HotelID, &user.EmployeeID, &user.ProfilePicture, &user.Role, &user.Department, &user.Timezone, &user.PhoneNumber, &user.PrimaryEmail, &user.CreatedAt, &user.UpdatedAt)
7474
if err != nil {
7575
if errors.Is(err, pgx.ErrNoRows) {
7676
return nil, errs.ErrNotFoundInDB
@@ -87,9 +87,9 @@ func (r *UsersRepository) InsertUser(ctx context.Context, user *models.CreateUse
8787

8888
err := r.db.QueryRow(ctx, `
8989
INSERT INTO public.users (
90-
id, first_name, last_name, hotel_id, employee_id, profile_picture, role, department, timezone
90+
id, first_name, last_name, hotel_id, employee_id, profile_picture, role, department, timezone, phone_number, primary_email
9191
) VALUES (
92-
$1, $2, $3, $4, $5, $6, $7, $8, COALESCE($9, 'UTC')
92+
$1, $2, $3, $4, $5, $6, $7, $8, COALESCE($9, 'UTC'), $10, $11
9393
)
9494
RETURNING id, created_at, updated_at
9595
`,
@@ -102,6 +102,8 @@ func (r *UsersRepository) InsertUser(ctx context.Context, user *models.CreateUse
102102
user.Role,
103103
user.Department,
104104
user.Timezone,
105+
user.PhoneNumber,
106+
user.PrimaryEmail,
105107
).Scan(&createdUser.ID, &createdUser.CreatedAt, &createdUser.UpdatedAt)
106108

107109
if err != nil {

0 commit comments

Comments
 (0)