Пример #1
0
        public void AlterEmployee()
        {
            int      id       = EmployeeView.RequestId();
            Employee employee = _repository.GetById(id);

            if (employee != null)
            {
                EmployeeVm employeeVm = new EmployeeVm()
                {
                    Name = employee.Name, Country = employee.Country, HourlyRate = employee.HourlyRate.ToString(), HoursWorked = employee.HoursWorked.ToString()
                };

                if (EmployeeView.ShowAlterEmployeeView(employeeVm))
                {
                    employee.Name        = employeeVm.Name;
                    employee.Country     = employeeVm.Country;
                    employee.HourlyRate  = double.Parse(employeeVm.HourlyRate);
                    employee.HoursWorked = int.Parse(employeeVm.HoursWorked);

                    try
                    {
                        _repository.Add(employee);
                        EmployeeView.ShowMessage("Funcionário alterado com sucesso.");
                    }
                    catch (Exception e)
                    {
                        EmployeeView.ShowMessage("Erro ao alterar o Funcionário.");
                    }
                }
            }
            else
            {
                EmployeeView.ShowMessage("Funcionário não encontrado.");
            }
        }
Пример #2
0
        public void RemoveEmployee()
        {
            int      id       = EmployeeView.RequestId();
            Employee employee = _repository.GetById(id);

            if (employee != null)
            {
                _repository.Remove(employee);
                EmployeeView.ShowMessage("Funcionário removido com sucesso");
            }
            else
            {
                EmployeeView.ShowMessage("Funcionário não encontrado.");
            }
        }
Пример #3
0
        public void AddEmployee()
        {
            EmployeeVm employee = EmployeeView.ShowAddEmployeeView();

            if (employee != null)
            {
                var domainEmployee = new Employee()
                {
                    Name = employee.Name, Country = employee.Country, HoursWorked = int.Parse(employee.HoursWorked), HourlyRate = double.Parse(employee.HourlyRate)
                };

                try
                {
                    _repository.Add(domainEmployee);
                    EmployeeView.ShowMessage("Funcionário adicionado com sucesso.");
                }
                catch (Exception e)
                {
                    EmployeeView.ShowMessage("Erro ao adicionar o funcionário.");
                }
            }
        }
Пример #4
0
        public void CalculatePaycheck()
        {
            int      id       = EmployeeView.RequestId();
            Employee employee = _repository.GetById(id);

            if (employee != null)
            {
                CountryPaycheckCalculator calculator = CountryPaycheckCalculatorFatory.GetPaycheckCalculator(employee);

                if (calculator != null)
                {
                    Paycheck paycheck = calculator.CalculatePayCheck(employee);
                    EmployeeView.ShowPaycheck(paycheck);
                }
                else
                {
                    EmployeeView.ShowMessage($"O país {employee.Country} não é suportado para cálculo de olerite.");
                }
            }
            else
            {
                EmployeeView.ShowMessage("Funcionário não encontrado.");
            }
        }