public IActionResult CreateEmployeeForCompany(Guid companyId, [FromBody] EmployeeForCreateDto employee) { if (employee == null) { _logger.LogError("EmployeeForCreateDto Object sent from client is null"); return(BadRequest("EmployeeForCreateDto Object is null")); } // Sure ? if company id exists ? var company = _repositrory.Company.GetCompany(companyId, trackChanges: false); if (company == null) { _logger.LogInfo($"Company With d : {companyId} does't exist in the database."); return(NotFound()); } // Everything is Okay emp/id var employeeEntity = _mapper.Map <Employee>(employee); _repositrory.Employee.CreateEmployeeForCompany(companyId, employeeEntity); _repositrory.Save(); var employeeToReturn = _mapper.Map <EmployeeDto>(employeeEntity); // save --?url return(CreatedAtRoute("GetEmployeeForCompany", new { companyId, id = employeeEntity.Id }, employeeToReturn)); }
public async Task <ActionResult> Create() { var depts = await _departmentRepository.GetDepartmentsForEmployees(); EmployeeForCreateDto employeeForCreateDto = new EmployeeForCreateDto { Departments = depts }; return(View(employeeForCreateDto)); }
public async Task <ActionResult> Update(int id) { var depts = await _departmentRepository.GetDepartmentsForEmployees(); var emp = await _employeeRepository.GetEmployee(id); EmployeeForCreateDto employeeForCreateDto = new EmployeeForCreateDto { Departments = depts, Employee = emp, SelectedDepartmentId = (int)emp.DepartmentId }; return(View(employeeForCreateDto)); }
public IActionResult Post([FromBody] EmployeeForCreateDto employeeForCreateDto) { var result = _employeeService.Post(employeeForCreateDto); if (result.Success) { return(Created("/employee", result.Object)); } if (result.Message != null) { return(BadRequest(new { error = result.Message })); } return(StatusCode(500)); }
public ActionResult Update(EmployeeForCreateDto employeeForCreateDto) { if (ModelState.IsValid) { Employee employee = new Employee { Address = employeeForCreateDto.Employee.Address, DepartmentId = employeeForCreateDto.SelectedDepartmentId, EmployeeType = employeeForCreateDto.Employee.EmployeeType, Name = employeeForCreateDto.Employee.Name, Phone = employeeForCreateDto.Employee.Phone, EmployeeId = employeeForCreateDto.Employee.EmployeeId }; _employeeRepository.UpdateEmployee(employee); return(RedirectToAction("index")); } return(View()); }
public ActionResult Create(EmployeeForCreateDto employeeForCreateDto) { ///server side validation if (ModelState.IsValid) { Employee employee = new Employee() { EmployeeType = EmployeeType.NormalEmployee, Address = employeeForCreateDto.Employee.Address, DepartmentId = employeeForCreateDto.SelectedDepartmentId, Name = employeeForCreateDto.Employee.Name, Phone = employeeForCreateDto.Employee.Phone }; _employeeRepository.CreateEmployee(employee); return(RedirectToAction("index")); } return(View()); }
public ResponseObject <EmployeeForReadDto> Post(EmployeeForCreateDto employeeForRegisterDto) { var departmentForCheckId = _departmentRepository.Get(employeeForRegisterDto.idDepartment); if (departmentForCheckId == null) { return(new ResponseObject <EmployeeForReadDto>(false, "Departamento inexistente")); } var employeeForCheckLogin = _employeeRepository.Get(employeeForRegisterDto.Login); if (employeeForCheckLogin != null) { return(new ResponseObject <EmployeeForReadDto>(false, "Login já cadastrado")); } if (employeeForRegisterDto.Access && _employeeRepository.CountAccess() > 10) { return(new ResponseObject <EmployeeForReadDto>(false, "Dismarque a opção acesso ao sistema. Limite excedido")); } var employeeForRegister = _mapper.Map <Employee>(employeeForRegisterDto); _employeeRepository.Post(employeeForRegister); try { var commit = _unityOfWork.Commit(); return(commit ? new ResponseObject <EmployeeForReadDto>(true, obj: _mapper.Map <EmployeeForReadDto>(employeeForRegister)) : new ResponseObject <EmployeeForReadDto>(false)); } catch (Exception e) { return(new ResponseObject <EmployeeForReadDto>(false, e.InnerException.Message, null)); } }