//GLOBALS
var graph_companies = null;
var graph_dms = null;
var graph_complete_incomplete = null;
var graph_incomplete = null;
var filtered_company = '';
var filtered_date_start = '';
var filtered_date_end = '';
//ajax request
var customer_count_ajax = null;
var vehicle_count_ajax = null;
var service_count_ajax = null;
var sale_count_ajax = null;
var get_dms_count_ajax = null;
var get_company_count_ajax = null;
var getCustomerSummaaryCount_ajax = null;
function addCommas(nStr) {
nStr += '';
x = nStr.split('.');
x1 = x[0];
x2 = x.length > 1 ? '.' + x[1] : '';
var rgx = /(\d+)(\d{3})/;
while (rgx.test(x1)) {
x1 = x1.replace(rgx, '$1' + ',' + '$2');
}
return x1 + x2;
}
function cb(start, end) {
if (start !== '' && end !== '') {
var startDate = start.format('YYYY-MM-DD');
var endDate = end.format('YYYY-MM-DD');
passDate(startDate, endDate);
} else {
passDate(start, end); //pass empty dates
}
}
function resetDateRangePicker() {
// daterangepicker_filter = false;
var start = moment().add(1, 'days');
var end = moment().add(1, 'days');
$("#filter-date").data('daterangepicker').setStartDate(start);
$("#filter-date").data('daterangepicker').setEndDate(end);
$('#filter-date').data('daterangepicker').chosenLabel = 'Disable';
$('#filter-date').data('daterangepicker').hideCalendars();
$('.daterangepicker').css('width', 'auto');
$('#filter-date span').html('Date Filter');
cb('', '');
}
function getTotalCustomerCount(startDate, endDate, company) {
// $.ajax({
// url: "api/customer/customerv2.php",
// method: "POST",
// dataType: 'json',
// data: {
// startDate: startDate,
// endDate: endDate,
// company: company,
// apiKey: '3394212010636793'
// },
// beforeSend: function() {
// $('.customer_total_loading').show();
// },
// success: function(result) {
// // alert(result.total)
// $('#customer_total').text(addCommas(result.total));
// $('.customer_total_loading').hide();
// }
// });
}
function getCustomerSummaaryCount(vehicle_total, startDate, endDate, company) {
getCustomerSummaaryCount_ajax = $.ajax({
url: "api/customer/customerv2.php",
method: "POST",
dataType: 'json',
data: {
startDate: startDate,
endDate: endDate,
company: company,
apiKey: '5441890951433809',
vehicle_total : vehicle_total
},
beforeSend: function() {},
success: function(result) {
var json = JSON.stringify(result);
data = JSON.parse(json);
$.each(data, function(i, n) {
var target = $('#count_' + i);
if (target.is("span")) {
target.text(addCommas(n));
} else {
target.css('width', n);
$('#count_' +i+'_title').attr('data-original-title', n);
}
});
$('.customer_countings_loading').hide();
}
});
}
// function initToolTip(){
// var bootstrapTooltip = $.fn.tooltip.noConflict();
// $.fn.bstooltip = bootstrapTooltip;
// $('.tooltip-me').bstooltip();
// }
function getTotalVehicleCount(startDate, endDate, company) {
vehicle_count_ajax = $.ajax({
url: "api/vehicle/vehiclev2.php",
method: "POST",
dataType: 'json',
data: {
startDate: startDate,
endDate: endDate,
company: company,
apiKey: '9306656513579817'
},
beforeSend: function() {
$('.vehicle_total_loading').show();
$('.customer_countings_loading').show();
},
success: function(result) {
// alert(result.total)
$('#vehicle_total').text(addCommas(result.total));
getCustomerSummaaryCount(result.total, startDate, endDate, company);
$('.vehicle_total_loading').hide();
}
});
}
function getTotalServiceCount(startDate, endDate, company) {
service_count_ajax = $.ajax({
url: "api/service/servicev2.php",
method: "POST",
dataType: 'json',
data: {
startDate: startDate,
endDate: endDate,
company: company,
apiKey: '1895061658011882'
},
beforeSend: function() {
$('.service_total_loading').show();
},
success: function(result) {
// alert(result.total)
$('#service_total').text(addCommas(result.total));
$('.service_total_loading').hide();
}
});
}
function getTotalSalesCount(startDate, endDate, company) {
sale_count_ajax = $.ajax({
url: "api/sales/salesv2.php",
method: "POST",
dataType: 'json',
data: {
startDate: startDate,
endDate: endDate,
company: company,
apiKey: '1459051109379886'
},
beforeSend: function() {
$('.sales_total_loading').show();
},
success: function(result) {
// alert(result.total)
$('#sales_total').text(addCommas(result.total));
$('.sales_total_loading').hide();
}
});
}
function showGraphCompany(startDate, endDate, company) {
get_company_count_ajax = $.ajax({
url: "app/misc/get_company_count.php",
method: "POST",
dataType: 'json',
data: {
startDate: startDate,
endDate: endDate,
company: company
},
beforeSend: function() {
$('.company_countings_loading').show();
},
success: function(data) {
// alert(result.total)
// console.log(data);
var tooltip = "";
var id = [];
var name = [];
var marks = [];
var total = 0;
for (var i in data) {
name.push(data[i].code);
marks.push(data[i].total);
id.push(data[i].id);
total = total + parseInt(data[i].total);
tooltip = tooltip + data[i].code + ' - ' +addCommas(data[i].total) + '
';
}
$('#bar-chart-company-title').attr('data-original-title', tooltip);
var chartdata = {
labels: name,
ids: id,
datasets: [{
label: 'Total: ' + addCommas(total),
backgroundColor: '#17a2b8',
borderColor: '#46d5f1',
hoverBackgroundColor: '#00c0ef',
hoverBorderColor: '#666666',
data: marks
}]
};
var barOptions = {
responsive: true,
maintainAspectRatio: false,
onClick: graphClickEventCompany,
tooltips: {
callbacks: {
label: function(tooltipItem, data) {
var value = data.datasets[0].data[tooltipItem.index];
return addCommas(value)
}
} // end callbacks:
}, //end tooltips
scales: {
yAxes: [{
ticks: {
precision: 0,
beginAtZero: true,
callback: function(label, index, labels) {
if (parseInt(label) >= 1000000) {
return label / 1000000 + 'M';
} else if (parseInt(label) >= 1000) {
return label / 1000 + 'K';
} else {
return label;
}
}
},
// scaleLabel: {
// display: true,
// labelString: '1k = 1000'
// }
}],
xAxes: [{
ticks: {
autoSkip: false,
maxRotation: 90,
minRotation: 90
}
}]
}
}
var graphTarget = $("#bar-chart-company");
if (graph_companies != null) {
graph_companies.destroy();
}
graph_companies = new Chart(graphTarget, {
type: 'bar',
data: chartdata,
options: barOptions
});
$('.company_countings_loading').hide();
}
});
}
function showGraph(startDate, endDate, company) {
get_dms_count_ajax = $.ajax({
url: "app/misc/get_dms_count.php",
method: "POST",
dataType: 'json',
data: {
startDate: startDate,
endDate: endDate,
company: company
},
beforeSend: function() {
$('.dms_countings_loading').show();
},
success: function(data) {
// alert(result.total)
// console.log(data);
var tooltip = "";
var id = [];
var name = [];
var marks = [];
var total = 0;
for (var i in data) {
name.push(data[i].name);
marks.push(data[i].total);
id.push(data[i].id);
total = total + parseInt(data[i].total);
tooltip = tooltip + data[i].name + ' - ' +addCommas(data[i].total) + '
';
}
$('#bar-chart-title').attr('data-original-title', tooltip+"