public async Task <bool> UpdateEmployeeAsync(EmployeeApiModel employeeApiModel,
                                                     CancellationToken ct = default)
        {
            var employee = await _employeeRepository.GetByIdAsync(employeeApiModel.EmployeeId, ct);

            if (employee == null)
            {
                return(false);
            }
            employee.EmployeeId = employeeApiModel.EmployeeId;
            employee.LastName   = employeeApiModel.LastName;
            employee.FirstName  = employeeApiModel.FirstName;
            employee.Title      = employeeApiModel.Title;
            employee.ReportsTo  = employeeApiModel.ReportsTo;
            employee.BirthDate  = employeeApiModel.BirthDate;
            employee.HireDate   = employeeApiModel.HireDate;
            employee.Address    = employeeApiModel.Address;
            employee.City       = employeeApiModel.City;
            employee.State      = employeeApiModel.State;
            employee.Country    = employeeApiModel.Country;
            employee.PostalCode = employeeApiModel.PostalCode;
            employee.Phone      = employeeApiModel.Phone;
            employee.Fax        = employeeApiModel.Fax;
            employee.Email      = employeeApiModel.Email;

            return(await _employeeRepository.UpdateAsync(employee, ct));
        }
        public bool UpdateEmployee(EmployeeApiModel employeeApiModel)
        {
            var employee = _employeeRepository.GetById(employeeApiModel.EmployeeId);

            if (employee == null)
            {
                return(false);
            }
            employee.EmployeeId = employeeApiModel.EmployeeId;
            employee.LastName   = employeeApiModel.LastName;
            employee.FirstName  = employeeApiModel.FirstName;
            employee.Title      = employeeApiModel.Title;
            employee.ReportsTo  = employeeApiModel.ReportsTo;
            employee.BirthDate  = employeeApiModel.BirthDate;
            employee.HireDate   = employeeApiModel.HireDate;
            employee.Address    = employeeApiModel.Address;
            employee.City       = employeeApiModel.City;
            employee.State      = employeeApiModel.State;
            employee.Country    = employeeApiModel.Country;
            employee.PostalCode = employeeApiModel.PostalCode;
            employee.Phone      = employeeApiModel.Phone;
            employee.Fax        = employeeApiModel.Fax;
            employee.Email      = employeeApiModel.Email;

            return(_employeeRepository.Update(employee));
        }
Esempio n. 3
0
        public async Task <ActionResult <EmployeeApiModel> > Put(int id, [FromBody] EmployeeApiModel input,
                                                                 CancellationToken ct = default)
        {
            try
            {
                if (input == null)
                {
                    return(BadRequest());
                }
                if (await _chinookSupervisor.GetEmployeeByIdAsync(id, ct) == null)
                {
                    return(NotFound());
                }

                var errors = JsonConvert.SerializeObject(ModelState.Values
                                                         .SelectMany(state => state.Errors)
                                                         .Select(error => error.ErrorMessage));
                Debug.WriteLine(errors);

                if (await _chinookSupervisor.UpdateEmployeeAsync(input, ct))
                {
                    return(Ok(input));
                }

                return(StatusCode(500));
            }
            catch (Exception ex)
            {
                return(StatusCode(500, ex));
            }
        }
        public async Task <EmployeeApiModel> AddEmployeeAsync(EmployeeApiModel newEmployeeApiModel,
                                                              CancellationToken ct = default)
        {
            /*var employee = new Employee
             * {
             *  LastName = newEmployeeApiModel.LastName,
             *  FirstName = newEmployeeApiModel.FirstName,
             *  Title = newEmployeeApiModel.Title,
             *  ReportsTo = newEmployeeApiModel.ReportsTo,
             *  BirthDate = newEmployeeApiModel.BirthDate,
             *  HireDate = newEmployeeApiModel.HireDate,
             *  Address = newEmployeeApiModel.Address,
             *  City = newEmployeeApiModel.City,
             *  State = newEmployeeApiModel.State,
             *  Country = newEmployeeApiModel.Country,
             *  PostalCode = newEmployeeApiModel.PostalCode,
             *  Phone = newEmployeeApiModel.Phone,
             *  Fax = newEmployeeApiModel.Fax,
             *  Email = newEmployeeApiModel.Email
             * };*/

            var employee = newEmployeeApiModel.Convert;

            employee = await _employeeRepository.AddAsync(employee, ct);

            newEmployeeApiModel.EmployeeId = employee.EmployeeId;
            return(newEmployeeApiModel);
        }
Esempio n. 5
0
        public ActionResult <EmployeeApiModel> Put([FromRoute] int id, [FromBody] EmployeeApiModel input)
        {
            try
            {
                if (input == null)
                {
                    return(BadRequest());
                }
                if (_chinookSupervisor.GetEmployeeById(id) == null)
                {
                    return(NotFound());
                }

                // var errors = JsonConvert.SerializeObject(ModelState.Values
                //     .SelectMany(state => state.Errors)
                //     .Select(error => error.ErrorMessage));
                // Debug.WriteLine(errors);

                if (_chinookSupervisor.UpdateEmployee(input))
                {
                    return(Ok(input));
                }

                return(StatusCode(500));
            }
            catch (Exception ex)
            {
                return(StatusCode(500, ex));
            }
        }
Esempio n. 6
0
        public async Task <EmployeeApiModel> AddEmployeeAsync(EmployeeApiModel newEmployeeApiModel,
                                                              CancellationToken ct = default)
        {
            var employee = new Employee
            {
                LastName   = newEmployeeApiModel.LastName,
                FirstName  = newEmployeeApiModel.FirstName,
                Title      = newEmployeeApiModel.Title,
                ReportsTo  = newEmployeeApiModel.ReportsTo,
                BirthDate  = newEmployeeApiModel.BirthDate,
                HireDate   = newEmployeeApiModel.HireDate,
                Address    = newEmployeeApiModel.Address,
                City       = newEmployeeApiModel.City,
                State      = newEmployeeApiModel.State,
                Country    = newEmployeeApiModel.Country,
                PostalCode = newEmployeeApiModel.PostalCode,
                Phone      = newEmployeeApiModel.Phone,
                Fax        = newEmployeeApiModel.Fax,
                Email      = newEmployeeApiModel.Email
            };

            employee = await _employeeRepository.AddAsync(employee, ct);

            newEmployeeApiModel.EmployeeId = employee.EmployeeId;
            return(newEmployeeApiModel);
        }
        public EmployeeApiModel AddEmployee(EmployeeApiModel newEmployeeApiModel)
        {
            var employee = newEmployeeApiModel.Convert();

            employee = _employeeRepository.Add(employee);
            newEmployeeApiModel.EmployeeId = employee.EmployeeId;
            return(newEmployeeApiModel);
        }
Esempio n. 8
0
        public ActionResult <EmployeeApiModel> Post([FromBody] EmployeeApiModel input)
        {
            try
            {
                if (input == null)
                {
                    return(BadRequest());
                }

                return(StatusCode(201, _chinookSupervisor.AddEmployee(input)));
            }
            catch (Exception ex)
            {
                return(StatusCode(500, ex));
            }
        }
Esempio n. 9
0
        public async Task <ActionResult <EmployeeApiModel> > Post([FromBody] EmployeeApiModel input,
                                                                  CancellationToken ct = default)
        {
            try
            {
                if (input == null)
                {
                    return(BadRequest());
                }

                return(StatusCode(201, await _chinookSupervisor.AddEmployeeAsync(input, ct)));
            }
            catch (Exception ex)
            {
                return(StatusCode(500, ex));
            }
        }