public void SubscribeStudent(AddSubscriptionDTO addSubscriptionDto) { var subscription = GetSubscription(addSubscriptionDto.UserId); var subscriptionSections = new List <SubscriptionSection>(); foreach (var vSection in addSubscriptionDto.Sections) { var section = _context.Sections.ToList().First(x => x.Id == vSection); var subscriptionSection = new SubscriptionSection(); subscriptionSection.SubscriptionId = subscription.Id; subscriptionSection.SectionId = vSection; subscriptionSection.StatusId = 3; subscriptionSection.Section = section; subscriptionSection.CreatedAt = DateTime.Now; if (subscriptionSections.Any(x => x.Section.SubjectId == section.SubjectId)) { throw new Exception("No puede seleccion dos secciones de la misma materia"); } subscriptionSections.Add(subscriptionSection); } _context.SubscriptionSections.AddRange(subscriptionSections); _context.SaveChanges(); }
public IActionResult AddSubscription([FromBody] AddSubscriptionDTO addSubscriptionDto) { _selectionService.SubscribeStudent(addSubscriptionDto); return(Ok()); }
public Subscription(AddSubscriptionDTO addSubscriptionDto, string endpointIdentifier) { Media = new Media(addSubscriptionDto.MediaName); NotificationEndpoint = new NotificationEndpoint(endpointIdentifier); }