internal async Task <TTDTOOut> UpdateTimeTibleAsync(Guid id, TTDTOOut tTDTOOut)
        {
            var timetableDB = await _context.Timetable.Where(c => c.id == id)
                              .Include(c => c.refLectural)
                              .Include(C => C.LessonDB)
                              .Include(c => c.GroupDB)
                              .Include(c => c.DisciplineDB)
                              .FirstOrDefaultAsync();

            _context.Entry(timetableDB).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();

                return(tTDTOOut);
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!TimetableDBExists(id))
                {
                    return(null);
                }
                else
                {
                    throw;
                }
            }
        }
Example #2
0
 public TimetableDB(TTDTOOut tTDTOOut)
 {
     this.numberOfWeek       = tTDTOOut.numberOfWeek;
     this.dayOfWeek          = tTDTOOut.dayOfWeek;
     this.numbewrOfDayInWeek = tTDTOOut.numbewrOfDayInWeek;
     this.nameOfDiscipline   = tTDTOOut.nameOfDiscipline;
     this.Lectural           = tTDTOOut.Lectural;
     this.date           = tTDTOOut.date;
     this.auditore       = tTDTOOut.auditore;
     numberOfLessonInDay = tTDTOOut.numberOfLessonInDay;
 }
        public async Task <ActionResult <TTDTOOut> > PostTimetableDB(TTDTOOut tTDTOOut)
        {
            var t = await _timetableService.AddTimetableAsync(tTDTOOut);

            if (t != null)
            {
                return(CreatedAtAction("GetTimetableDB", new { id = t.id }, t));
            }
            else
            {
                return(NoContent());
            }
        }
        internal async Task <TTDTOOut> GetAllTimetableByIdAsync(Guid id)
        {
            var timetable = await _context.Timetable.FindAsync(id);


            if (timetable != null)
            {
                TTDTOOut timetableOUT = new TTDTOOut(timetable);

                return(timetableOUT);
            }

            return(null);
        }
        internal async Task <TTDTOOut> DeleteTimetableAsync(Guid id)
        {
            var timetableDB = await _context.Timetable.FindAsync(id);

            if (timetableDB != null)
            {
                _context.Timetable.Remove(timetableDB);
                await _context.SaveChangesAsync();

                TTDTOOut tTDTOOut = new TTDTOOut(timetableDB);
                return(tTDTOOut);
            }

            return(null);
        }
        public async Task <IActionResult> PutTimetableDB(Guid id, TTDTOOut tTDTOOut)
        {
            if (id != tTDTOOut.id)
            {
                return(BadRequest());
            }

            var t = await _timetableService.UpdateTimeTibleAsync(id, tTDTOOut);

            if (t != null)
            {
                return(CreatedAtAction("GetTimetableDB", new { id = t.id }, t));
            }

            return(NoContent());
        }
        internal async Task <TTDTOOut> AddTimetableAsync(TTDTOOut tTDTOOut)
        {
            TimetableDB timetableDB = new TimetableDB(tTDTOOut);

            timetableDB.GroupDB = await _context.Group.Where(c => c.numberOfGroup == tTDTOOut.numberOfGroup).FirstOrDefaultAsync();

            timetableDB.LessonDB = await _context.Lesson.Where(c => c.id == tTDTOOut.lessonId).FirstOrDefaultAsync();

            timetableDB.DisciplineDB = await _context.Discipline.Where(c => c.name == tTDTOOut.nameOfDiscipline).FirstOrDefaultAsync();

            timetableDB.refLectural = await _context.Lectural.Where(c => c.lastName == tTDTOOut.Lectural).FirstOrDefaultAsync();

            timetableDB.auditore         = tTDTOOut.auditore;
            timetableDB.date             = tTDTOOut.date;
            timetableDB.dayOfWeek        = tTDTOOut.dayOfWeek;
            timetableDB.Lectural         = tTDTOOut.Lectural;
            timetableDB.nameOfDiscipline = tTDTOOut.nameOfDiscipline;
            timetableDB.numberOfGroup    = tTDTOOut.numberOfGroup;

            timetableDB.numberOfLesson = tTDTOOut.numberOfLesson;
            timetableDB.typeOfLesson   = tTDTOOut.typeOfLesson;


            try
            {
                _context.Timetable.Add(timetableDB);

                await _context.SaveChangesAsync();

                return(tTDTOOut);
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!TimetableDBExists(tTDTOOut.id))
                {
                    return(null);
                }
                else
                {
                    throw;
                }
            }
        }