/*==================================================================================================================================
        * Public Methods
        *=================================================================================================================================*/

        #region LIST
        //----------------------------------------------------------------------------------------------------------------------------------
        // LIST
        //----------------------------------------------------------------------------------------------------------------------------------
        public questStatus List(out SessionsListViewModel sessionsListViewModel)
        {
            // Initialize
            questStatus status = null;

            sessionsListViewModel = null;


            // Get query options from query string
            QueryOptions    queryOptions    = null;
            BaseListModeler baseListModeler = new BaseListModeler(this.HttpRequestBase, new UserSession());

            status = baseListModeler.ParsePagingOptions(this.HttpRequestBase, out queryOptions);
            if (!questStatusDef.IsSuccess(status))
            {
                return(status);
            }

            // Set up query options.
            // TEMPORARY: OPTIMIZE THIS
            List <SearchField> searchFieldList = new List <SearchField>();
            SearchOptions      searchOptions   = new SearchOptions();

            searchOptions.SearchFieldList = searchFieldList;
            queryOptions.SearchOptions    = searchOptions;


            // List
            status = List(queryOptions, out sessionsListViewModel);
            if (!questStatusDef.IsSuccess(status))
            {
                return(status);
            }
            return(new questStatus(Severity.Success));
        }
        public SessionsListView()
        {
            InitializeComponent();

            BindingContext = new SessionsListViewModel();

            sessionsList.ItemSelected += async(sender, e) =>
            {
                var feedback = e.SelectedItem as SessionFeedback;

                await Navigation.PushAsync(new SessionDetailView(new SessionDetailViewModel(feedback, Navigation)));
            };
        }
        public ActionResult Next(SessionsListViewModel usersListViewModel)
        {
            questStatus status = null;


            /*----------------------------------------------------------------------------------------------------------------------------------
            * Log Operation
            *---------------------------------------------------------------------------------------------------------------------------------*/
            status = LogOperation();
            if (!questStatusDef.IsSuccess(status))
            {
                status = new questStatus(Severity.Success);
                usersListViewModel.questStatus = status;
                return(Json(usersListViewModel, JsonRequestBehavior.AllowGet));
            }

            /*----------------------------------------------------------------------------------------------------------------------------------
            * Authorize
            *---------------------------------------------------------------------------------------------------------------------------------*/
            status = Authorize(usersListViewModel._ctx);
            if (!questStatusDef.IsSuccess(status))
            {
                status = new questStatus(Severity.Success);
                usersListViewModel.questStatus = status;
                return(Json(usersListViewModel, JsonRequestBehavior.AllowGet));
            }

            /*----------------------------------------------------------------------------------------------------------------------------------
            * Get list of items.
            *---------------------------------------------------------------------------------------------------------------------------------*/
            // TODO.
            SessionsListViewModel sessionsListViewModelNew = null;
            SessionsListModeler   usersListModeler         = new SessionsListModeler(this.Request, this.UserSession);

            status = usersListModeler.List(out sessionsListViewModelNew);
            if (!questStatusDef.IsSuccess(status))
            {
                status = new questStatus(Severity.Success);
                usersListViewModel.questStatus = status;
                return(Json(usersListViewModel, JsonRequestBehavior.AllowGet));
            }

            /*----------------------------------------------------------------------------------------------------------------------------------
            * Return view
            *---------------------------------------------------------------------------------------------------------------------------------*/
            status = new questStatus(Severity.Success);
            sessionsListViewModelNew.questStatus = status;
            return(Json(sessionsListViewModelNew, JsonRequestBehavior.AllowGet));
        }
Beispiel #4
0
        public ViewResult List()
        {
            SessionsListViewModel vm = new SessionsListViewModel()
            {
                LicsMax   = dvSettings.LicsMax,
                LicsCount = repo.LicCount
            };

            foreach (var sess in repo.SessionsWithoutExcluded)
            {
                var sessVM = new SessionViewModel(sess)
                {
                    UserName = repo.GetEmployeeDisplayString(sess.User.AccountName)
                };
                vm.Sessions.Add(sessVM);
            }
            ViewBag.Title = "Список сессий";
            return(View(vm));
        }
        public questStatus List(QueryOptions queryOptions, out SessionsListViewModel sessionsListViewModel)
        {
            // Initialize
            questStatus status = null;

            sessionsListViewModel = null;


            // List
            QueryResponse queryResponse = null;
            List <Quest.Functional.ASM.UserSession> userSessionList = null;
            UserSessionMgr userSessionMgr = new UserSessionMgr(this.UserSession);

            status = userSessionMgr.List(queryOptions, out userSessionList, out queryResponse);
            if (!questStatusDef.IsSuccess(status))
            {
                return(status);
            }

            // Sort
            userSessionList.Sort(delegate(Quest.Functional.ASM.UserSession i1, Quest.Functional.ASM.UserSession i2) { return(i1.Created.CompareTo(i2.Created)); });


            // Transfer model.
            // TODO: USE BaseListModeler to xfer queryOptions to QueryOptionsViewModel.
            sessionsListViewModel = new SessionsListViewModel(this.UserSession);
            QueryResponseViewModel queryResponseViewModel = null;

            status = TransferQueryResponse(queryResponse, out queryResponseViewModel);
            if (!questStatusDef.IsSuccess(status))
            {
                return(status);
            }
            sessionsListViewModel.QueryResponse = queryResponseViewModel;
            foreach (Quest.Functional.ASM.UserSession user in userSessionList)
            {
                SessionLineItemViewModel sessionLineItemViewModel = new SessionLineItemViewModel();
                BufferMgr.TransferBuffer(user, sessionLineItemViewModel);
                sessionsListViewModel.Items.Add(sessionLineItemViewModel);
            }
            return(new questStatus(Severity.Success));
        }
        public questStatus Page(out SessionsListViewModel sessionsListViewModel)
        {
            // Initialize
            questStatus status = null;

            sessionsListViewModel = null;


            // Set up query options.
            // TEMPORARY: OPTIMIZE THIS
            List <SearchField> searchFieldList = new List <SearchField>();

            SearchOptions searchOptions = new SearchOptions();

            searchOptions.SearchFieldList = searchFieldList;

            QueryOptions queryOptions = new QueryOptions(100, 1);

            queryOptions.SearchOptions = searchOptions;
            QueryResponse queryResponse = null;


            // List
            List <Quest.Functional.ASM.UserSession> userSessionList = null;
            UserSessionMgr userSessionMgr = new UserSessionMgr(this.UserSession);

            status = userSessionMgr.List(queryOptions, out userSessionList, out queryResponse);
            if (!questStatusDef.IsSuccess(status))
            {
                return(status);
            }

            // Transfer model.
            sessionsListViewModel = new SessionsListViewModel(this.UserSession);
            foreach (Quest.Functional.ASM.UserSession user in userSessionList)
            {
                SessionLineItemViewModel sessionLineItemViewModel = new SessionLineItemViewModel();
                BufferMgr.TransferBuffer(user, sessionLineItemViewModel);
                sessionsListViewModel.Items.Add(sessionLineItemViewModel);
            }
            return(new questStatus(Severity.Success));
        }
        public ActionResult Index(UserEditorViewModel viewModel)
        {
            questStatus status = null;

            /*----------------------------------------------------------------------------------------------------------------------------------
            * Log Operation
            *---------------------------------------------------------------------------------------------------------------------------------*/
            status = LogOperation();
            if (!questStatusDef.IsSuccess(status))
            {
                viewModel.questStatus = status;
                return(View("Index", viewModel));
            }

            /*----------------------------------------------------------------------------------------------------------------------------------
            * Authorize
            *---------------------------------------------------------------------------------------------------------------------------------*/
            status = Authorize(viewModel._ctx);
            if (!questStatusDef.IsSuccess(status))
            {
                viewModel.questStatus = status;
                return(View("Index", viewModel));
            }

            /*----------------------------------------------------------------------------------------------------------------------------------
            * Get user sessions.
            *---------------------------------------------------------------------------------------------------------------------------------*/
            // TODO:

            /*----------------------------------------------------------------------------------------------------------------------------------
            * Return view.
            *---------------------------------------------------------------------------------------------------------------------------------*/
            SessionsListViewModel sessionsListViewModel = new SessionsListViewModel(this.UserSession, viewModel);

            return(View(sessionsListViewModel));
        }