示例#1
0
        public ActionResult Edit(EmployeeViewModel employee)
        {
            employee.Name         = employee.Name.Trim();
            employee.Email        = employee.Email.Trim();
            employee.Address      = employee.Address.Trim();
            employee.MobileNumber = Convert.ToDouble(employee.MobileNumber.ToString().Trim());

            EmployeeViewModel originalEmployee = (EmployeeViewModel)Session["EmployeeOriginal"];
            var comparer = new ObjectsComparer.Comparer <EmployeeViewModel>();

            if (ModelState.IsValid)
            {
                bool isEqual = comparer.Compare(employee, originalEmployee);
                ViewData["Designations"]   = GetDesignations();
                ViewData["Qualifications"] = GetQualifications();
                ViewData["Managers"]       = GetManagers();
                ViewData["Roles"]          = GetRoles();
                if (!isEqual)
                {
                    int status = _services.EditEmployeeById(employee.EmployeeViewModeltoDTO());
                    //If mobile number already exists
                    if (status == 1)
                    {
                        ModelState.AddModelError("MobileNumber", "Mobile number already exists");
                    }
                    //If email already exists
                    else if (status == 2)
                    {
                        ModelState.AddModelError("Email", "Email already exists");
                    }
                    else
                    {
                        if (status == -1)
                        {
                            TempData["error"] = "Error in modifying Employee record";
                        }
                        if (status == 0)
                        {
                            TempData["message"] = "Modified Employee record";
                        }

                        if (status == 3)
                        {
                            TempData["error"] = "Role for this employee cannot be changed";
                        }
                        return(RedirectToAction("Index"));
                    }
                }
                else
                {
                    TempData["error"] = "No modification applied";
                    return(RedirectToAction("Index"));
                }
            }
            return(View(employee));
        }
示例#2
0
 public ActionResult Create(EmployeeViewModel employee)
 {
     employee.Name         = employee.Name.Trim();
     employee.Email        = employee.Email.Trim();
     employee.Address      = employee.Address.Trim();
     employee.MobileNumber = Convert.ToDouble(employee.MobileNumber.ToString().Trim());
     if (ModelState.IsValid)
     {
         int status = _services.AddNewEmployee(employee.EmployeeViewModeltoDTO());
         //If employee code already exists
         if (status == 1)
         {
             ModelState.AddModelError("EmployeeCode", "Employee code exists");
         }
         //If mobile number already exists
         else if (status == 2)
         {
             ModelState.AddModelError("MobileNumber", "Mobile number already exists");
         }
         //If email already exists
         else if (status == 3)
         {
             ModelState.AddModelError("Email", "Email already exists");
         }
         //If some error occur during creation of employee record
         else if (status == -1)
         {
             TempData["error"] = "Error in creating new Employee record";
         }
         //If employee is successfully added
         else
         {
             TempData["message"] = "Successfully added Employee record";
             return(RedirectToAction("Index"));
         }
     }
     ViewData["Designations"]   = GetDesignations();
     ViewData["Qualifications"] = GetQualifications();
     ViewData["Managers"]       = GetManagers();
     ViewData["Roles"]          = GetRoles();
     return(View(employee));
 }