Exemple #1
0
        public async Task <IActionResult> Add(Guid checklistId, [FromBody] ChecklistItemViewModel value)
        {
            if (checklistId.IsDefault())
            {
                return(BadRequest("Unable to validate payload"));
            }

            if (ModelState.IsValid)
            {
                return(Ok(await _checklistItemDataProvider.AddAsync(checklistId, value)));
            }

            return(BadRequest(new { Errors = ModelState.ToErrorCollection() }));
        }
        public async Task <ChecklistItemViewModel> AddAsync(Guid checklistId, ChecklistItemViewModel value)
        {
            var entity = new ChecklistItemInstance
            {
                ChecklistInstanceId = checklistId,
                Created             = DateTime.Now,
                DisplayText         = value.DisplayText,
                Template            = value.Template
            };

            await Context.ChecklistItemInstances.AddAsync(entity);

            await Context.SaveChangesAsync();

            return(new ChecklistItemViewModel(entity));
        }
Exemple #3
0
        public ChecklistViewModel(FlightEvent flightEvent, bool connectedToDiscord)
        {
            Name          = flightEvent.Name;
            StartDateTime = flightEvent.StartDateTime;
            EndDateTime   = flightEvent.EndDateTime;

            if (flightEvent.ChecklistItems != null)
            {
                foreach (var item in flightEvent.ChecklistItems)
                {
                    var itemVM = new ChecklistItemViewModel(item)
                    {
                        Title = item.Title,
                        Links = item.Links
                    };
                    switch (item.Type)
                    {
                    case FlightEventChecklistItemType.Client:
                        switch (item.SubType)
                        {
                        case FlightEventChecklistItemSubType.ConnectToDiscord:
                            itemVM.IsChecked = connectedToDiscord;
                            itemVM.IsEnabled = false;
                            itemVM.Hint      = "To connect Flight Events to Discord:\n- Open Discord tab\n- Click Connect\n- Login to your Discord account\n- Authorize Flight Events bot to get your Discord information\n- Copy the Code back to this client\n- Press Confirm";
                            break;
                        }
                        Items.Add(itemVM);
                        break;

                    default:
                        Items.Add(itemVM);
                        break;
                    }
                }
            }
        }
Exemple #4
0
        public async Task <IActionResult> Update(Guid checklistId, Guid checklistItemId, [FromBody] ChecklistItemViewModel value)
        {
            if (checklistId.IsDefault() || checklistItemId.IsDefault())
            {
                return(BadRequest("Unable to validate payload"));
            }

            if (ModelState.IsValid)
            {
                await _checklistItemDataProvider.UpdateAsync(User.GetPortfolioId(), checklistId, checklistItemId, value);

                return(Ok());
            }

            return(BadRequest(new { Errors = ModelState.ToErrorCollection() }));
        }
        public async Task UpdateAsync(Guid portfolioId, Guid checklistId, Guid checklistItemId, ChecklistItemViewModel viewModel)
        {
            var entity = await(from checklistItem in Context.ChecklistItemInstances
                               join checklist in Context.ChecklistInstances on checklistItem.ChecklistInstanceId equals checklist.Id
                               where checklist.PortfolioId == portfolioId && checklist.Id == checklistId && checklistItem.Id == checklistItemId
                               select checklistItem)
                         .SingleAsync();

            entity.DisplayText = viewModel.DisplayText;
            entity.Template    = viewModel.Template;

            await Context.SaveChangesAsync();
        }