Beispiel #1
0
 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;
 }
Beispiel #2
0
        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));
        }
Beispiel #3
0
 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));
     }
 }
Beispiel #4
0
        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());
        }