public IActionResult AddSubjects([FromHeader] string Authorization, [FromHeader] string Role, [FromBody] int[] subjectIds)
 {
     if (CheckToken(Authorization) == true && CheckPermission(Role) == true)
     {
         var clazzId = subjectIds.Last();
         var clazz   = _context.Clazz.Find(clazzId);
         for (var i = 0; i < subjectIds.Count() - 1; i++)
         {
             var existedClazzSubject = _context.ClazzSubject.Find(clazzId, subjectIds[i]);
             if (existedClazzSubject != null)
             {
                 continue;
             }
             var          subject      = _context.Subject.Find(subjectIds[i]);
             ClazzSubject clazzSubject = new ClazzSubject
             {
                 Clazz   = clazz,
                 Subject = subject
             };
             _context.Add(clazzSubject);
         }
         _context.SaveChanges();
         return(new JsonResult(subjectIds));
     }
     return(Unauthorized());
 }
Esempio n. 2
0
        public async Task <IActionResult> PutClazzSubject([FromRoute] int id, [FromBody] ClazzSubject clazzSubject)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != clazzSubject.Id)
            {
                return(BadRequest());
            }

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

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!ClazzSubjectExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
Esempio n. 3
0
        public async Task <IActionResult> PostClazzSubject([FromBody] ClazzSubject clazzSubject)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            _context.ClazzSubject.Add(clazzSubject);
            await _context.SaveChangesAsync();

            return(CreatedAtAction("GetClazzSubject", new { id = clazzSubject.Id }, clazzSubject));
        }
 public IActionResult DeleteSubjectFromClazz([FromHeader] string Authorization, [FromHeader] string Role, [FromBody] ClazzSubject clazzSubject)
 {
     if (CheckToken(Authorization) == true && CheckPermission(Role) == true)
     {
         var clazzSubjects = _context.ClazzSubject.Find(clazzSubject.ClazzId, clazzSubject.SubjectId);
         if (clazzSubjects != null)
         {
             _context.Remove(clazzSubjects);
             _context.SaveChanges();
             return(Ok());
         }
         return(NoContent());
     }
     return(Unauthorized());
 }