package controllers import ( "GoMembership/internal/constants" "GoMembership/internal/models" "GoMembership/internal/services" "GoMembership/internal/utils" "GoMembership/pkg/errors" "GoMembership/pkg/logger" "fmt" "net/http" "github.com/gin-gonic/gin" ) type CarController struct { S services.CarServiceInterface UserService services.UserServiceInterface } func (cr *CarController) Create(c *gin.Context) { requestUser, err := cr.UserService.FromContext(c) if err != nil { utils.RespondWithError(c, err, "Error extracting user from context in Create car handler", http.StatusBadRequest, errors.Responses.Fields.User, errors.Responses.Keys.NoAuthToken) return } if !requestUser.HasPrivilege(constants.Priviliges.Create) { utils.RespondWithError(c, errors.ErrNotAuthorized, fmt.Sprintf("Not allowed to create a car. RoleID(%v)