public ActionResult Index(ColumnListViewModel 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)); } /*---------------------------------------------------------------------------------------------------------------------------------- * Read the database info. *---------------------------------------------------------------------------------------------------------------------------------*/ ColumnListViewModel columnListViewModel = null; ColumnListModeler columnListModeler = new ColumnListModeler(this.Request, this.UserSession); status = columnListModeler.List(viewModel, out columnListViewModel); if (!questStatusDef.IsSuccess(status)) { viewModel.questStatus = status; return(View("Index", viewModel)); } /*---------------------------------------------------------------------------------------------------------------------------------- * Return view. *---------------------------------------------------------------------------------------------------------------------------------*/ columnListViewModel.questStatus = new questStatus(Severity.Success); return(View(columnListViewModel)); }
public Window9() { InitializeComponent(); var vm = new ColumnListViewModel(); vm.Columns.Add(new ColumnViewModel() { IsPrimaryKey = true, Name = "Customer ID", SortOrder = SortOrder.Ascending }); vm.Columns.Add(new ColumnViewModel() { Name = "Customer Name", SortOrder = SortOrder.Descending }); vm.Columns.Add(new ColumnViewModel() { Name = "Customer Age", SortOrder = SortOrder.Unsorted }); DataContext = vm; }
/*================================================================================================================================== * Public Methods *=================================================================================================================================*/ #region LIST //---------------------------------------------------------------------------------------------------------------------------------- // LIST //---------------------------------------------------------------------------------------------------------------------------------- public questStatus List(ColumnListViewModel viewModel, out ColumnListViewModel columnListViewModel) { // Initialize questStatus status = null; columnListViewModel = null; // Read the database DatabaseId databaseId = new DatabaseId(viewModel.DatabaseId); DatabaseBaseViewModel databaseBaseViewModel = null; DatabaseBaseModeler databaseBaseModeler = new DatabaseBaseModeler(this.HttpRequestBase, this.UserSession); status = databaseBaseModeler.GetDatabase(databaseId, out databaseBaseViewModel); if (!questStatusDef.IsSuccess(status)) { return(status); } // Get columns according to parent entity type ColumnsMgr columnsMgr = new ColumnsMgr(this.UserSession); List <Column> columnList = null; Table table = null; View view = null; if (String.Equals(viewModel.ParentEntityType, "table", StringComparison.InvariantCultureIgnoreCase)) { // Get table columns TableId tableId = new TableId(viewModel.Id); status = columnsMgr.Read(tableId, out columnList); if (!questStatusDef.IsSuccess(status)) { return(status); } // Read the table info TablesMgr tablesMgr = new TablesMgr(this.UserSession); status = tablesMgr.Read(tableId, out table); if (!questStatusDef.IsSuccess(status)) { return(status); } } else if (String.Equals(viewModel.ParentEntityType, "view", StringComparison.InvariantCultureIgnoreCase)) { // Get view columns ViewId viewId = new ViewId(viewModel.Id); status = columnsMgr.Read(viewId, out columnList); if (!questStatusDef.IsSuccess(status)) { return(status); } // Read the view info ViewsMgr viewsMgr = new ViewsMgr(this.UserSession); status = viewsMgr.Read(viewId, out view); if (!questStatusDef.IsSuccess(status)) { return(status); } } else { return(new questStatus(Severity.Error, String.Format("Invalid ParentEntityType: {0}", viewModel.ParentEntityType))); } // Sort by display order columnList.Sort(delegate(Column i1, Column i2) { return(i1.DisplayOrder.CompareTo(i2.DisplayOrder)); }); // Transfer model. columnListViewModel = new ColumnListViewModel(this.UserSession, viewModel); columnListViewModel.DatabaseId = databaseId.Id; columnListViewModel.Database = databaseBaseViewModel; columnListViewModel.Id = viewModel.Id; columnListViewModel.ParentEntityType = viewModel.ParentEntityType; if (table != null) { TableViewModel tableViewModel = new TableViewModel(); BufferMgr.TransferBuffer(table, tableViewModel); columnListViewModel.Table = tableViewModel; } if (view != null) { ViewViewModel viewViewModel = new ViewViewModel(); BufferMgr.TransferBuffer(view, viewViewModel); columnListViewModel.View = viewViewModel; } foreach (Column column in columnList) { ColumnLineItemViewModel columnLineItemViewModel = new ColumnLineItemViewModel(); BufferMgr.TransferBuffer(column, columnLineItemViewModel); columnListViewModel.Items.Add(columnLineItemViewModel); } return(new questStatus(Severity.Success)); }
public ColumnListModeler(HttpRequestBase httpRequestBase, UserSession userSession, ColumnListViewModel columnListViewModel) : base(httpRequestBase, userSession) { this._columnListViewModel = columnListViewModel; initialize(); }