Files
warehouse-management-BE/internal/mapper/role_mapper.go
Tran Anh Tuan 6a4a96e0ca Base Project
2026-05-08 14:32:24 +07:00

29 lines
788 B
Go

package mapper
import (
"wm-backend/internal/models"
db "wm-backend/sqlc_gen"
"github.com/jackc/pgx/v5/pgtype"
)
// ToDomainRole maps a SQLC-generated Role to the domain Role model.
func ToDomainRole(r db.Role) *models.Role {
return &models.Role{
ID: r.ID.String(),
Name: r.Name,
Description: r.Description.String,
CreatedAt: r.CreatedAt.Time,
CreatedBy: r.CreatedBy.String,
}
}
// ToModelRole maps a domain Role model to the parameters needed for creating a Role in the database.
func ToModelRole(r *models.Role) *db.CreateRoleParams {
return &db.CreateRoleParams{
Name: r.Name,
Description: pgtype.Text{String: r.Description, Valid: r.Description != ""},
CreatedBy: pgtype.Text{String: r.CreatedBy, Valid: r.CreatedBy != ""},
}
}