public ActionResult Create([Bind(Include = "Rut, Dv, Nombre, ApPaterno, ApMaterno, Profesion,NumeroSuperintendencia,Telefono,Correo,ValorDocente,CumpleDatos,NombreDocenciaHospitalaria,InmunizacionId")] Persona persona, ProfesionalDocenteGuia profesionalDocenteGuia, DocenciaHospitalaria docenciaHospitalaria, Inmunizacion inmunizacion)
        {
            IngresoServices  ingresoDatos = new IngresoServices();
            ValidacionCorreo validar      = new ValidacionCorreo();

            if (ModelState.IsValid)
            {
                if (validar.ValidateEmail(profesionalDocenteGuia.Correo))
                {
                    persona = ingresoDatos.CrearPersona(persona, 1);
                    docenciaHospitalaria   = ingresoDatos.CrearDocenciaHospitalaria(docenciaHospitalaria.NombreDocenciaHospitalaria, 1);
                    profesionalDocenteGuia = ingresoDatos.CrearProfesionalDocenteGuia(persona, profesionalDocenteGuia, inmunizacion, docenciaHospitalaria, 1);
                    return(RedirectToAction("Index"));
                }
                else
                {
                    ViewBag.EmailValidation = "Correo inválido";
                }

                //return View();
            }
            ViewBag.NombreDocenciaHospitalaria = new SelectList(db.DocenciaHospitalarias, "NombreDocenciaHospitalaria", "NombreDocenciaHospitalaria");
            ViewBag.InmunizacionId             = new SelectList(db.Inmunizacions, "InmunizacionId", "NombreInmunizacion");
            return(View(profesionalDocenteGuia));
        }
        public ActionResult Create([Bind(Include = "Rut,Dv,Nombre,ApPaterno,ApMaterno,CursoNivel,Observaciones,InmunizacionId,CarreraId,NombreCentroFormadorId")] Persona persona, Alumno alumno, Inmunizacion inmunizacion, Carrera carrera, NombreCentroFormador nombreCentroFormador)
        {
            IngresoServices ingresoDatos = new IngresoServices();

            if (ModelState.IsValid)
            {
                persona = ingresoDatos.CrearPersona(persona, 1);
                CentroFormador centroFormador = ingresoDatos.CrearCentroFormador(nombreCentroFormador.NombreCentroFormadorId, carrera.CarreraId);

                if (alumno.Observaciones == null)
                {
                    alumno.Observaciones = "";
                }

                alumno = ingresoDatos.CrearAlumno(persona, alumno, inmunizacion, centroFormador, 1);


                return(RedirectToAction("Create"));
            }


            ViewBag.InmunizacionInmunizacionId = new SelectList(db.Inmunizacions, "InmunizacionId", "NombreInmunizacion");
            ViewBag.CarreraId = new SelectList(db.Carreras, "CarreraId", "NombreCarrera");
            ViewBag.CentroFormadorCentroFormadorId = new SelectList(db.NombreCentroFormadors, "NombreCentroFormadorId", "NombreCentroFormador1");
            return(View(alumno));
        }
        public ActionResult DeleteConfirmed(int id)
        {
            IngresoServices           ingreso            = new IngresoServices();
            List <CampoClinicoAlumno> campoClinicoAlumno = db.CampoClinicoAlumnos.Where(c => c.AlumnoAlumnoId == id).ToList();

            foreach (var item in campoClinicoAlumno)
            {
                db.CampoClinicoAlumnos.Remove(item);
            }

            Alumno alumno = db.Alumnos.Find(id);

            db.Alumnos.Remove(alumno);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
        public ActionResult Edit([Bind(Include = "Rut,Dv,Nombre,ApPaterno,ApMaterno,CursoNivel,Observaciones,InmunizacionId,CarreraId,NombreCentroFormadorId")] Persona persona, Alumno alumno, Inmunizacion inmunizacion, Carrera carrera, NombreCentroFormador nombreCentroFormador)
        {
            IngresoServices ingreso = new IngresoServices();

            // obtengo el centro formador
            CentroFormador centroFormador = new CentroFormador();

            centroFormador = ingreso.BuscarCentroFormador(nombreCentroFormador.NombreCentroFormadorId, carrera.CarreraId);

            // Utilizo metodo de la clase ingresoServices para poder ingresar y modificar los datos con Estado 1 que indica actualizar
            if (ModelState.IsValid)
            {
                //llamo al metodo crear persona para modificar los datos de persona con el estado 1 de modificar y utilizo el mismo objeto para enviarselo a al metodo de alumno
                persona = ingreso.CrearPersona(persona, 1);
                //objeto ingreso el cual se comunica con la clase Ingreso services para modificar los datos
                ingreso.CrearAlumno(persona, alumno, inmunizacion, centroFormador, 1);

                return(RedirectToAction("Index"));
            }
            ViewBag.InmunizacionId         = new SelectList(db.Inmunizacions, "InmunizacionId", "NombreInmunizacion");
            ViewBag.CarreraId              = new SelectList(db.Carreras, "CarreraId", "NombreCarrera");
            ViewBag.NombreCentroFormadorId = new SelectList(db.NombreCentroFormadors, "NombreCentroFormadorId", "NombreCentroFormador1");
            return(View(alumno));
        }
 public IngresosController(IngresoServices ingresos)
 {
     _ingresos = ingresos;
 }