public function buildDashboard() { $this->setDashboardTitle("Stock Dashboard"); $this->setActionPath("/static/transfer/build/tour/motherboard_stock_action.php"); $kpi = new KPIGroupComponent('kpi'); $kpi->setDimensions(12, 2); $kpi->setCaption('Units stock by Category'); $Units = $this->get_units(true); foreach ($Units as $key => $value) { $kpi->addKPI($value['id'], array('caption' => $value['CategoryName'], 'value' => $value['Quantity'], 'numberSuffix' => ' units', 'numberHumanize' => true)); } $this->addComponent($kpi); $table = new TableComponent('table'); $table->setCaption("List of Item in Stock"); $table->setDimensions(6, 5); $stock = $this->get_stock(); $table->addColumn('id', 'Product Id'); $table->addColumn('name', 'Product Name'); $table->addColumn('category', 'Category'); $table->addColumn('price', 'Price', array("numberPrefix" => "\$", "dataType" => "number")); $table->addColumn('stock', 'Stock'); $table->addMultipleRows($this->PolulateData($stock)); $this->addComponent($table); $c12 = new FormComponent('filter'); $c12->setDimensions(6, 5); $c12->setCaption('Filter items in stock'); $category = $this->get_category(); $c12->addSelectField('category', 'Select Category', array_merge(['no selection'], ArrayUtils::pluck($category, 'CategoryName'))); $c12->addTextField('contains', 'Product Name Contains'); $c12->addNumericRangeField('stock', 'Units In Stock', array(0, 100)); $this->addComponent($c12); $c12->onApplyClick(array($table), 'handleApply', $this); }
public function buildDashboard() { $table = new TableComponent('table1'); $table->setCaption("Regional Sales"); $table->setDimensions(4, 4); $table->setRowsPerPage(8); $table->addColumn('zone', "Zone"); $table->addColumn('name', "Store Name"); $table->addColumn('sale', "Sales Amount", array("dataType" => "number", "numberPrefix" => "\$ ", "textAlign" => "center")); $data = array(array("zone" => "North", "name" => "Northern Stores", "sale" => 4000), array("zone" => "South", "name" => "Southern Stores", "sale" => 4500)); $table->addMultipleRows($data); $this->addComponent($table); }
public function buildDashboard() { $table = new TableComponent('table1'); $table->setCaption("Regional Sales"); $table->setDimensions(4, 4); $table->setRowsPerPage(8); $table->addColumn('zone', "Zone"); $table->addColumn('name', "Store Name"); $table->addColumn('sale', "Sales Amount"); $table->addSparkColumn('customer', "Customers"); $data = array(array("zone" => "North", "name" => "Northern Stores", "sale" => 4000, "customer" => array(5, 3, 4, 8)), array("zone" => "South", "name" => "Southern Stores", "sale" => 4500, "customer" => array(10, 6, 15, 8))); $table->addMultipleRows($data); $this->addComponent($table); }
public function buildDashboard() { $yearwise = new ChartComponent('yearly_sales'); $yearwise->setCaption("Yearly Sales"); $yearwise->setDimensions(6, 6); $yearData = $this->get_year(); $yearwise->setLabels(ArrayUtils::pluck($yearData, 'payment_year')); $yearwise->setYAxis("Sales", array("numberHumanize" => true, 'numberPrefix' => "\$")); $totalSalesArr = ArrayUtils::pluck($yearData, "total_amount"); $yearwise->addSeries("sales", "Sales", $totalSalesArr, array('numberPrefix' => "\$")); $yearwise->addDrillStep("get_monthwise", $this); $yearwise->addDrillStep("get_daywise", $this); $totalSales = 0; foreach ($totalSalesArr as $key => $value) { $totalSales += $value; } $yearwise->addComponentKPI("sales", array("caption" => "Total Sales", "value" => $totalSales, "numberPrefix" => "\$", "numberHumanize" => true)); $yearwise->addComponentKPI("second", array("caption" => "Revenue", "value" => $totalSales, "numberPrefix" => "\$", "numberHumanize" => true)); $this->setDashboardTitle("Sales Dashboard"); $this->addComponent($yearwise); $category = new ChartComponent('category'); $category->setCaption("Category wise Sales"); $category->setDimensions(6, 6); $categoryData = $this->get_category(); $category->setLabels(ArrayUtils::pluck($categoryData, 'CategoryName')); $category->setYAxis("Sales", array("numberHumanize" => true, 'numberPrefix' => "\$")); $totalSalesArr = ArrayUtils::pluck($categoryData, "total_amount"); $category->addSeries("sales", "Sales", $totalSalesArr, array('numberPrefix' => "\$")); $this->addComponent($category); $table = new TableComponent('table'); $table->setCaption("Average Shipping Time"); $table->setDimensions(6, 4); $ship = $this->get_shipping(); $table->addColumn('country', 'Country'); $table->addColumn('avg_time', 'Average Time'); $table->addMultipleRows($this->PolulateData($ship)); $this->addComponent($table); $goods = new ChartComponent('goods_sold'); $goods->setCaption("Cost of Goods Sold"); $goods->setDimensions(12, 6); $yearArr = $this->get_yearName(); $goods->setLabels(ArrayUtils::pluck($yearArr, 'payment_year')); $goods->setYAxis("Sales", array("numberHumanize" => true, 'numberPrefix' => "\$")); $goodsSoldData = $this->get_goodsSold(); foreach ($goodsSoldData as $key => $value) { $goods->addSeries($key, $key, ArrayUtils::pluck($value, "total_amount"), array('numberPrefix' => "\$", 'seriesStacked' => true)); } $this->addComponent($goods); }
public function buildDashboard() { $quarterlySales = new ChartComponent('quarterlySales'); $quarterlySales->setDimensions(6, 6); $quarterlySales->setCaption("Quarterly Sales"); $quarterlySales->setLabels(array("Q1", "Q2", "Q3", "Q4")); $quarterlySales->addYAxis('quantity', "Quantity"); $quarterlySales->addSeries('sales', "Sales", array(13122, 41312, 46132, 51135), array('numberPrefix' => "\$")); $quarterlySales->addSeries('quantity', "Quantity", array(121, 392, 420, 489), array('yAxis' => 'quantity')); $quarterlySales->addComponentKPI('beverage', array('caption' => 'Beverages', 'value' => 22900, 'numberPrefix' => ' $', 'numberHumanize' => true)); $quarterlySales->addComponentKPI('vegetable', array('caption' => 'Vegetables', 'value' => 10401, 'numberPrefix' => ' $', 'numberHumanize' => true)); $quarterlySales->addComponentKPI('dairy', array('caption' => 'Dairy', 'value' => 27700, 'numberPrefix' => ' $', 'numberHumanize' => true)); $quarterlySales->addDrillStep('drillIntoMonths', $this); $this->addComponent($quarterlySales); $numTickets = new KPIComponent('numTickets'); $numTickets->setDimensions(3, 3); $numTickets->setCaption("Open Support Tickets"); $numTickets->setValue(42); $this->addComponent($numTickets); $satisfactionGauge = new GaugeComponent('satisfactionGauge'); $satisfactionGauge->setDimensions(3, 3); $satisfactionGauge->setCaption('Customer Satisfaction'); $satisfactionGauge->setValue(8); $satisfactionGauge->setLimits(0, 10); $this->addComponent($satisfactionGauge); $ticketPriorities = new KPIGroupComponent('ticketPriorities'); $ticketPriorities->setDimensions(6, 3); $ticketPriorities->setCaption('Ticket Priorities'); $ticketPriorities->addKPI('high', array('caption' => 'High Priority', 'value' => 6)); $ticketPriorities->addKPI('normal', array('caption' => 'Normal Priority', 'value' => 36)); $this->addComponent($ticketPriorities); $productsTable = new TableComponent('productsTable'); $productsTable->setDimensions(6, 6); $productsTable->setCaption('Products'); $productsTable->addColumn('name', 'Name'); $productsTable->addColumn('category', 'Category'); $productsTable->addColumn('price', 'Price', array('dataType' => "number", 'numberPrefix' => "\$", 'textAlign' => "right", 'numberForceDecimals' => true)); $productsTable->addMultipleRows($this->tableData); $this->addComponent($productsTable); $productFilterForm = new FormComponent('productFilterForm'); $productFilterForm->setDimensions(6, 6); $productFilterForm->setCaption('Filter Products'); $productFilterForm->addMultiSelectField('category', 'Select Category', array('Vegetables', 'Dairy', 'Beverages')); $productFilterForm->addTextField('name', 'Product Name Contains'); $productFilterForm->addNumericRangeField('price', 'Price', array(5, 20)); $this->addComponent($productFilterForm); $productFilterForm->onApplyClick(array($productsTable), 'handleApplyClick', $this); }
public function buildDashboard() { $table = new TableComponent('table1'); $table->setCaption("Table 1"); $table->setDimensions(6, 6); $table->setRowsPerPage(8); $table->addColumn('colA', "Column A"); $table->addColumn('colB', "Column B"); for ($i = 0; $i < 10; $i++) { // Single Row $table->addRow(array('colA' => $i * 2, 'colB' => $i * 2 + 1)); } // Multiple Rows $rows = array(array('colA' => 111, 'colB' => 22), array('colA' => 222, 'colB' => 33), array('colA' => 333, 'colB' => 44)); $table->addMultipleRows($rows); $this->addComponent($table); }
public function buildDashboard() { $table = new TableComponent('table1'); $table->setCaption("Movies & Ratings"); $table->setDimensions(6, 6); $table->setRowsPerPage(8); $table->addColumn('rank', "Rank"); $table->addColumn('title', "Title"); $table->addColumn('rating', "Rating"); $table->addMultipleRows($this->rows); // Adding multiple rows at once $filter = new FormComponent('form'); $filter->setCaption('Filter'); $filter->setDimensions(5, 3); $filter->addSelectField('rating_filter', 'Rating Greater Than', array(5, 6, 7, 8, 9)); $filter->onApplyClick(array($table), 'handleApplyClick', $this); $this->addComponent($table); $this->addComponent($filter); }
public function buildDashboard() { $table = new TableComponent('table1'); $table->setCaption("List of Employees"); $table->setDimensions(6, 6); $employees = $this->getEmployees(); $table->addColumn('FirstName', "First Name"); $table->addColumn('LastName', "Last Name"); $table->addColumn('City', "City"); $table->addColumn('State', "State", array('textItalicFlag' => true)); $table->addColumn('Country', "Country"); $table->addMultipleRows($this->populateData($employees)); $this->addComponent($table); $form = new FormComponent('form1'); $form->setCaption("Form Employees"); $form->setDimensions(4, 4); $form->addTextField("contains", "City Contains"); $form->onApplyClick(array($table), "handleEmployeesSubmit", $this); $this->addComponent($form); }
public function buildDashboard() { $this->setDashboardTitle("Sales Dashboard"); $this->setActionPath("/static/transfer/build/tour/motherboard_action.php"); // $yearwise = new ChartComponent ('yearly_sales'); // $yearwise->setCaption ("Yearly Sales"); // $yearwise->setDimensions (6, 6); // $yearData = $this->get_year(); // $yearwise->setLabels(ArrayUtils::pluck($yearData, 'payment_year')); // $yearwise->setYAxis("Sales", array( // "numberHumanize" => true, // 'numberPrefix' => "$" // )); // $totalSalesArr = ArrayUtils::pluck($yearData, "total_amount"); // $yearwise->addSeries ("sales", "Sales", $totalSalesArr, array( // 'numberPrefix' => "$" // )); // $yearwise->addDrillStep("get_monthwise", $this); // $yearwise->addDrillStep("get_daywise", $this); // $totalSales = 0; // foreach ($totalSalesArr as $key => $value) { // $totalSales += $value; // } // $yearwise->addComponentKPI("sales", array( // "caption" => "Total Sales", // "value" => $totalSales, // "numberPrefix" => "$", // "numberHumanize" => true // )); // $yearwise->addComponentKPI("second", array( // "caption" => "Revenue", // "value" => $totalSales, // "numberPrefix" => "$", // "numberHumanize" => true // )); // $this->addComponent ($yearwise); $category = new ChartComponent('category'); $category->setCaption("Category wise Sales"); $category->setDimensions(6, 6); $categoryData = $this->get_category(); $quantityData = $this->get_units(); $category->setLabels(ArrayUtils::pluck($categoryData, 'CategoryName')); $category->setYAxis("Sales", array("numberHumanize" => true, 'numberPrefix' => "\$")); $totalSalesArr = ArrayUtils::pluck($categoryData, "total_amount"); $category->addSeries("sales", "Sales", $totalSalesArr, array('numberPrefix' => "\$")); $category->addYAxis('unitsAx', "Units in Inventory", array()); $totalUnitsArr = ArrayUtils::pluck($quantityData, "total_quantity"); $category->addSeries("units", "Units in Inventory", $totalUnitsArr, array("seriesDisplayType" => "line", "yAxis" => 'unitsAx')); $category->addDrillStep("get_prod", $this); $category->addComponentKPI("cost", array("caption" => "Total Sales", "value" => $this->get_cost_inventory(), "numberPrefix" => "\$")); $category->addComponentKPI("units", array("caption" => "Total Units in Inventory", "value" => $this->get_unit_inventory())); $this->addComponent($category); $chart = new ChartComponent("Customer_satisfaction"); $chart->setCaption("Customer Satisfaction"); $chart->setDimensions(6, 6); $chart->setLabels(["Very Unsatisfied", "UnSatisfied", "Neutral", "Satisfied", "Very Satisfied"]); $chart->setPieValues([4, 10, 25, 25, 36], array("numberSuffix" => "%")); $this->addComponent($chart); $table = new TableComponent('table'); $table->setCaption("Average Shipping Time"); $table->setDimensions(6, 6); $ship = $this->get_shipping(); $table->addColumn('country', 'Country'); $table->addColumn('avg_time', 'Average Time', array("textAlign" => "right")); $table->addMultipleRows($this->PolulateData($ship)); $table->setRowsPerPage(12); $this->addComponent($table); $goods = new ChartComponent('goods_sold'); $goods->setCaption("Cost of Goods Sold"); $goods->setDimensions(6, 6); $yearArr = $this->get_yearName(); $goods->setLabels(ArrayUtils::pluck($yearArr, 'payment_year')); $goods->setYAxis("Sales", array("numberHumanize" => true, 'numberPrefix' => "\$")); $goodsSoldData = $this->get_goodsSold(); foreach ($goodsSoldData as $key => $value) { $goods->addSeries($key, $key, ArrayUtils::pluck($value, "total_amount"), array('numberPrefix' => "\$", 'seriesStacked' => true)); } $this->addComponent($goods); }