Example #1
0
        private async Task <IReadOnlyCollection <TemplateDropdownModel> > LoadTemplates()
        {
            var dropdownQuery = new TemplateDropdownQuery(User, Core.Data.Constants.TemplateType.LessonPlan);
            var templates     = await Mediator.Send(dropdownQuery);

            return(templates);
        }
Example #2
0
        protected override async Task <IReadOnlyCollection <TemplateDropdownModel> > Process(TemplateDropdownQuery request, CancellationToken cancellationToken)
        {
            var tenantId = _userClaimManager.GetRequiredTenantId(request.Principal);

            var query = DataContext.Templates
                        .AsNoTracking()
                        .Where(q => q.TenantId == tenantId);

            if (request.TemplateType.HasValue())
            {
                query = query.Where(q => q.TemplateType == request.TemplateType);
            }

            var result = await query
                         .OrderBy(q => q.Name)
                         .ProjectTo <TemplateDropdownModel>(Mapper.ConfigurationProvider)
                         .ToListAsync(cancellationToken);

            return(result);
        }