Esempio n. 1
0
        public IActionResult CreateNewEmployee([FromBody] EditEmployeeVm editEmployeeVm)
        {
            FullEmployeeVm newEmployee = new FullEmployeeVm();

            newEmployee.Id = _employees.Count == 0 ? 1 : _employees.Max(e => e.Id) + 1;
            newEmployee.Update(editEmployeeVm);
            _employees.Add(newEmployee);
            return(Json(newEmployee.Id));
        }
Esempio n. 2
0
        public IActionResult UpdateEmployee(int id, [FromBody] EditEmployeeVm editEmployeeVm)
        {
            FullEmployeeVm employee = _employees.SingleOrDefault(e => e.Id == id);

            if (employee == null)
            {
                return(HttpNotFound());
            }

            employee.Update(editEmployeeVm);

            return(Json(employee.Id));
        }
        public IActionResult Edit(string id)
        {
            int decryptedId = Convert.ToInt32(protector.Unprotect(id));

            Employee employee = _employeeRepository.GetEmployee(decryptedId);

            if (employee == null)
            {
                ViewBag.Message = $"Employee with id = {id} not found.";
                return(View("NotFound"));
            }

            EditEmployeeVm model = new EditEmployeeVm
            {
                EncryptedId = id,
                Name        = employee.Name,
                Email       = employee.Email,
                Department  = employee.Department,
                PhotoPath   = employee.Photo
            };

            return(View(model));
        }
        public IActionResult Edit(EditEmployeeVm model)
        {
            if (!ModelState.IsValid)
            {
                return(View());
            }

            int decryptedId = Convert.ToInt32(protector.Unprotect(model.EncryptedId));

            Employee employee = _employeeRepository.GetEmployee(decryptedId);

            if (employee == null)
            {
                ViewBag.Message = $"Employee with id = {model.EncryptedId} not found.";
                return(View("NotFound"));
            }

            employee.Name       = model.Name;
            employee.Email      = model.Email;
            employee.Department = model.Department;

            if (model.Photo != null)
            {
                // If user had a photo, remove it
                if (!String.IsNullOrEmpty(model.PhotoPath))
                {
                    RemoveOldPhoto(model.PhotoPath);
                }

                employee.Photo = ProcessUploadedFile(model.Photo);
            }

            _employeeRepository.Update(employee);

            TempData["Success"] = $"Employee '{employee.Name}' was updated successfully.";
            return(RedirectToAction("Index"));
        }
 /// <summary>
 /// Updates this instance with the properties from an <see cref="EditEmployeeVm"/>.
 /// </summary>
 /// <param name="editEmployee">The edit employee view model to read from.</param>
 public void Update(EditEmployeeVm editEmployee)
 {
     Mapper.Map(editEmployee, this);
     LastModified = DateTimeOffset.Now;
 }