Пример #1
0
        public IActionResult Index(string search = "")
        {
            List <UnitListViewModel> model = new List <UnitListViewModel>();
            var dbData = _unitOfWork.Repository <Unit>().GetAllInclude(x => x.Products);

            if (!String.IsNullOrEmpty(search))
            {
                dbData = dbData.Where(x => x.Name.ToLower().Contains(search.ToLower())).ToList();
            }

            foreach (var b in dbData)
            {
                UnitListViewModel unit = new UnitListViewModel
                {
                    Id            = b.Id,
                    Name          = b.Name,
                    Description   = b.Description,
                    TotalProducts = b.Products.Count
                };

                model.Add(unit);
            }


            return(View(model));
        }
Пример #2
0
        // Unit list page.
        public IActionResult Index()
        {
            // Display all units.
            UnitListViewModel model = new UnitListViewModel
            {
                Title = "Units",
                Units = _unitHelper.GetAllUnits()
            };

            return(View(model));
        }
Пример #3
0
        public MainWindowViewModel(TurnControlViewModel turnControlViewModel,
                                   UnitListViewModel unitListViewModel,
                                   SelectedUnitViewModel upperSelectedUnitViewModel,
                                   SelectedUnitViewModel lowerSelectedUnitViewModel,
                                   LogoPanelViewModel logoPanelViewModel)
        {
            _turnControlViewModel       = turnControlViewModel;
            _unitListViewModel          = unitListViewModel;
            _upperSelectedUnitViewModel = upperSelectedUnitViewModel;
            _lowerSelectedUnitViewModel = lowerSelectedUnitViewModel;
            _logoPanelViewModel         = logoPanelViewModel;

            _upperSelectedUnitViewModel.Slot = SelectionSlot.FirstUnit;
            _lowerSelectedUnitViewModel.Slot = SelectionSlot.SecondUnit;
        }
Пример #4
0
    /*==========================================================================================================================
    | METHOD: INVOKE (ASYNC)
    \-------------------------------------------------------------------------------------------------------------------------*/
    /// <summary>
    ///   Provides the pagel-level navigation menu for the current page, which exposes one tier of navigation from the nearest
    ///   page group.
    /// </summary>
    public async Task<IViewComponentResult> InvokeAsync() {

      /*------------------------------------------------------------------------------------------------------------------------
      | Retrieve root topic
      \-----------------------------------------------------------------------------------------------------------------------*/
      var navigationRootTopic = GetNavigationRoot();

      /*------------------------------------------------------------------------------------------------------------------------
      | Construct view model
      \-----------------------------------------------------------------------------------------------------------------------*/
      var navigationViewModel = new UnitListViewModel() {
        NavigationRoot = await MapNavigationTopicViewModels(navigationRootTopic).ConfigureAwait(true),
        CurrentWebPath = CurrentTopic?.GetWebPath()?? HttpContext.Request.Path
      };

      /*------------------------------------------------------------------------------------------------------------------------
      | Set current status
      \-----------------------------------------------------------------------------------------------------------------------*/
      foreach (var trackedNavigationViewModel in navigationViewModel.NavigationRoot.Children) {
        trackedNavigationViewModel.IsVisited = IsComplete(trackedNavigationViewModel.Key);
      }

      /*------------------------------------------------------------------------------------------------------------------------
      | Write course cookie
      \-----------------------------------------------------------------------------------------------------------------------*/
      var isCourseNowComplete   = navigationViewModel.NavigationRoot.Children.All(t => t.IsVisited is true);
      var wasCourseComplete     = IsComplete(CurrentTopic.Key);

      if (isCourseNowComplete != wasCourseComplete) {
        HttpContext.Response.Cookies.Append(
          $"Status{CurrentTopic.Key}",
          isCourseNowComplete.ToString(),
          new Microsoft.AspNetCore.Http.CookieOptions() {
            Path                = CurrentTopic.Parent.GetWebPath(),
            Expires             = DateTime.Now.AddYears(20)
          }
        );
        navigationViewModel.TrackingEvents.Add(
          new TrackingEventViewModel("Courses", isCourseNowComplete? "EndCourse" : "StartCourse", CurrentTopic.Key)
        );
      }

      /*------------------------------------------------------------------------------------------------------------------------
      | Return the corresponding view
      \-----------------------------------------------------------------------------------------------------------------------*/
      return View(navigationViewModel);

    }
Пример #5
0
 // GET: Department
 public ActionResult Index()
 {
     try
     {
         var _units = _unit.GetAll();
         var ulvm   = new UnitListViewModel
         {
             Units = _units
         };
         return(View(ulvm));
     }
     catch (Exception ex)
     {
         //Log exception
         return(View(ex.Message, "Error"));
     }
 }
Пример #6
0
 public UnitListPage()
 {
     InitializeComponent();
     viewModel = BindingContext as UnitListViewModel;
 }
Пример #7
0
 public UnitGroupList()
 {
     InitializeComponent();
     this.Title = "OTIS";
     viewModel  = BindingContext as UnitListViewModel;
 }