Exemple #1
0
        public ActionResult Index()
        {
            ReportsViewModel viewModel;

            // Get the default report
            var reportList    = PowerBiHelper.FetchReports(ConfigHelper.SeatMapReportId);
            var reportDefault = PowerBiHelper.FetchReport(_defaultReportId);

            // Build up the view model
            viewModel = reportDefault.Report != null
                ? new ReportsViewModel()
            {
                SelectedReportId = new Guid(reportDefault.Report.Id),
                Reports          = new SelectList(reportList, "Id", "Name", _defaultReportId),
                Report           = reportDefault.Report,
                AccessToken      = PowerBiHelper.CreatePowerBiToken(reportDefault.Report.Id)
            }
                : new ReportsViewModel()
            {
                SelectedReportId = Guid.Empty,
                Reports          = new SelectList(reportList, "Id", "Name", _defaultReportId),
                Report           = null,
                AccessToken      = string.Empty
            };

            return(View(viewModel));
        }
        public async Task <ActionResult> Index(int concertId)
        {
            if (concertId == 0)
            {
                return(RedirectToAction("Index", "Home"));
            }

            // Map to ViewModel
            var viewModel = _findSeatsRepository.GetFindSeatsData(concertId);

            // Add Collections
            viewModel.ExpirationMonths = GetCardExpirationMonths();
            viewModel.ExpirationYears  = GetCardExpirationYears();

            // Get SeatMap
            if (!WingtipTicketApp.Config.RunningInDev)
            {
                var seatMap = PowerBiHelper.FetchReport(ConfigHelper.SeatMapReportId);
                viewModel.SeatMap     = seatMap.Report;
                viewModel.AccessToken = seatMap.AccessToken;
            }

            //viewModel.SeatMap.EmbedUrl += "&$filter={BookedSeats/ConcertFilterId} eq " + concertId;

            return(View(viewModel));
        }
Exemple #3
0
        public JsonResult UploadFiles()
        {
            var results = new List <UploadFileViewModel>();

            foreach (string file in Request.Files)
            {
                var postedFile = Request.Files[file];

                if (postedFile == null || postedFile.ContentLength == 0)
                {
                    continue;
                }

                PowerBiHelper.UploadReport(postedFile);

                results.Add(new UploadFileViewModel()
                {
                    Name   = postedFile.FileName,
                    Length = postedFile.ContentLength,
                    Type   = postedFile.ContentType
                });
            }

            return(Json(results, JsonRequestBehavior.AllowGet));
        }
        public ActionResult Index()
        {
            ReportsViewModel viewModel;

            // Get the default report
            var defaultReport = PowerBiHelper.FetchReport(_defaultsRepository.GetApplicationDefault(DefaultReportCode));

            // Build up the view model
            if (defaultReport.Report != null)
            {
                viewModel = new ReportsViewModel()
                {
                    SelectedReportId = new Guid(defaultReport.Report.Id),
                    Reports          = PowerBiHelper.FetchReports(defaultReport.Report.Id, "Seatingmap"),
                    Report           = defaultReport.Report,
                    AccessToken      = defaultReport.AccessToken
                };
            }
            else
            {
                viewModel = new ReportsViewModel()
                {
                    SelectedReportId = Guid.Empty,
                    Reports          = PowerBiHelper.FetchReports(null, "Seatingmap"),
                    Report           = null,
                    AccessToken      = string.Empty
                };
            }

            return(View(viewModel));
        }
        public ActionResult Tables(string datasetId)
        {
            if (AzureAuthenticationHelper.IsAuthenticated())
            {
                var helper = new PowerBiHelper(AzureAuthenticationHelper.GetSession());
                return(this.View(helper.GetTables(datasetId).Value));
            }

            return(this.RedirectToAction("Index"));
        }
        public ActionResult Tables(string datasetId)
        {
            if (AzureAuthenticationHelper.IsAuthenticated())
            {
                var helper = new PowerBiHelper(AzureAuthenticationHelper.GetSession());
                return this.View(helper.GetTables(datasetId).Value);
            }

            return this.RedirectToAction("Index");
        }
        public ActionResult Index(ReportsViewModel viewModel)
        {
            // Get the selected report
            var reportResult = PowerBiHelper.FetchReport(viewModel.SelectedReportId.ToString());

            // Build up the view model
            viewModel.Reports     = PowerBiHelper.FetchReports(viewModel.SelectedReportId.ToString());
            viewModel.Report      = reportResult.Report;
            viewModel.AccessToken = reportResult.AccessToken;

            return(View(viewModel));
        }
Exemple #8
0
        public ActionResult Index(ReportsViewModel viewModel)
        {
            // Get the selected report
            var reportList   = PowerBiHelper.FetchReports(ConfigHelper.SeatMapReportId);
            var reportResult = PowerBiHelper.FetchReport(viewModel.SelectedReportId.ToString());

            // Build up the view model
            viewModel.Reports     = new SelectList(reportList, "Id", "Name", _defaultReportId);
            viewModel.Report      = reportResult.Report;
            viewModel.AccessToken = reportResult.AccessToken;

            return(View(viewModel));
        }
        public ActionResult TransferCustomers()
        {
            //return this.Json("Yay", JsonRequestBehavior.AllowGet);
            var credentials = AzureAuthenticationHelper.GetReportingCredentials();

            if (ServiceHandler.Instance.TryAuthenticate(
                    credentials.SiteCode,
                    credentials.ApiId,
                    credentials.ApiPassword))
            {
                var helper       = new PowerBiHelper(AzureAuthenticationHelper.GetSession());
                var customersRaw = ServiceHandler.Instance.Client.GetCustomersRaw(
                    credentials.SiteCode,
                    credentials.ApiId,
                    credentials.ApiPassword,
                    Customer.All,
                    1,
                    AccountManager.All);

                if (customersRaw.OwnerDocument != null)
                {
                    var namespaceManager = new XmlNamespaceManager(customersRaw.OwnerDocument.NameTable);
                    namespaceManager.AddNamespace("tlp", "http://www.timelog.com/XML/Schema/tlp/v4_4");
                    var customers = customersRaw.SelectNodes("tlp:Customer", namespaceManager);

                    if (customers != null)
                    {
                        var tableConstructed = false;
                        var rowsList         = new List <string>();
                        foreach (XmlNode customer in customers)
                        {
                            if (!tableConstructed)
                            {
                                helper.DeleteRows(helper.GetDefaultDatasetId(), "Customers");
                                var tableSchemaJson = helper.BuildTableSchemaJson("Customers", typeof(Customer));
                                helper.UpdateTableSchema(helper.GetDefaultDatasetId(), "Customers", tableSchemaJson);
                                tableConstructed = true;
                            }

                            rowsList.Add(helper.BuildTableRowJson(new Customer(customer, namespaceManager)));
                        }

                        helper.AddRows(helper.GetDefaultDatasetId(), "Customers", rowsList, 100);
                    }
                }

                return(this.Json("Yay", JsonRequestBehavior.AllowGet));
            }

            return(this.Json("Failed", JsonRequestBehavior.AllowGet));
        }
        public ActionResult Transfer()
        {
            if (AzureAuthenticationHelper.IsAuthenticated())
            {
                var helper = new PowerBiHelper(AzureAuthenticationHelper.GetSession());
                this.ViewBag.DatasetStatus = helper.IsDefaultDatasetAvailable() ? "detected" : "created";
                helper.CreateDefaultDataset();

                // helper.AddRow("6ac4bc17-a85d-4f03-bc5a-e73460568d3c", "Customers");
                return(this.View());
            }

            return(this.RedirectToAction("Index"));
        }
        public ActionResult Transfer()
        {
            if (AzureAuthenticationHelper.IsAuthenticated())
            {
                var helper = new PowerBiHelper(AzureAuthenticationHelper.GetSession());
                this.ViewBag.DatasetStatus = helper.IsDefaultDatasetAvailable() ? "detected" : "created";
                helper.CreateDefaultDataset();

                // helper.AddRow("6ac4bc17-a85d-4f03-bc5a-e73460568d3c", "Customers");
                return this.View();
            }

            return this.RedirectToAction("Index");
        }
Exemple #12
0
        public async Task <ActionResult> Index(int concertId)
        {
            if (concertId == 0)
            {
                return(RedirectToAction("Index", "Home"));
            }

            // Map to ViewModel
            var viewModel = _findSeatsRepository.GetFindSeatsData(concertId);

            // Add Collections
            viewModel.ExpirationMonths = GetCardExpirationMonths();
            viewModel.ExpirationYears  = GetCardExpirationYears();

            // Get DocumentDB MetaData
            VenueMetaData metaData = null;

            if (!WingtipTicketApp.Config.RunningInDev)
            {
                metaData = await _venueMetaDataRepository.GetVenueMetaData(viewModel.Concert.VenueId);
            }

            viewModel.VenueMetaData =
                metaData != null ?
                new FindSeatsViewModel.VenueMetaDataViewModel()
            {
                VenueId = metaData.VenueId,
                Data    = metaData.Data,
            } : null;

            // Get SeatMap
            if (!WingtipTicketApp.Config.RunningInDev)
            {
                var seatMap = PowerBiHelper.FetchReport(ConfigHelper.SeatMapReportId);
                viewModel.SeatMap     = seatMap.Report;
                viewModel.AccessToken = seatMap.AccessToken;
            }

            return(View(viewModel));
        }
        public ActionResult TransferWorkUnits()
        {
            return(this.Json("Yay", JsonRequestBehavior.AllowGet));

            var credentials = AzureAuthenticationHelper.GetReportingCredentials();

            if (ServiceHandler.Instance.TryAuthenticate(
                    credentials.SiteCode,
                    credentials.ApiId,
                    credentials.ApiPassword))
            {
                var helper       = new PowerBiHelper(AzureAuthenticationHelper.GetSession());
                var workUnitsRaw = ServiceHandler.Instance.Client.GetWorkUnitsRaw(
                    credentials.SiteCode,
                    credentials.ApiId,
                    credentials.ApiPassword,
                    WorkUnit.All,
                    Employee.All,
                    Allocation.All,
                    Task.All,
                    Project.All,
                    Department.All,
                    DateTime.Now.AddMonths(-6).ToString(),
                    DateTime.Now.ToString());

                if (workUnitsRaw.OwnerDocument != null)
                {
                    var namespaceManager = new XmlNamespaceManager(workUnitsRaw.OwnerDocument.NameTable);
                    namespaceManager.AddNamespace("tlp", "http://www.timelog.com/XML/Schema/tlp/v4_4");
                    var workUnits = workUnitsRaw.SelectNodes("tlp:WorkUnit", namespaceManager);

                    if (workUnits != null)
                    {
                        var tableConstructed = false;
                        var rowsList         = new List <string>();
                        foreach (XmlNode workUnit in workUnits)
                        {
                            if (!tableConstructed)
                            {
                                try
                                {
                                    helper.DeleteRows(helper.GetDefaultDatasetId(), "WorkUnits");
                                }
                                catch (Exception)
                                {
                                    // Ignore. Probably first request
                                    throw new Exception("PowerBI table definition out of sync. Please delete entire dataset and try transferring again.");
                                }

                                var tableSchemaJson = helper.BuildTableSchemaJson("WorkUnits", typeof(WorkUnit));
                                helper.UpdateTableSchema(helper.GetDefaultDatasetId(), "WorkUnits", tableSchemaJson);
                                tableConstructed = true;
                            }

                            rowsList.Add(helper.BuildTableRowJson(new WorkUnit(workUnit, namespaceManager)));
                        }

                        helper.AddRows(helper.GetDefaultDatasetId(), "WorkUnits", rowsList, 100);
                    }
                }

                return(this.Json("Yay", JsonRequestBehavior.AllowGet));
            }

            return(this.Json("Failed", JsonRequestBehavior.AllowGet));
        }
        public ActionResult TransferWorkUnits()
        {
            return this.Json("Yay", JsonRequestBehavior.AllowGet);
            var credentials = AzureAuthenticationHelper.GetReportingCredentials();

            if (ServiceHandler.Instance.TryAuthenticate(
                credentials.SiteCode,
                credentials.ApiId,
                credentials.ApiPassword))
            {
                var helper = new PowerBiHelper(AzureAuthenticationHelper.GetSession());
                var workUnitsRaw = ServiceHandler.Instance.Client.GetWorkUnitsRaw(
                    credentials.SiteCode,
                    credentials.ApiId,
                    credentials.ApiPassword,
                    WorkUnit.All,
                    Employee.All,
                    Allocation.All,
                    Task.All,
                    Project.All,
                    Department.All,
                    DateTime.Now.AddMonths(-6),
                    DateTime.Now);

                if (workUnitsRaw.OwnerDocument != null)
                {
                    var namespaceManager = new XmlNamespaceManager(workUnitsRaw.OwnerDocument.NameTable);
                    namespaceManager.AddNamespace("tlp", "http://www.timelog.com/XML/Schema/tlp/v4_4");
                    var workUnits = workUnitsRaw.SelectNodes("tlp:WorkUnit", namespaceManager);

                    if (workUnits != null)
                    {
                        var tableConstructed = false;
                        var rowsList = new List<string>();
                        foreach (XmlNode workUnit in workUnits)
                        {
                            if (!tableConstructed)
                            {
                                try
                                {
                                    helper.DeleteRows(helper.GetDefaultDatasetId(), "WorkUnits");
                                }
                                catch (Exception)
                                {
                                    // Ignore. Probably first request
                                    throw new Exception("PowerBI table definition out of sync. Please delete entire dataset and try transferring again.");
                                }

                                var tableSchemaJson = helper.BuildTableSchemaJson("WorkUnits", typeof(WorkUnit));
                                helper.UpdateTableSchema(helper.GetDefaultDatasetId(), "WorkUnits", tableSchemaJson);
                                tableConstructed = true;
                            }

                            rowsList.Add(helper.BuildTableRowJson(new WorkUnit(workUnit, namespaceManager)));
                        }

                        helper.AddRows(helper.GetDefaultDatasetId(), "WorkUnits", rowsList, 100);
                    }
                }

                return this.Json("Yay", JsonRequestBehavior.AllowGet);
            }

            return this.Json("Failed", JsonRequestBehavior.AllowGet);
        }
        public ActionResult TransferCustomers()
        {
            //return this.Json("Yay", JsonRequestBehavior.AllowGet);
            var credentials = AzureAuthenticationHelper.GetReportingCredentials();

            if (ServiceHandler.Instance.TryAuthenticate(
                credentials.SiteCode,
                credentials.ApiId,
                credentials.ApiPassword))
            {
                var helper = new PowerBiHelper(AzureAuthenticationHelper.GetSession());
                var customersRaw = ServiceHandler.Instance.Client.GetCustomersRaw(
                    credentials.SiteCode,
                    credentials.ApiId,
                    credentials.ApiPassword,
                    Customer.All,
                    1,
                    AccountManager.All,
                    string.Empty);

                if (customersRaw.OwnerDocument != null)
                {
                    var namespaceManager = new XmlNamespaceManager(customersRaw.OwnerDocument.NameTable);
                    namespaceManager.AddNamespace("tlp", "http://www.timelog.com/XML/Schema/tlp/v4_4");
                    var customers = customersRaw.SelectNodes("tlp:Customer", namespaceManager);

                    if (customers != null)
                    {
                        var tableConstructed = false;
                        var rowsList = new List<string>();
                        foreach (XmlNode customer in customers)
                        {
                            if (!tableConstructed)
                            {
                                helper.DeleteRows(helper.GetDefaultDatasetId(), "Customers");
                                var tableSchemaJson = helper.BuildTableSchemaJson("Customers", typeof(Customer));
                                helper.UpdateTableSchema(helper.GetDefaultDatasetId(), "Customers", tableSchemaJson);
                                tableConstructed = true;
                            }

                            rowsList.Add(helper.BuildTableRowJson(new Customer(customer, namespaceManager)));
                        }

                        helper.AddRows(helper.GetDefaultDatasetId(), "Customers", rowsList, 100);
                    }
                }

                return this.Json("Yay", JsonRequestBehavior.AllowGet);
            }

            return this.Json("Failed", JsonRequestBehavior.AllowGet);
        }