215 lines
7.5 KiB
JavaScript
215 lines
7.5 KiB
JavaScript
/*================================================================================================================\
|
|
+
|
|
+ Project : GODATA-EICHER
|
|
+ Filename : DealerWiseDashboard.js
|
|
+ Module Name : Tile Dashboard Module
|
|
+ Purpose : To show Tile Dashboard KPIs between 2 dates.
|
|
+ Coded By : Pankaj Khandal
|
|
+
|
|
+================================================================================================================*/
|
|
|
|
/**
|
|
* To show Tile Dashboard KPIs between 2 dates.
|
|
* @module Dashboard
|
|
*/
|
|
|
|
|
|
/**
|
|
* To show Tile Dashboard KPIs between 2 dates.
|
|
* @class TileDashboard
|
|
* @constructor
|
|
*/
|
|
|
|
|
|
/**
|
|
* Global References: To store Ajax Request's XHR object.
|
|
* @for TileDashboard
|
|
*/
|
|
var xhr_refreshDashboard = null;
|
|
|
|
//
|
|
/**
|
|
* Global References: Setting countUp options (To change the gradient of tiles and slowly incresing the numbers on tiles)
|
|
* @for TileDashboard
|
|
*/
|
|
var options = {
|
|
useEasing: true, // toggle easing
|
|
useGrouping: true, // 1,000,000 vs 1000000
|
|
separator: '', // character to use as a separator
|
|
decimal: '.', // character to use as a decimal
|
|
};
|
|
var demo;
|
|
|
|
/**
|
|
* Global References: To store color-combinations to show gradient effect on tiles.
|
|
* @for TileDashboard
|
|
*/
|
|
var startingColor11 = 'rgb(47,128,227)', // dark blue color code
|
|
startingColor12 = 'rgb(109,192,254)', // light blue color code
|
|
endColor11 = 'rgb(200,36,27)', // red color code
|
|
endColor12 = 'rgb(254,112,69)', // red
|
|
startingColor21 = 'rgb(125,188,29)', // light green
|
|
startingColor22 = 'rgb(42,169,28)', // green
|
|
warningColor11 = 'rgb(249, 140, 29)',// yellow
|
|
warningColor21 = 'rgb(254, 180, 44)';// yellow
|
|
|
|
lightOcean = 'rgb(0, 171, 169)'; // light ocean
|
|
darkOcean = 'rgb(46, 98, 98)'; // dark ocean
|
|
lightBlue = 'rgb(66, 146, 234)'; // light blue
|
|
darkBlue = 'rgb(24, 57, 134)'; // dark blue
|
|
|
|
|
|
|
|
/**
|
|
* Convert HH:mm format to Minutes.
|
|
* @method convertToMin
|
|
* @param {String} time input timei in HH:mm format
|
|
* @for TileDashboard
|
|
*/
|
|
function convertToMin(time) {
|
|
var timeArray = time.split(":");
|
|
return parseInt(timeArray[0], 10) * 60 + parseInt(timeArray[1], 10);
|
|
}
|
|
|
|
/**
|
|
* To bind values on infra tile dashboard for selected circles.
|
|
* @method refreshDashboard
|
|
* @for TileDashboard
|
|
*/
|
|
function refreshDashboard() {
|
|
var randomValues = Math.floor(Math.random() * 6) + 1;
|
|
var RandomValuesDriver = randomValues;
|
|
|
|
|
|
var HIGHESTFUELCONSUMINGVEHICLE = ["Prateek Jain (RJ2044)", "parul (GJ15YY7342)", "Yogesh (RJ14UU1233)", "Rohant (RJ14UD2229)",
|
|
"smita (RJ12WW1111)", "ykhator (RJ56390)", "surbhi (RJ06012)"];
|
|
var DRIVERNAMES = ["nari - narri (NB12345)", "naresh - ram (NB12234)", "ram babu - Ram (RJ14982)",
|
|
"Anoop - Ankush (RJ05GV2022)", "Agarwal Amit - Ankit Soni (RJ0909)", "suraj jain- ramnaresh (RJ2222)",
|
|
"Sajan - samir (RG33AS3432)"
|
|
];
|
|
|
|
demo = new countUp("total_van", 0, parseInt(500, 10), 0, 0, options);
|
|
demo.start();
|
|
|
|
$("#total_van").text("423");
|
|
$("#textFor_total_van").text("No. of Vehicles");
|
|
demo = new countUp("response_within_2hrs", 0, parseInt(40, 10), 0, 0, options);
|
|
demo.start();
|
|
|
|
$("#response_within_2hrs").text("40");
|
|
$("#textFor_response_within_2hrs").text("Average Running (Km)");
|
|
|
|
demo = new countUp("average_response_time", 0, parseInt(698, 10), 0, 0, options);
|
|
demo.start();
|
|
|
|
$("#average_response_time").text("698");
|
|
$("#textFor_average_response_time").text("No. of Drivers");
|
|
|
|
demo = new countUp("least_response_time_row1", 0, parseInt(19, 10), 0, 0, options);
|
|
demo.start();
|
|
|
|
|
|
$("#least_response_time_row1").text("19");
|
|
$("#textFor_least_response_time_row1").text("Service Reminders");
|
|
|
|
// gradient-coloring the tile
|
|
var parentOfTarget = $('#least_response_time_row1').parent();
|
|
colorAnimationTheDiv(parentOfTarget, startingColor21, startingColor22, startingColor22, startingColor21, 2);
|
|
|
|
demo = new countUp("highest_response_time_row1", 0, parseInt(8, 10), 0, 0, options);
|
|
demo.start();
|
|
|
|
$("#highest_response_time_row1").text("8");
|
|
$("#textFor_highest_response_time_row1").text("Average Fuel Consumption (ltr/Day)");
|
|
|
|
// gradient-coloring the tile
|
|
var parentOfTarget = $('#highest_response_time_state_row1').parent();
|
|
colorAnimationTheDiv(parentOfTarget, startingColor21, startingColor22, lightOcean, darkOcean, 2);
|
|
|
|
//$("#least_response_time_row1").text("19");
|
|
//$("#textFor_least_response_time_row1").text("Service Reminders");
|
|
|
|
// gradient-coloring the tile
|
|
//var parentOfTarget = $('#least_response_time_row1').parent();
|
|
//colorAnimationTheDiv(parentOfTarget, startingColor21, startingColor22, darkOcean, lightOcean, 2);
|
|
$("#closur_within_24hrs").text("80");
|
|
$("#textFor_closur_within_24hrs").text("Maintenance Alerts");
|
|
|
|
// gradient-coloring the tile
|
|
var parentOfTarget = $('#closur_within_24hrs').parent();
|
|
colorAnimationTheDiv(parentOfTarget, startingColor21, startingColor22, darkBlue, lightBlue, 2);
|
|
|
|
|
|
$("#highest_response_time").text(HIGHESTFUELCONSUMINGVEHICLE[HIGHESTFUELCONSUMINGVEHICLE.length - randomValues]);
|
|
$("#textFor_highest_response_time").text("Highest Running Cost Vehicle");
|
|
|
|
// gradient-coloring the tile
|
|
var parentOfTarget = $('#highest_response_time').parent();
|
|
colorAnimationTheDiv(parentOfTarget, startingColor21, startingColor22, endColor11, endColor12, 2);
|
|
|
|
$("#least_response_time").text(HIGHESTFUELCONSUMINGVEHICLE[randomValues]);
|
|
$("#textFor_least_response_time").text("Highest Fuel Consuming Vehicle");
|
|
|
|
// gradient-coloring the tile
|
|
var parentOfTarget = $('#least_response_time').parent();
|
|
colorAnimationTheDiv(parentOfTarget, startingColor21, startingColor22, endColor11, endColor12, 2);
|
|
|
|
$("#least_response_time_row3").text(DRIVERNAMES[RandomValuesDriver]);
|
|
$("#textFor_least_response_time_row3").text("Best Driver");
|
|
|
|
// gradient-coloring the tile
|
|
var parentOfTarget = $('#least_response_time_row3').parent();
|
|
colorAnimationTheDiv(parentOfTarget, startingColor21, startingColor22, startingColor22, startingColor21, 2);
|
|
|
|
|
|
$("#highest_response_time_row3").text(DRIVERNAMES[DRIVERNAMES.length - RandomValuesDriver]);
|
|
$("#textFor_highest_response_time_row3").text("Worst Driver");
|
|
|
|
// gradient-coloring the tile
|
|
var parentOfTarget = $('#highest_response_time_row3').parent();
|
|
colorAnimationTheDiv(parentOfTarget, startingColor21, startingColor22, endColor11, endColor12, 2);
|
|
|
|
SecurityToken = securityToken;
|
|
utcMinutes = parseInt(UtcMinutes, 10);
|
|
|
|
//UserId = userId;
|
|
//UserId = $("#DealerId").data("kendoComboBox").value();
|
|
// Getting first and last date from a month
|
|
var startDate = $("#monthpickerFrom").val();
|
|
var endDate = $("#monthpickerTo").val();
|
|
|
|
|
|
}
|
|
|
|
|
|
/**
|
|
* To show Tile dashboard.
|
|
* @method showTileDashboard
|
|
* @for TileDashboard
|
|
*/
|
|
function showTileDashboard() {
|
|
refreshDashboard();
|
|
}
|
|
|
|
|
|
//==========================DOCUMNET READY=========================
|
|
/**
|
|
* To do some initial functionality on page when Document is ready.
|
|
* @event document.ready
|
|
* @for TileDashboard
|
|
*/
|
|
$(document).ready(function () {
|
|
// Loading Dashboard data.
|
|
showTileDashboard();
|
|
//Refresh Dashboard every-hour
|
|
setInterval("showTileDashboard()", 1000 * 60 * 60);
|
|
|
|
// for image cycle.
|
|
$('#defaultCube,#defaultCube1,#defaultCube2,#defaultCube3,#defaultCube4').cycle({
|
|
fx: 'slideY', // vertical scroll
|
|
speed: 1000, // speed to scroll the image
|
|
timeout: 20000// set your time b/w every image scrolldown effect
|
|
});
|
|
});
|
|
//==========================DOCUMNET READY END=======================
|