Esempio n. 1
0
        public ActionResult Create(EmployeeViewModel EmployeeModel)
        {
            try
            {

                if (ModelState.IsValid)
                {

                    EmployeeRepository e = new EmployeeRepository(EmployeeModel);

                    // validación del modelo.
                    if (e.IsCedulaAlert())
                    {
                        ModelState.AddModelError("Cédula Duplicada", "Cédula Duplicada : Existe un Trabajador con el mismo valor : " + EmployeeModel.CEDULA );
                    }
                    else if (e.IsFichaAlert())
                    {
                        ModelState.AddModelError("Ficha Duplicada", "Ficha Duplicada : Existe un Trabajador con el mismo valor : " + EmployeeModel.FICHA);
                    }
                    else if ( ! e.IsEdadValid() )
                    {
                        ModelState.AddModelError("Menor de Edad", "Fecha de Nacimiento : La edad debe ser mayor/igual a 16 años.");
                    }
                    else if (! e.IsFamiliar2Valid())
                    {
                        ModelState.AddModelError("Familar # 2", "Familar # 2 : Los campos no están llenados completamente.");
                    }
                    else if (!e.IsFamiliar3Valid())
                    {
                        ModelState.AddModelError("Familar # 3", "Familar # 3 : Los campos no están llenados completamente.");
                    }
                    else if (!e.IsFamiliar4Valid())
                    {
                        ModelState.AddModelError("Familar # 4", "Familar # 4 : Los campos no están llenados completamente.");
                    }
                    else if (!e.IsFamiliar5Valid())
                    {
                        ModelState.AddModelError("Familar # 5", "Familar # 5 : Los campos no están llenados completamente.");
                    }
                    else if (!e.IsFamiliar6Valid())
                    {
                        ModelState.AddModelError("Familar # 6", "Familar # 6 : Los campos no están llenados completamente.");
                    }
                    else if (!e.IsFamiliar7Valid())
                    {
                        ModelState.AddModelError("Familar # 7", "Familar # 7 : Los campos no están llenados completamente.");
                    }
                    else if (!e.IsFamiliar8Valid())
                    {
                        ModelState.AddModelError("Familar # 8", "Familar # 8 : Los campos no están llenados completamente.");
                    }
                    else if (!e.IsFamiliar9Valid())
                    {
                        ModelState.AddModelError("Familar # 9", "Familar # 9 : Los campos no están llenados completamente.");
                    }
                    else if (!e.IsFamiliar10Valid())
                    {
                        ModelState.AddModelError("Familar # 10", "Familar # 10 : Los campos no están llenados completamente.");
                    }
                    else if (!e.IsRangeValid(EmployeeModel.FRM1_FECHA_INICIO, EmployeeModel.FRM1_FECHA_FIN))
                    {
                        ModelState.AddModelError("F1F", "Formación # 1 : El rango de fechas no es válido.");
                    }
                    else if (!e.IsFormacion2Alert())
                    {
                        ModelState.AddModelError("F2", "Formación # 2 : Los campos no están llenados completamente.");
                    }
                    else if (!e.IsRangeValid(EmployeeModel.FRM2_FECHA_INICIO, EmployeeModel.FRM2_FECHA_FIN))
                    {
                        ModelState.AddModelError("F2F", "Formación # 2 : El rango de fechas no es válido.");
                    }
                    else if (!e.IsFormacion3Alert())
                    {
                        ModelState.AddModelError("F3", "Formación # 3 : Los campos no están llenados completamente.");
                    }
                    else if (!e.IsRangeValid(EmployeeModel.FRM2_FECHA_INICIO, EmployeeModel.FRM2_FECHA_FIN))
                    {
                        ModelState.AddModelError("F3F", "Formación # 3 : El rango de fechas no es válido.");
                    }
                    else if (!e.IsExperiencia1Alert())
                    {
                        ModelState.AddModelError("E1", "Experiencia Laboral # 1 : Los campos no están llenados completamente.");
                    }
                    else if (!e.IsRangeValid(EmployeeModel.EXP1_FECHA_INICIO, EmployeeModel.EXP1_FECHA_FIN))
                    {
                        ModelState.AddModelError("E1F", "Experiencia Laboral # 1 : El rango de fechas no es válido.");
                    }
                    else if (!e.IsExperiencia2Alert())
                    {
                        ModelState.AddModelError("E2", "Experiencia Laboral # 2 : Los campos no están llenados completamente.");
                    }
                    else if (!e.IsRangeValid(EmployeeModel.EXP2_FECHA_INICIO, EmployeeModel.EXP2_FECHA_FIN))
                    {
                        ModelState.AddModelError("E2F", "Experiencia Laboral # 2 : El rango de fechas no es válido.");
                    }
                    else if (!e.IsExperiencia3Alert())
                    {
                        ModelState.AddModelError("E3", "Experiencia Laboral # 3 : Los campos no están llenados completamente.");
                    }
                    else if (!e.IsRangeValid(EmployeeModel.EXP3_FECHA_INICIO, EmployeeModel.EXP3_FECHA_FIN))
                    {
                        ModelState.AddModelError("E3F", "Experiencia Laboral # 3 : El rango de fechas no es válido.");
                    }
                    else if (HttpContext.ApplicationInstance.Session["COD_USER"] == null)
                    {
                        ModelState.AddModelError("Experiencia Laboral", "Sesión Usuario : Su sesión ha caducado, debe ingresar nuevamente.");
                    }
                    else
                    {
                        // cargar el modelo temporal para la confirmación.
                        TempData["ConfirmacionModel"] = EmployeeModel;
                        return RedirectToAction("CreateConfirm");
                    }

                }

                EmployeeModel.ERROR = (string) HttpContext.ApplicationInstance.Session["ERROR"];
                return View(EmployeeModel);

            }
            catch( Exception e )
            {
                HttpContext.ApplicationInstance.Session["ERROR"] = e.InnerException.InnerException.Message;
                return View(EmployeeModel);
                //return View("Error");
            }
        }