public async Task <IActionResult> Create([FromBody] EmployeeModel employee)
        {
            try
            {
                employee.IsNull().Throw <InvalidParameterException>(string.Format(Messages.CannotBeNull, "employee"));

                var entity = await employeeApp.SaveAsync(employee.ToDomain());

                var result = EmployeeModel.ToModel(entity);

                ////if (employee.Email == "*****@*****.**")
                ////{
                ////    return Conflict();
                ////}

                var urlHelper   = urlHelperFactory.GetUrlHelper(ControllerContext);
                var getByIdlink = GetEmployeeByIdLink(urlHelper, result.Id);
                var deleteLink  = DeleteEmployeeLink(urlHelper, result.Id);
                var updateLink  = UpdateEmployeeLink(urlHelper, result.Id);

                result.Links = new List <Link>
                {
                    getByIdlink,
                    updateLink,
                    deleteLink
                };

                return(new CreatedResult(getByIdlink.Href, result));
            }
            catch (InvalidParameterException ex)
            {
                return(BadRequest(ex.Message));
            }
            catch (BusinessConflictException)
            {
                return(Conflict());
            }
            catch (Exception ex)
            {
                return(InternalServerError(new UnpredictableException(ex)));
            }
        }