예제 #1
0
        /// <summary>
        /// Služi da se, pri otvaranju popup-a napomene za određenog učenika na određenom času,
        /// u tekstu napomene ispiše prethodno unet tekst napomene ukoliko ta napomena već
        /// postoji u bazi. Ukoliko ne postoji, prostor za unos teksta napomene će biti prazan i
        /// pri čuvanju unetog, kreira se nova napomena u bazi. U suprotnom bi se samo
        /// uradio update napomene
        /// </summary>
        /// <param name="ucenikId"></param>
        /// <param name="casId"></param>
        /// <returns></returns>
        private JsonResult VratiNapomenu(int ucenikId, int casId)
        {
            var napomena = _context.Napomene
                           .Where(n => n.UcenikId == ucenikId)
                           .SingleOrDefault(n => n.CasId == casId);

            if (napomena != null)
            {
                //Koristi se klasa DTONapomena
                var dtoNapomena = new DTONapomena
                {
                    NapomenaId = napomena.NapomenaId,
                    Opis       = napomena.Opis,
                    ProfesorId = napomena.ProfesorId,
                    UcenikId   = napomena.UcenikId,
                    CasId      = napomena.CasId
                };

                return(Json(dtoNapomena, JsonRequestBehavior.AllowGet));
            }
            else
            {
                return(Json(new DTONapomena(), JsonRequestBehavior.AllowGet));
            }
        }
예제 #2
0
        private void DodajIliIzmeniNapomenu(DTONapomena dtoNapomena)
        {
            if (dtoNapomena != null)
            {
                var napomena = new Napomena
                {
                    NapomenaId = dtoNapomena.NapomenaId,
                    Opis       = dtoNapomena.Opis,
                    UcenikId   = dtoNapomena.UcenikId,
                    ProfesorId = dtoNapomena.ProfesorId,
                    CasId      = dtoNapomena.CasId
                };

                _context.Napomene.AddOrUpdate(napomena);
                _context.SaveChanges();
            }
        }
예제 #3
0
        public void NapomeneController_DodajIliIzmeniNapomenu()
        {
            var dtoNapomena = new DTONapomena()
            {
                NapomenaId = 1, Opis = "Napomena 1", CasId = 1, ProfesorId = 1, UcenikId = 2
            };

            var mockContext                = new Mock <ApplicationDbContext>();
            var mockSetNapomene            = new Mock <MockableDbSet <Napomena> >();
            DbSet <Napomena> dbSetNapomene = mockSetNapomene.Object;

            mockContext.Setup(x => x.Napomene).Returns(dbSetNapomene);
            var controller = new NapomeneController(mockContext.Object);


            controller.DodajIliIzmeniNapomenu(dtoNapomena);

            mockSetNapomene.Verify(x => x.AddOrUpdate(It.IsAny <Napomena>()), Times.AtLeastOnce());
            mockContext.Verify(x => x.SaveChanges(), Times.AtLeastOnce());
        }