public Employee(EmployeeParameter parameter) { this.Name = parameter.Name; this.Lastname = parameter.LastName; this.Identification = parameter.Identification; this.Email = parameter.Email; this.EntryDate = parameter.EntryDate; this.Occupation = parameter.Occupation; this.Phone = parameter.Phone; this.State = parameter.State; }
public async Task <ActionResult <IEnumerable <EmployeeDTO> > > GetEmployees( [FromRoute] Guid companyId, [FromQuery] EmployeeParameter parameter) { if (!await this.companyRepository.CompanyExistAsync(companyId)) { return(this.NotFound()); } var employees = await this.companyRepository.GetEmployeesAsync(companyId, parameter); var employeeDTOs = this.mapper.Map <IEnumerable <EmployeeDTO> >(employees); return(this.Ok(employeeDTOs)); }
public ActionResult Create(EmployeeViewModel modelo) { if (ModelState.IsValid) { EmployeeParameter employ = modelo; Employee employee = new Employee(employ); empleados.CreateOneDocument(employee); return(RedirectToAction("Index")); } else { ModelState.AddModelError("", "Algunos de los campos requeridos no esta presente"); return(View(modelo)); } }
public async Task <IEnumerable <Employee> > GetEmployeesAsync(Guid companyId, EmployeeParameter parameter) { if (Guid.Empty == companyId) { throw new ArgumentNullException(nameof(companyId)); } var result = this.context.Employees .Where(x => x.CompanyId == companyId); if (!string.IsNullOrEmpty(parameter.Gender) && Enum.TryParse <Gender>(parameter.Gender.Trim(), out var gender)) { result = result.Where(x => x.Gender == gender); } if (!string.IsNullOrEmpty(parameter.SearchTerm)) { result = result.Where(x => x.EmployeeNo.Contains(parameter.SearchTerm) || x.FirstName.Contains(parameter.SearchTerm) || x.LastName.Contains(parameter.SearchTerm)); } var propertyMapping = this.propertyMappingService.GetPropertyMapping <EmployeeDTO, Employee>(); result = result.ApplySort(parameter.OrderBy, propertyMapping.PropertyMappingValueDictionary); return(await result.ToListAsync()); }