package mapper import ( "wm-backend/internal/models" db "wm-backend/sqlc_gen" "github.com/jackc/pgx/v5/pgtype" ) // ToDomainWarehouse maps a SQLC-generated Warehouse to the domain Warehouse model. func ToDomainWarehouse(r db.Warehouse) *models.Warehouse { return &models.Warehouse{ ID: r.ID, Name: r.Name, Description: r.Description.String, Address: r.Address.String, CreatedAt: r.CreatedAt, UpdatedAt: r.UpdatedAt, } } func ToModelWarehouse(r *models.Warehouse) *db.CreateWarehouseParams { return &db.CreateWarehouseParams{ Name: r.Name, Description: pgtype.Text{ String: r.Description, Valid: r.Description != "", }, Address: pgtype.Text{ String: r.Address, Valid: r.Address != "", }, CreatedAt: r.CreatedAt, } } func ToUpdateModelWarehouse(r *models.Warehouse) *db.UpdateWarehouseParams { return &db.UpdateWarehouseParams{ Name: r.Name, Description: pgtype.Text{ String: r.Description, Valid: r.Description != "", }, Address: pgtype.Text{ String: r.Address, Valid: r.Address != "", }, UpdatedAt: r.UpdatedAt, ID: r.ID, } }