Example #1
0
        public async Task <EmployeeDto> CreateAsync(EmployeeDto employeeDto)
        {
            ThrowIfNull(employeeDto);

            var department = await Uow.Departments.GetByIdAsync(employeeDto.DepartmentId);

            if (department == null)
            {
                throw new ArgumentException($"Department with departmentId: '{employeeDto.DepartmentId}' not found", nameof(employeeDto.DepartmentId));
            }

            try
            {
                var employee = employeeDto.ToEntity();
                employee.DepartmentId = department.Id;
                employee.CompanyId    = department.CompanyId;

                Uow.Employees.Create(employee);
                await Uow.CommitAsync();

                return(employee.ToDto());
            }
            catch (Exception e)
            {
                Logger.LogError(e, "Error while creating employee");
                throw;
            }
        }
Example #2
0
        public bool AddEmployee(EmployeeDto employee)
        {
            var entity = employee.ToEntity();

            _repo.Save(entity);
            return(entity.Id > 0);
        }
Example #3
0
        public async Task <bool> Create(EmployeeDto employeeDto)
        {
            var entity = employeeDto.ToEntity();

            _context.Employees.Add(entity);
            _context.Registrations.AddRange(entity.Registrations);
            await _context.SaveChangesAsync();

            return(true);
        }
        public EmployeeResponse InsertEmployee(EmployeeRequest request)
        {
            EmployeeResponse       response           = new EmployeeResponse();
            EmployeeDto            employeeDto        = request.EmployeeDto;
            EmployeeRepository     employeeRepository = northWindUnitOfWork.EmployeeRepository;
            EntityEntry <Employee> employee           = employeeRepository.Add(employeeDto.ToEntity <EmployeeDto, Employee>());

            response.EmployeeId = employee.Entity.EmployeeId;
            return(response);
        }
Example #5
0
 /// <summary>
 /// Delete Employee.
 /// </summary>
 /// <param name="EmployeeDto">EmployeeDto to create.</param>
 public async Task <EmployeeDto> DeleteAsync(EmployeeDto employee) =>
 (await employeeRepository.DeleteAsync(employee.ToEntity())).ToDto();