Пример #1
0
 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);
 }
Пример #2
0
 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);
 }
Пример #3
0
 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);
 }
Пример #4
0
 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);
 }
Пример #5
0
 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);
 }
Пример #6
0
 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);
 }
Пример #7
0
 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);
 }
Пример #8
0
 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);
 }
Пример #9
0
 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);
 }