예제 #1
0
 public async Task <IActionResult> Edit([FromBody] UpdateAndCreateGroupVM model)
 {
     if (await _groupService.EditGroup(model))
     {
         return(Ok());
     }
     return(Ok());
 }
예제 #2
0
        public async Task <IActionResult> Create([FromBody] UpdateAndCreateGroupVM model)
        {
            if (await _groupService.CreateGroup(model))
            {
                return(Ok());
            }
            var invalid = new Dictionary <string, string>
            {
                { "group", "Дана група вже створена" }
            };

            return(Ok(invalid));
        }
예제 #3
0
        public async Task <bool> EditGroup(UpdateAndCreateGroupVM model)
        {
            var group = _context.Groups.Where((item) => item.Id == model.Id).FirstOrDefault();

            if (group != null)
            {
                if (group.TeacherId != null)
                {
                    var teacherOld = _context.Teachers.FirstOrDefault((item) => item.Id == group.TeacherId);
                    if (teacherOld != null)
                    {
                        teacherOld.GroupId = null;
                    }
                }

                var teacher = _context.Teachers.FirstOrDefault((item) => item.Id == model.TeacherId);
                if (teacher != null)
                {
                    teacher.GroupId = group.Id;
                }

                var oldStudents = _context.Students.Where((item) => item.GroupId == group.Id).ToList();
                foreach (var student in oldStudents)
                {
                    student.GroupId = null;
                }

                foreach (var id in model.StudentsId)
                {
                    var student = _context.Students.SingleOrDefault((item) => item.Id == id);
                    if (student != null)
                    {
                        student.GroupId = group.Id;
                    }
                }
                group.Name      = model.Name;
                group.TeacherId = model.TeacherId;
                await _context.SaveChangesAsync();

                return(true);
            }
            return(false);
        }
예제 #4
0
        public async Task <bool> CreateGroup(UpdateAndCreateGroupVM model)
        {
            var group = _context.Groups.Where((item) => item.Name == model.Name).FirstOrDefault();

            if (group is null)
            {
                group = new Group
                {
                    Name      = model.Name,
                    TeacherId = model.TeacherId,
                    SchoolId  = model.SchoolId
                };

                _context.Groups.Add(group);
                await _context.SaveChangesAsync();

                var teacher = _context.Teachers.FirstOrDefault((item) => item.Id == model.TeacherId);
                if (teacher != null)
                {
                    teacher.GroupId = group.Id;
                    await _context.SaveChangesAsync();
                }
                foreach (var id in model.StudentsId)
                {
                    var student = _context.Students.SingleOrDefault((item) => item.Id == id);
                    if (student != null)
                    {
                        student.GroupId = group.Id;
                    }
                }
                await _context.SaveChangesAsync();

                return(true);
            }
            return(false);
        }