コード例 #1
0
ファイル: PensumController.cs プロジェクト: erickdc/Mhotivo
        public ActionResult Edit(PensumEditModel modelPensum)
        {
            bool   updateCourse = false;
            bool   updateGrade  = false;
            Pensum myPensum     = _pensumRepository.GetById(modelPensum.Id);

            if (myPensum.Grade.Id != modelPensum.IdGrade)
            {
                myPensum.Grade = _gradeRepository.GetById(modelPensum.IdGrade);
                updateGrade    = true;
            }
            if (myPensum.Course.Id != modelPensum.IdCourse)
            {
                myPensum.Course = _courseRepository.GetById(modelPensum.IdCourse);
                updateCourse    = true;
            }
            Pensum       pensum  = _pensumRepository.Update(myPensum, updateCourse, updateGrade);
            const string title   = "Pensum Actualizado";
            string       content = "El Pensum " + pensum.Id +
                                   " ha sido actualizado exitosamente.";

            TempData["MessageInfo"] = new MessageModel
            {
                Type    = "INFO",
                Title   = title,
                Content = content
            };
            return(RedirectToAction("Index"));
        }
コード例 #2
0
        public Pensum Create(Pensum itemToCreate)
        {
            var pensum = _context.Pensums.Add(itemToCreate);

            _context.SaveChanges();
            return(pensum);
        }
コード例 #3
0
        public ActionResult Edit(long id)
        {
            Pensum thisPensum = _pensumRepository.GetById(id);
            var    model      = Mapper.Map <PensumEditModel>(thisPensum);

            return(View("Edit", model));
        }
コード例 #4
0
 public void InsertAsignation(Pensum entity)
 {
     using (var context = new QualificationsDBEntities())
     {
         context.Pensum.Attach(entity);
         context.ObjectStateManager.ChangeObjectState(entity, System.Data.EntityState.Added);
         context.SaveChanges();
     }
 }
コード例 #5
0
        public async Task <ActionResult> DeleteConfirmed(int id)
        {
            Pensum pensum = await db.Pensum.FindAsync(id);

            db.Pensum.Remove(pensum);
            await db.SaveChangesAsync();

            return(RedirectToAction("Index"));
        }
コード例 #6
0
        protected void Button1_Click(object sender, EventArgs e)
        {
            string nombrePrograma = ddl_Programas.SelectedValue;

            if (txt_ModuleName.Text != "")
            {
                if (nombrePrograma != "")
                {
                    long ProgramaID = 0;
                    long ModuloID   = 0;

                    updateEntity = new Module();
                    pensum       = new Pensum();

                    try
                    {
                        entity            = new Module();
                        entity.ModuleName = txt_ModuleName.Text;
                        entity.Mode       = rbl_Mode.SelectedValue.ToString();
                        entity.Status     = 2;

                        proxyModule.InsertModule(entity);

                        // Obteniendo el ID del Modulo recien añadido
                        ModuloID = proxyModule.GetModuleID(txt_ModuleName.Text);
                        //Obteniendo el ID del Programa Seleccionado
                        ProgramaID = proxyProgram.GetProgramID(nombrePrograma);
                        //Obteniendo el Modulo recien añadido
                        updateEntity = Get(ModuloID);

                        //Registrando en la Tabla Pensum
                        pensum.GraduateProgram = ProgramaID;
                        pensum.ModuleCode      = ModuloID;
                        proxyAsignation.InsertAsignation(pensum);

                        //Actualizando el Módulo Añadido
                        updateEntity.Status = 1;
                        UpdateModule(updateEntity);

                        lbl_mensaje.Text    = "Módulo Registrado Exitosamente";
                        txt_ModuleName.Text = "";
                    }
                    catch (Exception ex)
                    {
                        lbl_mensaje.Text = "Ocurrio un problema inesperado. El Módulo no se ha registrado";
                    }
                }
                else
                {
                    lbl_mensaje.Text = "Seleccione un Programa de Postgrado";
                }
            }
            else
            {
                lbl_mensaje.Text = "Ingrese los datos en todos los campos de texto.";
            }
        }
コード例 #7
0
        public async Task <ActionResult> Edit([Bind(Include = "Id_Pensum,Nombre,Codigo,FK_Id_Linea,numSemestre")] Pensum pensum)
        {
            if (ModelState.IsValid)
            {
                db.Entry(pensum).State = EntityState.Modified;
                await db.SaveChangesAsync();

                return(RedirectToAction("Index"));
            }
            ViewBag.FK_Id_Linea = new SelectList(db.Linea, "Id_Linea", "Nombre", pensum.FK_Id_Linea);
            return(View(pensum));
        }
コード例 #8
0
 public Pensum Update(Pensum itemToUpdate, bool updateCourse = true, bool updateGrade = true)
 {
     if (updateCourse)
     {
         _context.Entry(itemToUpdate.Course).State = EntityState.Modified;
     }
     if (updateGrade)
     {
         _context.Entry(itemToUpdate.Grade).State = EntityState.Modified;
     }
     _context.SaveChanges();
     return(itemToUpdate);
 }
コード例 #9
0
ファイル: PensumController.cs プロジェクト: erickdc/Mhotivo
        public ActionResult Delete(long id)
        {
            Pensum       pensum  = _pensumRepository.Delete(id);
            const string title   = "Pensum Eliminado";
            string       content = "El Pesum de " + pensum.Course + " para el grado " + pensum.Grade + " ha sido eliminado exitosamente.";

            TempData["MessageInfo"] = new MessageModel
            {
                Type    = "INFO",
                Title   = title,
                Content = content
            };
            return(RedirectToAction("Index"));
        }
コード例 #10
0
ファイル: PensumController.cs プロジェクト: erickdc/Mhotivo
        public ActionResult Edit(long id)
        {
            Pensum thisPensum = _pensumRepository.GetById(id);
            var    pensum     = new PensumEditModel
            {
                IdCourse = thisPensum.Course.Id,
                Id       = thisPensum.Id,
                IdGrade  = thisPensum.Grade.Id
            };

            ViewBag.IdCourse = new SelectList(_courseRepository.Query(x => x), "Id", "Name", thisPensum.Course.Id);
            ViewBag.IdGrade  = new SelectList(_gradeRepository.Query(x => x), "Id", "Name", thisPensum.Grade.Id);
            return(View("Edit", pensum));
        }
コード例 #11
0
        // GET: Pensums/Details/5
        public async Task <ActionResult> Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Pensum pensum = await db.Pensum.FindAsync(id);

            if (pensum == null)
            {
                return(HttpNotFound());
            }
            return(View(pensum));
        }
コード例 #12
0
        // GET: Pensums/Edit/5
        public async Task <ActionResult> Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Pensum pensum = await db.Pensum.FindAsync(id);

            if (pensum == null)
            {
                return(HttpNotFound());
            }
            ViewBag.FK_Id_Linea = new SelectList(db.Linea, "Id_Linea", "Nombre", pensum.FK_Id_Linea);
            return(View(pensum));
        }
コード例 #13
0
        public Pensum UpdateNew(Pensum itemToUpdate)
        {
            var updateCourse = false;
            var updateGrade  = false;
            var pensum       = GetById(itemToUpdate.Id);

            if (pensum.Course.Id != itemToUpdate.Course.Id)
            {
                pensum.Course = itemToUpdate.Course;
                updateCourse  = true;
            }
            if (pensum.Grade.Id != itemToUpdate.Grade.Id)
            {
                pensum.Grade = itemToUpdate.Grade;
                updateGrade  = true;
            }
            return(Update(pensum, updateCourse, updateGrade));
        }
コード例 #14
0
        public ActionResult Edit(PensumEditModel modelPensum)
        {
            Pensum myPensum = _pensumRepository.GetById(modelPensum.Id);

            if (_pensumRepository.Filter(x => x.Grade.Id == myPensum.Grade.Id && x.Id != modelPensum.Id && x.Name.Equals(modelPensum.Name)).Any())
            {
                _viewMessageLogic.SetNewMessage("Error", "Ya existe un pensum con ese nombre.", ViewMessageType.ErrorMessage);
                return(RedirectToAction("Index", new { gradeId = myPensum.Grade.Id }));
            }
            myPensum = Mapper.Map(modelPensum, myPensum);
            Pensum       pensum  = _pensumRepository.Update(myPensum);
            const string title   = "Pensum Actualizado";
            string       content = "El Pensum " + pensum.Name +
                                   " ha sido actualizado exitosamente.";

            _viewMessageLogic.SetNewMessage(title, content, ViewMessageType.SuccessMessage);
            return(RedirectToAction("Index", new { gradeId = myPensum.Grade.Id }));
        }
コード例 #15
0
ファイル: PensumController.cs プロジェクト: erickdc/Mhotivo
        public ActionResult Add(PensumRegisterModel modelPensum)
        {
            var myPensum = new Pensum
            {
                Grade  = _gradeRepository.GetById(modelPensum.IdGrade),
                Course = _courseRepository.GetById(modelPensum.IdCourse)
            };
            Pensum       user    = _pensumRepository.Create(myPensum);
            const string title   = "Pensum Agregado";
            string       content = "El pensum " + user.Id + " ha sido agregado exitosamente.";

            TempData["MessageInfo"] = new MessageModel
            {
                Type    = "SUCCESS",
                Title   = title,
                Content = content
            };
            return(RedirectToAction("Index"));
        }
コード例 #16
0
        public ActionResult Delete(long id)
        {
            Pensum pensum  = _pensumRepository.GetById(id);
            var    gradeId = pensum.Grade.Id;

            if (_academicGradeRepository.Filter(x => x.ActivePensum.Id == id).Any())
            {
                _viewMessageLogic.SetNewMessage("Error", "El pensum esta siendo usado por un grado académico y no puede eliminarse.", ViewMessageType.ErrorMessage);
                return(RedirectToAction("Index", new { gradeId }));
            }
            if (pensum.Courses.Any())
            {
                _viewMessageLogic.SetNewMessage("Error", "El pensum tiene cursos, elimine los cursos primero para posteriormente poder eliminar el pensum.", ViewMessageType.ErrorMessage);
                return(RedirectToAction("Index", new { gradeId }));
            }
            pensum = _pensumRepository.Delete(pensum);
            const string title   = "Pensum Eliminado";
            string       content = "El Pesum " + pensum.Name + " ha sido eliminado exitosamente.";

            _viewMessageLogic.SetNewMessage(title, content, ViewMessageType.SuccessMessage);
            return(RedirectToAction("Index", new { gradeId }));
        }
コード例 #17
0
        public async Task <IActionResult> Crear([FromBody] Pensum model)
        {
            if (!(await esAdmin()))
            {
                return(Forbid());
            }

            try
            {
                //var carrera = await _context.Carreras.FirstOrDefaultAsync(c => c.CodigoCarrera == model.CodigoCarrera);
                //model.Carrera = carrera;
                _context.Pensums.Add(model);
                await _context.SaveChangesAsync();

                return(Ok(new {
                    status = 200,
                    message = "Se guardó el pensum"
                }));
            } catch (DbUpdateException ex)
            {
                string error = ex.InnerException.Message;
                if (DUP_KEY_ERROR_REGEX.IsMatch(error))
                {
                    error = "Pensum duplicado";
                }
                else if (CARRERA_FK_ERROR_REGEX.IsMatch(error))
                {
                    error = "La carrera no existe";
                }
                return(BadRequest(new
                {
                    status = 400,
                    message = "No se pudo guardar el pensum",
                    error
                }));
            }
        }
コード例 #18
0
        public IActionResult Pensums(IFormFile file)
        {
            try
            {
                List <Pensum> pensums = new List <Pensum>();
                using (var reader = new StreamReader(file.OpenReadStream()))
                {
                    while (reader.Peek() >= 0)
                    {
                        Pensum p     = new Pensum();
                        var    line  = reader.ReadLine();
                        var    array = line.Split("|");
                        p.CODIGO_MATERIA      = array[1];
                        p.DESCRIPCION_MATERIA = array[2];
                        p.CODIGO_OFICIAL      = array[3];
                        p.CREDITOS            = Convert.ToByte(array[4]);
                        p.CUATRIMESTRE        = Convert.ToInt32(array[5]);

                        pensums.Add(p);
                    }
                }

                pensums.ForEach(d =>
                {
                    _context.Pensums.Add(d);
                });
                _context.SaveChanges();
                ViewBag.Msg = "Datos guardados exitosamente";
            }
            catch (Exception e)
            {
                ViewBag.Msg = "Error al procesar el archivo";
            }

            return(View("Index"));
        }
コード例 #19
0
 public Pensum Delete(Pensum itemToDelete)
 {
     _context.Pensums.Remove(itemToDelete);
     _context.SaveChanges();
     return(itemToDelete);
 }
コード例 #20
0
 public void Detach(Pensum pensum)
 {
     _context.Entry(pensum).State = EntityState.Detached;
 }
コード例 #21
0
 public Pensum Update(Pensum itemToUpdate)
 {
     _context.Entry(itemToUpdate).State = EntityState.Modified;
     _context.SaveChanges();
     return(itemToUpdate);
 }
コード例 #22
0
ファイル: Startup.cs プロジェクト: juanguerra97/notasmiumg
        // metodo para guardar algunos datos
        private static async Task InitData(ApplicationDbContext db)
        {
            if (0 < await db.Carreras.CountAsync())
            {
                return;
            }

            var sistemas = new Carrera(1490, "INGENIERIA EN SISTEMAS");
            await db.Carreras.AddAsync(sistemas);

            var pensum2014 = new Pensum(2014, sistemas);
            await db.Pensums.AddAsync(pensum2014);

            await db.SaveChangesAsync();

            var pensumCursos = new PensumCurso[]
            {
                new PensumCurso(1, 4, pensum2014, new Curso(1, "DESARROLLO HUMANO Y PROFESIONAL", sistemas)),
                new PensumCurso(1, 5, pensum2014, new Curso(2, "METODOLOGIA DE LA INVESTIGACION", sistemas)),
                new PensumCurso(1, 5, pensum2014, new Curso(3, "CONTABILIDAD I", sistemas)),
                new PensumCurso(1, 5, pensum2014, new Curso(4, "INTRODUCCION A LOS SISTEMAS DE COMPUTO", sistemas)),
                new PensumCurso(1, 5, pensum2014, new Curso(5, "LOGICA DE SISTEMAS", sistemas)),

                new PensumCurso(2, 5, pensum2014, new Curso(6, "PRECALCULO", sistemas)),
                new PensumCurso(2, 5, pensum2014, new Curso(7, "ALGEBRA LINEAL", sistemas)),
                new PensumCurso(2, 5, pensum2014, new Curso(8, "ALGORITMOS", sistemas)),
                new PensumCurso(2, 5, pensum2014, new Curso(9, "CONTABILIDAD II", sistemas)),
                new PensumCurso(2, 5, pensum2014, new Curso(10, "MATEMATICA DISCRETA", sistemas)),

                new PensumCurso(3, 5, pensum2014, new Curso(11, "FISICA I", sistemas)),
                new PensumCurso(3, 5, pensum2014, new Curso(12, "PROGRAMACION I", sistemas)),
                new PensumCurso(3, 5, pensum2014, new Curso(13, "CALCULO I", sistemas)),
                new PensumCurso(3, 4, pensum2014, new Curso(14, "PROCESO ADMINISTRATIVO", sistemas)),
                new PensumCurso(3, 5, pensum2014, new Curso(15, "DERECHO INFORMATICO", sistemas)),

                new PensumCurso(4, 5, pensum2014, new Curso(16, "MICROECONOMIA", sistemas)),
                new PensumCurso(4, 5, pensum2014, new Curso(17, "PROGRAMACION II", sistemas)),
                new PensumCurso(4, 5, pensum2014, new Curso(18, "CALCULO II", sistemas)),
                new PensumCurso(4, 5, pensum2014, new Curso(19, "ESTADISTICA I", sistemas)),
                new PensumCurso(4, 5, pensum2014, new Curso(20, "FISICA II", sistemas)),

                new PensumCurso(5, 5, pensum2014, new Curso(21, "METODOS NUMERICOS", sistemas)),
                new PensumCurso(5, 5, pensum2014, new Curso(22, "PROGRAMACION III", sistemas)),
                new PensumCurso(5, 5, pensum2014, new Curso(23, "EMPRENDEDORES DE NEGOCIOS", sistemas)),
                new PensumCurso(5, 5, pensum2014, new Curso(24, "ELECTRONICA ANALOGICA", sistemas)),
                new PensumCurso(5, 5, pensum2014, new Curso(25, "ESTADISTICA II", sistemas)),

                new PensumCurso(6, 5, pensum2014, new Curso(26, "INVESTIGACION DE OPERACIONES", sistemas)),
                new PensumCurso(6, 5, pensum2014, new Curso(27, "BASES DE DATOS I", sistemas)),
                new PensumCurso(6, 5, pensum2014, new Curso(28, "AUTOMATAS Y LENGUAJES FORMALES", sistemas)),
                new PensumCurso(6, 5, pensum2014, new Curso(29, "SISTEMAS OPERATIVOS I", sistemas)),
                new PensumCurso(6, 5, pensum2014, new Curso(30, "ELECTRONICA DIGITAL", sistemas)),

                new PensumCurso(7, 5, pensum2014, new Curso(31, "BASES DE DATOS II", sistemas)),
                new PensumCurso(7, 5, pensum2014, new Curso(32, "ANALISIS DE SISTEMAS I", sistemas)),
                new PensumCurso(7, 5, pensum2014, new Curso(33, "SISTEMAS OPERATIVOS II", sistemas)),
                new PensumCurso(7, 5, pensum2014, new Curso(34, "ARQUITECTURA DE COMPUTADORAS I", sistemas)),
                new PensumCurso(7, 5, pensum2014, new Curso(35, "COMPILADORES", sistemas)),

                new PensumCurso(8, 5, pensum2014, new Curso(36, "DESARROLLO WEB", sistemas)),
                new PensumCurso(8, 5, pensum2014, new Curso(37, "ANALISIS DE SISTEMAS II", sistemas)),
                new PensumCurso(8, 5, pensum2014, new Curso(38, "REDES DE COMPUTADORAS I", sistemas)),
                new PensumCurso(8, 4, pensum2014, new Curso(39, "ETICA PROFESIONAL", sistemas)),
                new PensumCurso(8, 5, pensum2014, new Curso(40, "ARQUITECTURA DE COMPUTADORAS II", sistemas)),

                new PensumCurso(9, 5, pensum2014, new Curso(41, "ADMINISTRACION DE TECNOLOGIAS DE INFORMACION", sistemas)),
                new PensumCurso(9, 5, pensum2014, new Curso(42, "INGENIERIA DE SOFTWARE", sistemas)),
                new PensumCurso(9, 6, pensum2014, new Curso(43, "PROYECTO DE GRADUACION I", sistemas)),
                new PensumCurso(9, 5, pensum2014, new Curso(44, "REDES DE COMPUTADORAS II", sistemas)),
                new PensumCurso(9, 5, pensum2014, new Curso(45, "INTELIGENCIA ARTIFICIAL", sistemas)),

                new PensumCurso(10, 5, pensum2014, new Curso(46, "TELECOMUNICACIONES", sistemas)),
                new PensumCurso(10, 6, pensum2014, new Curso(47, "SEMINARIOS DE TECNOLOGIAS DE INFORMACION", sistemas)),
                new PensumCurso(10, 5, pensum2014, new Curso(48, "ASEGURAMIENTO DE LA CALIDAD DEL SOFTWARE", sistemas)),
                new PensumCurso(10, 6, pensum2014, new Curso(49, "PROYECTO DE GRADUACION II", sistemas)),
                new PensumCurso(10, 5, pensum2014, new Curso(50, "SEGURIDAD Y AUDITORIA DE SISTEMAS", sistemas)),
            };

            foreach (var pc in pensumCursos)
            {
                db.Cursos.Add(pc.Curso);
                db.PensumCursos.Add(pc);
            }

            await db.SaveChangesAsync();
        }