Your IP : 216.73.216.79


Current Path : /var/www/html/crm/views/assetdetails/
Upload File :
Current File : /var/www/html/crm/views/assetdetails/report.php

<?php

use yii\helpers\Html;
use yii\grid\GridView;
use yii\helpers\Url;
use app\models\Menu;
use app\models\AssetCategory;
use app\models\AssetLog;
use yii\widgets\ActiveForm;
use app\assets\AmchartsAsset;
use app\models\ParamList;

$ParamList = new ParamList();

AmchartsAsset::register($this);

$Menu = new Menu();
$this->title = $Menu->getmenutitle($menu_id);
$AssetCategory = new AssetCategory();

$graph1 = '';
$query1 = Yii::$app->db->createCommand("SELECT COUNT(*) AS total_asset, SUM(asset_value) AS total_asset_value, cat FROM asset_details GROUP BY cat ORDER BY SUM(asset_value) DESC")->queryAll();
if (!empty($query1)) {
    foreach ($query1 as $row1) {
        $graph1 .= '{"cat": "' . $AssetCategory->getname2($row1['cat']) . '","asset_val": ' . $row1['total_asset_value'] . ',"total_asset":' . $row1['total_asset'] . '},';
    }
}

$this->registerJs('am4core.ready(function() {
    am4core.useTheme(am4themes_animated);
    var chart = am4core.create("graph1", am4charts.XYChart);
    chart.scrollbarX = new am4core.Scrollbar();
    chart.data = [' . $graph1 . '];

    var categoryAxis = chart.xAxes.push(new am4charts.CategoryAxis());
    categoryAxis.dataFields.category = "cat";
    categoryAxis.renderer.grid.template.location = 0;
    categoryAxis.renderer.minGridDistance = 30;
    categoryAxis.tooltip.disabled = false;
    
    var label = categoryAxis.renderer.labels.template;
    label.wrap = true;
    label.maxWidth = 150;

    var valueAxis = chart.yAxes.push(new am4charts.ValueAxis());
    valueAxis.renderer.minWidth = 50;

    var series = chart.series.push(new am4charts.ColumnSeries());
    series.sequencedInterpolation = true;
    series.dataFields.valueY = "asset_val";
    series.dataFields.categoryX = "cat";
    series.dataFields.valueZ = "total_asset";
    series.tooltipHTML = "<b>{categoryX}</b><br>Total Assets : {total_asset}<br>Total Assets Value : RM {valueY}";
    series.columns.template.strokeWidth = 0;
    series.tooltip.pointerOrientation = "vertical";

    series.columns.template.column.cornerRadiusTopLeft = 10;
    series.columns.template.column.cornerRadiusTopRight = 10;
    series.columns.template.column.fillOpacity = 0.8;

    var hoverState = series.columns.template.column.states.create("hover");
    hoverState.properties.cornerRadiusTopLeft = 0;
    hoverState.properties.cornerRadiusTopRight = 0;
    hoverState.properties.fillOpacity = 1;

    series.columns.template.adapter.add("fill", function(fill, target) {
      return chart.colors.getIndex(target.dataItem.index);
    });

    chart.cursor = new am4charts.XYCursor();
});');

$graph2 = '';
$statusarr = $ParamList->getparamlist(30);
if (!empty($statusarr)) {
    foreach ($statusarr as $statuscode => $statuslabel) {
        $totalassets = Yii::$app->db->createCommand("SELECT COUNT(*) FROM asset_log INNER JOIN asset_details ON asset_details.id=asset_log.asset_id WHERE asset_log.status='".$statuscode."'")->queryScalar();
        $graph2 .= '{"status": "' . $statuslabel . '","total_status": '.$totalassets.'},';
    }
}

$this->registerJs('am4core.ready(function() {
    am4core.useTheme(am4themes_animated);
    var chart = am4core.create("graph2", am4charts.XYChart);
    chart.scrollbarX = new am4core.Scrollbar();
    chart.data = ['.$graph2.'];

    var categoryAxis = chart.xAxes.push(new am4charts.CategoryAxis());
    categoryAxis.dataFields.category = "status";
    categoryAxis.renderer.grid.template.location = 0;
    categoryAxis.renderer.minGridDistance = 30;
    categoryAxis.tooltip.disabled = false;

    var valueAxis = chart.yAxes.push(new am4charts.ValueAxis());
    valueAxis.renderer.minWidth = 50;

    var series = chart.series.push(new am4charts.ColumnSeries());
    series.sequencedInterpolation = true;
    series.dataFields.valueY = "total_status";
    series.dataFields.categoryX = "status";
    series.tooltipHTML = "{categoryX}<br>{valueY}";
    series.columns.template.strokeWidth = 0;
    series.tooltip.pointerOrientation = "vertical";

    series.columns.template.column.cornerRadiusTopLeft = 10;
    series.columns.template.column.cornerRadiusTopRight = 10;
    series.columns.template.column.fillOpacity = 0.8;

    var hoverState = series.columns.template.column.states.create("hover");
    hoverState.properties.cornerRadiusTopLeft = 0;
    hoverState.properties.cornerRadiusTopRight = 0;
    hoverState.properties.fillOpacity = 1;

    series.columns.template.adapter.add("fill", function(fill, target) {
      return chart.colors.getIndex(target.dataItem.index);
    });

    chart.cursor = new am4charts.XYCursor();
});');
?>
<div class="kt-subheader  kt-grid__item" id="kt_subheader">
    <div class="kt-container  kt-container--fluid ">
        <div class="kt-subheader__main">
            <h3 class="kt-subheader__title"><?= $this->title ?></h3>
            <div class="kt-subheader__breadcrumbs">
                <?= $Menu->getbreadcrumbs($menu_id, ''); ?>
            </div>
        </div>
    </div>
</div>
<div class="kt-container kt-grid__item kt-grid__item--fluid">
    <div class="kt-portlet">
        <div class="kt-portlet__body  kt-portlet__body--fit">
            <div class="row row-no-padding row-col-separator-xl">
                <div class="col-md-12 col-lg-6 col-xl-3">
                    <div class="kt-widget24">
                        <div class="kt-widget24__details">
                            <div class="kt-widget24__info">
                                <h4 class="kt-widget24__title">Total</h4>
                                <span class="kt-widget24__desc">Total Assets</span>
                            </div>
                            <span class="kt-widget24__stats kt-font-brand">
                                <?php
                                $summary1 = Yii::$app->db->createCommand("SELECT COUNT(*) FROM asset_details")->queryScalar();
                                echo number_format($summary1);
                                ?>
                            </span>
                        </div>
                    </div>
                </div>
                <div class="col-md-12 col-lg-6 col-xl-3">
                    <div class="kt-widget24">
                        <div class="kt-widget24__details">
                            <div class="kt-widget24__info">
                                <h4 class="kt-widget24__title">Assets Value</h4>
                                <span class="kt-widget24__desc">Total Assets Value</span>
                            </div>
                            <span class="kt-widget24__stats kt-font-brand">RM
                                <?php
                                $summary2 = Yii::$app->db->createCommand("SELECT SUM(asset_value) FROM asset_details")->queryScalar();
                                echo number_format((float)$summary2, 2, '.', ',');
                                ?>
                            </span>
                        </div>
                    </div>
                </div>
                <div class="col-md-12 col-lg-6 col-xl-3">
                    <div class="kt-widget24">
                        <div class="kt-widget24__details">
                            <div class="kt-widget24__info">
                                <h4 class="kt-widget24__title">In Use</h4>
                                <span class="kt-widget24__desc">Total Assets In Use</span>
                            </div>
                            <span class="kt-widget24__stats kt-font-brand">
                                <?php
                                $summary3 = Yii::$app->db->createCommand("SELECT COUNT(*) FROM asset_details INNER JOIN asset_log ON asset_details.id=asset_log.asset_id WHERE asset_log.status='status04'")->queryScalar();
                                echo number_format($summary3);
                                ?>
                            </span>
                        </div>
                    </div>
                </div>
                <div class="col-md-12 col-lg-6 col-xl-3">
                    <div class="kt-widget24">
                        <div class="kt-widget24__details">
                            <div class="kt-widget24__info">
                                <h4 class="kt-widget24__title">Category</h4>
                                <span class="kt-widget24__desc">Total Category Assets</span>
                            </div>
                            <span class="kt-widget24__stats kt-font-brand">
                                <?php
                                $summary4 = Yii::$app->db->createCommand("SELECT COUNT(*) FROM asset_details GROUP BY cat")->queryScalar();
                                echo number_format($summary4);
                                ?>
                            </span>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>

    <div class="kt-portlet">
        <div class="kt-portlet__head" style="border:0;">
            <div class="kt-portlet__head-label">
                <h3 class="kt-portlet__head-title">
                    Report Total Assets Value By Category
                </h3>
            </div>
        </div>
        <div class="kt-portlet__body">
            <div class="kt-portlet__content">
                <div class="kt-widget3">
                    <div id="graph1" style="height: 400px;width:100%;"></div>
                </div>
            </div>
        </div>
    </div>

    <div class="kt-portlet">
        <div class="kt-portlet__head" style="border:0;">
            <div class="kt-portlet__head-label">
                <h3 class="kt-portlet__head-title">
                    Report Status Assets
                </h3>
            </div>
        </div>
        <div class="kt-portlet__body">
            <div class="kt-portlet__content">
                <div class="kt-widget3">
                    <div id="graph2" style="height: 400px;width:100%;"></div>
                </div>
            </div>
        </div>
    </div>
</div>