public async Task <IActionResult> CreateEmployee([FromBody] DtoCreateEmployeeRequest request) { if (ModelState.ValidationState != ModelValidationState.Valid) { return(BadRequest()); } return(await employees.CreateEmployee(new Employee { VenueId = request.VenueId, CompanyId = request.CompanyId, Username = request.Username, PasswordHash = crypto.Generate(request.Password), EmployeeName = request.EmployeeName, RoleId = request.RoleId }) .Ensure(e => e.HasValue, "Employee was created") .OnBoth(e => e.IsFailure ? StatusCode(500) : StatusCode(201)) .ConfigureAwait(false)); }
public async Task <IActionResult> ReplaceEmployee([FromRoute(Name = "employeeId")] int employeeId, [FromBody] DtoCreateEmployeeRequest request) { if (ModelState.ValidationState != ModelValidationState.Valid) { return(BadRequest()); } return(await employees.ReplaceEmployee(new Employee { EmployeeId = employeeId, VenueId = request.VenueId, CompanyId = request.CompanyId, Username = request.Username, PasswordHash = crypto.Generate(request.Password), EmployeeName = request.EmployeeName, RoleId = request.RoleId }) .OnBoth(e => e.IsFailure ? StatusCode(500) : StatusCode(200)) .ConfigureAwait(false)); }