Ejemplo n.º 1
0
        public IActionResult Authenticate([FromBody] AuthRequest authRequest)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest("Invalid Email"));
            }
            Employee emp = _employeeServices.GetEmployeeByEmail(authRequest.Email);

            if (emp == null)
            {
                return(BadRequest());
            }
            var userRole = _userRoleServices.GetUserRoleByUserId(emp.Id);

            if (userRole == null)
            {
                return(BadRequest());
            }
            var role = _roleServices.GetById(userRole.RoleId);

            if (role == null)
            {
                return(BadRequest());
            }
            emp.Role = role.Name;
            string       token    = _token.Create(emp.Name, role.Name);
            AuthResponse response = new AuthResponse()
            {
                Token = token, Employee = emp
            };

            return(Ok(response));
        }