Пример #1
0
        public void SavePercentage(int userId, PercentageGraphData percentageData)
        {
            AuthorizationHelper.ValidateLecturerAccess(Context, userId);

            if (Context.CoursePercentagesGraphs.Any(x => x.Name == percentageData.Name))
            {
                throw new ApplicationException("Этап с таким названием уже есть!");
            }

            CoursePercentagesGraph percentage;

            if (percentageData.Id.HasValue)
            {
                percentage = Context.CoursePercentagesGraphs
                             .Include(x => x.CoursePercentagesGraphToGroups)
                             .Single(x => x.Id == percentageData.Id);
            }
            else
            {
                percentage = new CoursePercentagesGraph();
                Context.CoursePercentagesGraphs.Add(percentage);
                percentage.SubjectId = percentageData.SubjectId;
            }

            percentage.LecturerId = userId;
            percentage.Name       = percentageData.Name;
            percentage.Percentage = percentageData.Percentage;
            percentage.Date       = percentageData.Date;
            //percentage.SubjectId = percentageData.SubjectId;

            Context.SaveChanges();
        }
Пример #2
0
        private HttpResponseMessage SavePercentage(PercentageGraphData percentage)
        {
            if (!ModelState.IsValid)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState));
            }

            PercentageService.SavePercentage(WebSecurity.CurrentUserId, percentage);
            return(new HttpResponseMessage(HttpStatusCode.OK));
        }
Пример #3
0
        private IActionResult SavePercentage(PercentageGraphData percentage)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            PercentageService.SavePercentage(/*todo #auth WebSecurity.CurrentUserId*/ 2, percentage);
            return(Ok());
        }
Пример #4
0
        public void SavePercentage(int userId, PercentageGraphData percentageData)
        {
            AuthorizationHelper.ValidateLecturerAccess(Context, userId);

            if (Context.DiplomPercentagesGraphs.Any(x => x.Name == percentageData.Name))
            {
                throw new ApplicationException("Этап с таким названием уже есть!");
            }

            DiplomPercentagesGraph percentage;

            if (percentageData.Id.HasValue)
            {
                percentage = Context.DiplomPercentagesGraphs
                             .Include(x => x.DiplomPercentagesGraphToGroups)
                             .Single(x => x.Id == percentageData.Id);
            }
            else
            {
                percentage = new DiplomPercentagesGraph();
                Context.DiplomPercentagesGraphs.Add(percentage);
            }

            //            percentage.DiplomPercentagesGraphToGroups = percentage.DiplomPercentagesGraphToGroups ??
            //                                                        new Collection<DiplomPercentagesGraphToGroup>();

            //            var currentGroups = percentage.DiplomPercentagesGraphToGroups.ToList();
            //            var newGroups = percentageData.SelectedGroupsIds.Select(x => new DiplomPercentagesGraphToGroup
            //            {
            //                GroupId = x,
            //                DiplomPercentagesGraphId = percentage.Id
            //            }).ToList();
            //
            //            var groupsToAdd = newGroups.Except(currentGroups, grp => grp.GroupId).ToList();
            //            var groupsToDelete = currentGroups.Except(newGroups, grp => grp.GroupId).ToList();
            //
            //            groupsToAdd.ForEach(grp => percentage.DiplomPercentagesGraphToGroups.Add(grp));
            //            groupsToDelete.ForEach(grp => Context.DiplomPercentagesGraphToGroup.Remove(grp));
            percentage.LecturerId = userId;
            percentage.Name       = percentageData.Name;
            percentage.Percentage = percentageData.Percentage;
            percentage.Date       = percentageData.Date;

            Context.SaveChanges();
        }
Пример #5
0
 public HttpResponseMessage Put([FromBody] PercentageGraphData percentage)
 {
     return(SavePercentage(percentage));
 }
Пример #6
0
 public IActionResult Put([FromBody] PercentageGraphData percentage)
 {
     return(SavePercentage(percentage));
 }