Beispiel #1
0
        public ProfesorView()
        {
            InitializeComponent();
            ProfesorViewModel modelo = new ProfesorViewModel(DialogCoordinator.Instance);

            this.DataContext = modelo;
            this.tFechaNacimiento.SelectedDate = DateTime.Today;
        }
 public ProfesorPage()
 {
     InitializeComponent();
     btnMostrar.IsVisible = false;
     pr = new ProfesorViewModel(null, Navigation);
     this.BindingContext = pr;
     btn.Text            = "Agregar";
 }
Beispiel #3
0
        public void EditProfesor(ProfesorViewModel profesor)
        {
            Profesori oldProfesor = _profesoriServices.Get(profesor.Id);

            oldProfesor.Nume        = profesor.Nume;
            oldProfesor.Prenume     = profesor.Prenume;
            oldProfesor.FacultateId = profesor.FacultateId;
            _profesoriServices.Update(oldProfesor, oldProfesor.Id);
        }
Beispiel #4
0
        public void ProfesoriController_Sacuvaj()
        {
            var pred = new List <Predmet>()
            {
                new Predmet {
                    PredmetID = 1, NazivPredmeta = "Mata"
                },
                new Predmet {
                    PredmetID = 2, NazivPredmeta = "Fizika"
                }
            }.AsQueryable();



            Profesor prof = new Profesor()
            {
                ProfesorID        = 1,
                Ime               = "Marko",
                Prezime           = "Markovic",
                Telefon           = "064333333",
                Adresa            = "Neka Adresa",
                Vanredan          = true,
                RazredniStaresina = true,
                Predmeti          = pred.ToList()
            };

            ProfesorViewModel pmv = new ProfesorViewModel()
            {
                Profesor    = prof,
                PredmetiIDs = pred.Select(p => p.PredmetID).ToList()
            };


            var mockSet     = new Mock <DbSet <Profesor> >();
            var mockContext = new Mock <ApplicationDbContext>();

            mockContext.Setup(p => p.Profesori).Returns(mockSet.Object);


            var mockSetPredmeti = new Mock <DbSet <Predmet> >();

            mockSetPredmeti.As <IQueryable <Predmet> >().Setup(m => m.Provider).Returns(pred.Provider);
            mockSetPredmeti.As <IQueryable <Predmet> >().Setup(m => m.Expression).Returns(pred.Expression);
            mockSetPredmeti.As <IQueryable <Predmet> >().Setup(m => m.ElementType).Returns(pred.ElementType);
            mockSetPredmeti.As <IQueryable <Predmet> >().Setup(m => m.GetEnumerator()).Returns(pred.GetEnumerator());

            mockContext.Setup(p => p.Predmeti).Returns(mockSetPredmeti.Object);

            var service = new ProfesoriController(mockContext.Object);

            service.Sacuvaj(pmv);
            mockSet.Verify(m => m.Add(It.IsAny <Profesor>()), Times.Once());
            mockContext.Verify(m => m.SaveChanges(), Times.Once());
        }
 public ProfesorPage(Profesor profe)
 {
     try
     {
         InitializeComponent();
         btnMostrar.IsVisible = true;
         btn.Text             = "Actualizar";
         pf = profe;
         pr = new ProfesorViewModel(profe, Navigation);
         this.BindingContext = pr;
     }
     catch (Exception ex)
     {
     }
 }
Beispiel #6
0
        public ActionResult Create(ProfesorViewModel model)
        {
            try
            {
                using (LibroDBEntities db = new LibroDBEntities())
                {
                    UsuarioDB oUsuarioDB = new UsuarioDB();
                    oUsuarioDB.contraseña = model.contraseña;
                    oUsuarioDB.correo     = model.correo;
                    oUsuarioDB.idRol      = model.idRol;


                    db.UsuarioDB.Add(oUsuarioDB);
                    db.SaveChanges();


                    ProfesorDB oProfesorDB = new ProfesorDB();

                    oProfesorDB.rutProfesor     = model.rutProfesor;
                    oProfesorDB.nombreProfesor  = model.nombre;
                    oProfesorDB.apellidoPaterno = model.apellidoPaterno;
                    oProfesorDB.apellidoMaterno = model.apellidoMaterno;
                    oProfesorDB.idCurso         = model.idcurso;

                    oProfesorDB.idUser = oUsuarioDB.idUser;

                    db.ProfesorDB.Add(oProfesorDB);



                    db.SaveChanges();

                    ViewBag.idcurso = new SelectList(db.CursosDB, "idCurso", "cursos", model.idcurso).ToList();
                    ViewBag.idRol   = new SelectList(db.RolDB, "idRol", "nombreRol", model.idRol).ToList();
                }



                ViewBag.Message = "Registro insertado";
                return(View());
            }
            catch (Exception ex)
            {
                return(View());
            }
        }
Beispiel #7
0
        public async Task <ActionResult> Sacuvaj(ProfesorViewModel pvm, HttpPostedFileBase upload)
        {
            if (ModelState.IsValid)
            {
                Profesor profesor = pvm.Profesor;
                foreach (var pr in pvm.PredmetiIDs)
                {
                    Predmet predmet = _context.Predmeti.SingleOrDefault(p => p.PredmetID == pr);
                    profesor.Predmeti.Add(predmet);
                }

                profesor.RedniBroj = GenerisiRedniBrojProfesora();

                string ime     = VratiImeProfesoraSaPrvimVelikimSlovom(profesor.Ime);
                string prezime = VratiPrezimeProfesoraSaPrvimVelikimSlovom(profesor.Prezime);

                string username = profesor.Ime.ToLower().Replace(" ", string.Empty) + "." + profesor.Prezime.ToLower().Replace(" ", string.Empty) + profesor.RedniBroj;

                await RegistracijaProfesora(username, ime, prezime, profesor.RedniBroj);

                var id = _context.Users.SingleOrDefault(x => x.UserName == username).Id;

                profesor.UserProfesorId = id;

                //Dodavanje fotografije
                if (upload != null && upload.ContentLength > 0)
                {
                    using (var reader = new System.IO.BinaryReader(upload.InputStream))
                    {
                        profesor.Fotografija = reader.ReadBytes(upload.ContentLength);
                    }
                }

                _context.Profesori.Add(profesor);
                _context.SaveChanges();


                return(RedirectToAction("Index", "Profesori", new { dodatProfesor = true }));
            }
            else
            {
                return(RedirectToAction("Dodaj", new { greska = true }));
            }
        }
Beispiel #8
0
        public ActionResult Dodaj(bool?greska)
        {
            if (greska != null)
            {
                var modelSaGreskom = new ProfesorViewModel
                {
                    Predmeti = _context.Predmeti.ToList(),
                    Polovi   = _context.Polovi.ToList(),
                    Greska   = (bool)greska
                };
                return(View("Dodaj", modelSaGreskom));
            }
            var model = new ProfesorViewModel
            {
                Predmeti = _context.Predmeti.ToList(),
                Polovi   = _context.Polovi.ToList()
            };

            return(View("Dodaj", model));
        }
Beispiel #9
0
        public async Task <IActionResult> PutProfesor([FromBody] ProfesorViewModel profesorDetails)
        {
            _logger.LogInformation("Actualizando los datos del profesor.");

            var profesor = Mapper.Map <Profesor>(profesorDetails);

            if (!_repository.Profesores.HasDniUnique(profesor))
            {
                ModelState.AddModelError("Dni", "Dni no disponible.");
            }

            if (ModelState.IsValid)
            {
                _repository.Profesores.Update(profesor);
                if (await _repository.Complete())
                {
                    return(Created($"api/profesores/{profesorDetails.Id}", Mapper.Map <ProfesorViewModel>(profesor)));
                }
            }

            _logger.LogError("No se pudo actualizar los datos del profesor.");
            return(BadRequest(ModelState));
        }
Beispiel #10
0
        public ActionResult Izmeni(int?id, bool?greska)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }

            Profesor profesor = _context.Profesori.Find(id);

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

            if (greska != null)
            {
                ProfesorViewModel profesorVMGreska = new ProfesorViewModel()
                {
                    Profesor = profesor,
                    Polovi   = _context.Polovi.ToList(),
                    Predmeti = _context.Predmeti.ToList(),
                    Greska   = (bool)greska
                };

                return(View(profesorVMGreska));
            }

            ProfesorViewModel profesorVM = new ProfesorViewModel()
            {
                Profesor = profesor,
                Polovi   = _context.Polovi.ToList(),
                Predmeti = _context.Predmeti.ToList()
            };

            return(View(profesorVM));
        }
Beispiel #11
0
        public ActionResult Izmeni(ProfesorViewModel profesorVM, HttpPostedFileBase upload)
        {
            if (ModelState.IsValid)
            {
                if (upload != null && upload.ContentLength > 0)
                {
                    using (var reader = new System.IO.BinaryReader(upload.InputStream))
                    {
                        profesorVM.Profesor.Fotografija = reader.ReadBytes(upload.ContentLength);
                    }
                }

                Profesor profesor = new Profesor()
                {
                    ProfesorID        = profesorVM.Profesor.ProfesorID,
                    Licenca           = profesorVM.Profesor.Licenca,
                    Zvanje            = profesorVM.Profesor.Zvanje,
                    Ime               = profesorVM.Profesor.Ime,
                    Prezime           = profesorVM.Profesor.Prezime,
                    Telefon           = profesorVM.Profesor.Telefon,
                    Adresa            = profesorVM.Profesor.Adresa,
                    Vanredan          = profesorVM.Profesor.Vanredan,
                    RazredniStaresina = profesorVM.Profesor.RazredniStaresina,
                    RedniBroj         = profesorVM.Profesor.RedniBroj,
                    PromenaLozinke    = profesorVM.Profesor.PromenaLozinke,
                    UserProfesorId    = profesorVM.Profesor.UserProfesorId,
                    PolId             = profesorVM.Profesor.PolId,
                    Fotografija       = profesorVM.Profesor.Fotografija
                };

                try
                {
                    _context.Profesori.AddOrUpdate(profesor);
                    _context.SaveChanges();
                }
                catch (Exception ex)
                {
                    System.Diagnostics.Debug.WriteLine(ex.Message);
                }


                //promenljiva koja je potrebna kako bismo profesoru koji se menja mogli da obrisemo sve
                //predmete koje predaje, kako bismo kasnije dodali sve nove koji su prosledjeni sa forme za izmenu
                var profesor1 = _context.Profesori
                                .SingleOrDefault(p => p.ProfesorID == profesorVM.Profesor.ProfesorID);

                //brisanje svih predmeta profesora koje on predaje
                foreach (var predmet in profesor1.Predmeti.ToList())
                {
                    profesor1.Predmeti.Remove(predmet);
                    _context.SaveChanges();
                }

                //dodavanje svih predmeta profesoru koje on predaje
                foreach (var predmetId in profesorVM.PredmetiIDs)
                {
                    Predmet predmet = _context.Predmeti
                                      .SingleOrDefault(p => p.PredmetID == predmetId);

                    profesor1.Predmeti.Add(predmet);
                    _context.SaveChanges();
                }

                return(RedirectToAction("Index", new { izmenjenProfesor = true }));
            }
            else
            {
                return(RedirectToAction("Izmeni", new { id = profesorVM.Profesor.ProfesorID, greska = true }));
            }
        }