/*================================================================================================================\ + + Project : GoData-Eicher + Filename : consolidatedReport.jsjs + Module Name : ReportModule + Purpose : For reporting + Coded By : Parul Gupta + Updated By : Preeti Burad (28 mar 2018) +================================================================================================================*/ /** * For reporting * @module ReportModule */ /** * This class contains functionality of Consolidated report * @class ConsolidatedReport * @constructor */ var xhr_exportExport, xhr_exportExportCsv; /** * Function to get consolidated data and chart based on selected tab. * @method getReport * @for ConsolidatedReport */ function getReport() { var selectedTab = $(".tabs").find('li.selected')[0].id; //$("#divLoadingElement").hide(); // get selected tab if (selectedTab == "tab_eosCallContribution") { getConsolidatedReport(); } else { getConsolidatedReport_Chart() } } //Added by mayuri on 23/07/25 function enableSubmit() { if (document.getElementById('fileSelector').value != '') { $("#btnUpload").removeAttr("disabled"); } } function hideLoader() { // alert(''); $("#divLoadingElement").hide(); } function uploadDelayReason() { var fileUpload = $("#fileSelector").get(0); var files = fileUpload.files; if (files.length === 0) { jAlert("Please select a file first."); return; } var extension = files[0].name.split('.').pop().toLowerCase(); if (extension !== "xlsx") { jAlert("Only .xlsx files are supported!"); return; } if (!files[0].name.toLowerCase().includes("kam")) { jAlert("Invalid file! "); return; } var formData = new FormData(); for (var i = 0; i < files.length; i++) { formData.append(files[i].name, files[i]); } var loaderTimeout = setTimeout(function () { hideLoader(); // Your function to hide loader jAlert('File ploaded Successfully'); }, 30000); // 30 seconds $.ajax({ url: '/Ticket/BulkUploadPreClosure', type: 'POST', contentType: false, processData: false, data: formData, success: function (response) { alert(response); clearTimeout(loaderTimeout); // Stop fallback timeout hideLoader(); // Hide loader normally if (response.Status === "1") { jAlert('KAM File uploaded successfully!', '', function () { window.location.reload(); }); } else { jAlert('Upload failed.', '', function () { window.location.reload(); }); } }, error: function () { jAlert('An error occurred while uploading the file.'); } }); } /** * Function to get consolidated data * @method getConsolidatedReport * @for ConsolidatedReport */ function getConsolidatedReport() { $("#overlay").show(); var startDate, endDate, organization, vehicleTagging; var userID = userId; startDate = $("#startDate").val(); endDate = $("#endtDate").val(); organization = (($("#OrganizationName").data('kendoComboBox').text() == "All") || ($("#OrganizationName").data('kendoComboBox').value() == "7")) ? "" : $("#OrganizationName").data('kendoComboBox').text(); vehicleTagging = $("#ddVehicleType").val(); //alert($("#ddFilterType").val()); var strFilterType = "data," + $("#ddFilterType").val(); //alert(strFilterType); var date1 = new Date(startDate); var date2 = new Date(endDate); var timeDiff = Math.abs(date2.getTime() - date1.getTime()); var diffDays = Math.ceil(timeDiff / (1000 * 3600 * 24)); if (diffDays <= 90) { //send ajax request $.ajax({ type: "POST", url: "/Report/ConsolidatedReport_Grid/", data: { userId: userID, startDate: startDate, endDate: endDate, organization: organization, vehicleTagging: vehicleTagging, filterType: strFilterType ,consolidate_type: "new"}, success: function (data) { $('#divGrid').show(); $("#divGrid").html(data); $("#overlay").hide(); $('#divGrid_Chart').hide(); if (document.getElementById('ConsolidatedGrid') !== null) { setTimeout(function () { if ($("#ConsolidatedGrid .k-grid-content table tbody tr").length > 0) { $('.excelIcon').show(); } else { $('.excelIcon').hide(); } }, 1000); } else { $('.excelIcon').hide(); } }, complete: function () { }, error: function (data) { $("#overlay").hide(); console.log(data); } }); } else { $("#overlay").hide(); jAlert("Please select 3 months data only.", 'message'); } } /** * Function to get consolidated data in chart form. * @method getConsolidatedReport_Chart * @for ConsolidatedReport */ function getConsolidatedReport_Chart() { $("#overlay").show(); var startDate, endDate, organization, vehicleTagging; var userID = userId; startDate = $("#startDate").val(); endDate = $("#endtDate").val(); organization = (($("#OrganizationName").data('kendoComboBox').text() == "All") || ($("#OrganizationName").data('kendoComboBox').value() == "7")) ? "" : $("#OrganizationName").data('kendoComboBox').text(); vehicleTagging = $("#ddVehicleType").val(); var date1 = new Date(startDate); var date2 = new Date(endDate); var timeDiff = Math.abs(date2.getTime() - date1.getTime()); var diffDays = Math.ceil(timeDiff / (1000 * 3600 * 24)); if (diffDays <= 90) { //send ajax request $.ajax({ type: "POST", url: "/Report/ConsolidatedReport_Chart/", data: { userId: userID, startDate: startDate, endDate: endDate, organization: organization, vehicleTagging: vehicleTagging }, success: function (data) { $('#divGrid_Chart').show(); $("#divGrid_Chart").html(data); $("#overlay").hide(); $('#divGrid').hide(); if (document.getElementById('ConsolidatedGrid') !== null) { setTimeout(function () { if ($("#ConsolidatedGrid .k-grid-content table tbody tr").length > 0) { $('.excelIcon').show(); } else { $('.excelIcon').hide(); } }, 1000); } else { $('.excelIcon').hide(); } }, complete: function () { }, error: function (data) { $("#overlay").hide(); console.log(data); } }); } else { $("#overlay").hide(); jAlert("Please select 3 months data only.", 'message'); } } /** * Function call on row bound of close tickets table * @method onRowBound * @for ConsolidatedReport */ function onRowBound(e) { $('.k-grid-TimeSlot').text("").removeClass("k-button k-button-icontext"); // called common file function to show title on mouse hover. addTitleAttribute(); // time slot functionality var data = this.dataSource.view(); console.log(this.dataSource.view()); for (var i = 0; i < data.length; i++) { //get uid of row var uid = data[i].uid; //get creation time of ticket var ticketCreationDateTime = data[i].creation_time; var split_ticketCreationDateTime = ticketCreationDateTime.split(" "); var ticketCreationTime = split_ticketCreationDateTime[3]; var row = this.table.find("tr[data-uid='" + uid + "']"); for (var count = 0; count < 12; count++) { if ((Date.parse('01/01/0001 ' + ticketCreationTime) >= Date.parse('01/01/0001 ' + (2 * count) + ':00:00')) && (Date.parse('01/01/0001 ' + ticketCreationTime) <= Date.parse('01/01/0001 ' + ((2 * count) + 1) + ':59:59'))) { row.find('.k-grid-TimeSlot').text("").removeClass("k-button k-button-icontext").html("" + (2 * count) + ":00 - " + ((2 * count) + 2) + ":00 "); break; } console.log(count); } } //var grid = $("#ConsolidatedGrid").data("kendoGrid"); //var gridData = grid.dataSource.view(); //for (var i = 0; i < gridData.length; i++) { // if (gridData[i].call_closure_status == "Yes") { // grid.table.find("tr[data-uid='" + gridData[i].uid + "']").addClass("highlighted-row"); // } //} // Date.parse('01/01/0001 10:20:45') < Date.parse('01/01/0001 5:10:10') } /** * To get filter parameters and export report. * @method exportReport * @for ConsolidatedReport */ function exportReport() { var userID = userId; var startDate = $("#startDate").val(); var endDate = $("#endtDate").val(); organization = (($("#OrganizationName").data('kendoComboBox').text() == "All") || ($("#OrganizationName").data('kendoComboBox').value() == "7")) ? "" : $("#OrganizationName").data('kendoComboBox').text(); vehicleTagging = $("#ddVehicleType").val(); var strFilterType = "data," + $("#ddFilterType").val(); // sending ajax request to export ICR Unique Users and Data Usage to Excel, and hadling its completion if (xhr_exportExport && xhr_exportExport.readystate != 4) { xhr_exportExport.abort(); } xhr_exportExport = $.ajax({ type: "POST", url: "/Report/ConsolidatedReport_ExportToExcel/", data: { UserId: userID, startDate: startDate, endDate: endDate, organization: organization, vehicleTagging: vehicleTagging, filterType: strFilterType }, success: function (data) { console.log(data) // making the generated Excel available for downloading. window.location.href = data; }, complete: function () { }, error: function (data) { console.log(data) console.log("Error in Export to Excel"); } }); } /** * To get filter parameters and export report. * @method exportReportCSV * @for ConsolidatedReport */ //function exportReportCSV() { // $("#overlay").show(); // var userID = userId; // var startDate = $("#startDate").val(); // var endDate = $("#endtDate").val(); // organization = (($("#OrganizationName").data('kendoComboBox').text() == "All") || ($("#OrganizationName").data('kendoComboBox').value() == "7")) ? "" : $("#OrganizationName").data('kendoComboBox').text(); // vehicleTagging = $("#ddVehicleType").val(); // // sending ajax request to export ICR Unique Users and Data Usage to Excel, and hadling its completion // if (xhr_exportExportCsv && xhr_exportExportCsv.readystate != 4) { // xhr_exportExportCsv.abort(); // } // xhr_exportExportCsv = $.ajax({ // type: "POST", // url: "/Report/ConsolidatedReport_ExportToCSV/", // data: { UserId: userID, startDate: startDate, endDate: endDate, organization: organization, vehicleTagging: vehicleTagging }, // success: function (data) { // $("#overlay").hide(); // // making the generated Excel available for downloading. // window.location.href = data; // }, // complete: function () { // }, // error: function (data) { // $("#overlay").hide(); // console.log("Error in Export to Excel"); // } // }); //} //-------------------------*** consolidate report download modified function ***--------------------------------// //added on 07-10-2020 // function exportReportCSV() { // $("#overlay").show(); // var userID = userId; // var startDate = $("#startDate").val(); // var endDate = $("#endtDate").val(); // organization = (($("#OrganizationName").data('kendoComboBox').text() == "All") || ($("#OrganizationName").data('kendoComboBox').value() == "7")) ? "" : $("#OrganizationName").data('kendoComboBox').text(); // vehicleTagging = $("#ddVehicleType").val(); // // sending ajax request to export ICR Unique Users and Data Usage to Excel, and hadling its completion // if (xhr_exportExportCsv && xhr_exportExportCsv.readystate != 4) { // xhr_exportExportCsv.abort(); // } // xhr_exportExportCsv = $.ajax({ // type: "POST", // url: "/Report/ConsolidatedReport_ExportToCSV_New/", // data: { UserId: userID, startDate: startDate, endDate: endDate, organization: organization, vehicleTagging: vehicleTagging }, // success: function (data) { // $("#overlay").hide(); // // making the generated Excel available for downloading. // window.location.href = data; // }, // complete: function () { // }, // error: function (data) { // $("#overlay").hide(); // console.log("Error in Export to Excel"); // } // }); // } // new function exportReportCSV() { $("#overlay").show(); var userID = userId; console.log(userID); var apiUrl = WCFRESTURL.GetConsolidateCount; var apiurldata = WCFRESTURL.GetConsolidateDataList; //SecurityToken = securityToken; //utcMinutes = parseInt(UtcMinutes, 10); //SecurityToken = securityToken; console.log(apiUrl); console.log(apiurldata); var startDate = $("#startDate").val(); var endDate = $("#endtDate").val(); console.log(startDate + "endDate" + endDate); organization = (($("#OrganizationName").data('kendoComboBox').text() == "All") || ($("#OrganizationName").data('kendoComboBox').value() == "7")) ? "" : $("#OrganizationName").data('kendoComboBox').text(); vehicleTagging = $("#ddVehicleType").val(); // sending ajax request to export ICR Unique Users and Data Usage to Excel, and hadling its completion var params = new URL(document.location.toString()).searchParams; var name = params.get("reassigntickets"); var dtcname = params.get("DTCReport"); var rep = 't'; console.log(rep); console.log(name); console.log(dtcname); var queryString = window.location.search; var strFilterType = "data," + $("#ddFilterType").val(); // Use the URLSearchParams object to handle query parameters var params = new URLSearchParams(queryString); // Get the number of query parameters var paramCount = Array.from(params).length; console.log(paramCount); if (paramCount == 2) { if (name == "yes") { console.log('dtcname'); rep = 'f'; // alert('if 123'); ReassignReportDownload(startDate, endDate); } if (dtcname == "Download") { rep = 'f'; // alert('if 123'); DTCReportDownloadBYDate(startDate, endDate); } } else { if (xhr_exportExportCsv && xhr_exportExportCsv.readystate != 4) { xhr_exportExportCsv.abort(); } xhr_exportExportCsv = $.ajax({ type: "Post", // url: "/Report/ConsolidatedReport_ExportToCSV_New/", url: apiUrl, data: { UserId: userID, StartDate: startDate, EndDate: endDate, FromDate: startDate, UtcMinute: UtcMinutes, ToDate: endDate, Organization: organization, VehicleType: vehicleTagging, Token: securityToken, Limit: "20", OffSet: "0", _timeOffSetMinutes: "330", TicketType: strFilterType, consolidaetype:"new" }, dataType: "json", success: function (result) { // console.log(result); //$("#overlay").hide(); if (xhr_exportExportCsv && xhr_exportExportCsv.readystate != 4) { xhr_exportExportCsv.abort(); } xhr_exportExportCsv = $.ajax({ type: "Post", // url: "http://eos.eicher.in:8181/Api/Ticket?tickettype=data&Download=yes&consolidateddata=hh&iscount=false&isajax=t&isajaxcount=true&isajaxdatacount=yes", url: apiurldata, data: { UserId: userID, StartDate: startDate, EndDate: endDate, FromDate: startDate, ToDate: endDate, UtcMinute: UtcMinutes, Organization: organization, VehicleType: vehicleTagging, Token: securityToken, Limit: "100000", OffSet: "0", _timeOffSetMinutes: "330", TicketType: strFilterType, consolidaetype:"new" }, dataType: "json", //timeout: 50000, success: function (result) { console.log('hi1'); console.log(result); //alert = (data); // making the generated Excel available for downloading. //if (xhr_exportExportCsv.status == 200) { window.location.href = result; $("#overlay").hide(); //} }, complete: function () { // alert = ('hi'); console.log('hi2'); }, error: function (data) { console.log('hi3'); console.log(data); $("#overlay").hide(); console.log("Error in Export to Excel"); } }); }, complete: function () { // alert = ('hi'); }, error: function (data) { console.log(data); $("#overlay").hide(); console.log("Error in Export to Excel"); } }); } } function DTCReportDownloadBYDate(startDate, endDate) { $("#overlay").show(); var apiUrl = url + "Api/Admin?DTCReport=yes&DTCFlag=yes&ReassignReport=yes&TechnicianReport=yes&techReport=yes&VanReport=yes&isdealer=user&van=check&dealer=check&isajaxcount=check&Download=check"; // var apiUrl = url + "Report/ConsolidatedReport?currtime=638539904591341514&reassigntickets=yes"; $.ajax({ url: apiUrl, type: 'Post', dataType: 'json', data: { StartDate: startDate, EndDate: endDate, UtcMinute: UtcMinutes, _timeOffSetMinutes: "330" }, success: function (data, textStatus, xhr) { window.location.href = data; $("#overlay").hide(); }, error: function (xhr, textStatus, errorThrown) { } }); } function ReassignReportDownload(startdate, enddate) { $("#overlay").show(); var apiUrl = url + "Api/Admin?ReassignReportNew=yes&ReassignReport=yes&TechnicianReport=yes&techReport=yes&VanReport=yes&isdealer=user&van=check&dealer=check&isajaxcount=check&Download=check"; // var apiUrl = url + "Report/ConsolidatedReport?currtime=638539904591341514&reassigntickets=yes"; // console.log('ReassignReportDownload'); $.ajax({ url: apiUrl, type: 'Post', dataType: 'json', data: { StartDate: startdate, EndDate: enddate, UtcMinute: UtcMinutes, _timeOffSetMinutes: "330" }, success: function (data, textStatus, xhr) { window.location.href = data; $("#overlay").hide(); //return false; }, error: function (xhr, textStatus, errorThrown) { } }); } /** * Function To bind vehicle product variant list * @method bindVehicleProductVariant * @for ManageEscalation */ function bindVehicleProductVariant() { // empty data source dropdown. $("#ddVehicleType").text(""); // by default add select text. $("#ddVehicleType").append($('').val("").html("All")); $("#ddVehicleType").append($('').val("HD").html("HD")); $("#ddVehicleType").append($('').val("LMD").html("LMD")); $("#ddVehicleType").append($('').val("BUS").html("BUS")); $("#ddVehicleType").append($('').val("EPS").html("EPS")); $("#ddVehicleType").append($('').val("SCV").html("SCV")); // add data to dropdown. //if (vehicleProductVariantList) { // //console.log('v p v'); // for (var counter = 0; counter < vehicleProductVariantList.length; counter++) { // $("#ddVehicleType").append($('').val(vehicleProductVariantList[counter].Value).html(vehicleProductVariantList[counter].Text)); // } //} } //============================= document ready function ===============================// $(document).ready(function () { $('.excelIcon').hide(); // getConsolidatedReport(); //Tab functionality $("#tab_eosCallContribution").click(function () { $(this).addClass('selected'); $('#tab_Chart').removeClass('selected'); $('#divGrid').show(); $('#divGrid_Chart').hide(); getConsolidatedReport(); }); $("#tab_Chart").click(function () { $(this).addClass('selected'); $('#tab_eosCallContribution').removeClass('selected'); $('#divGrid').hide(); $('#divGrid_Chart').show(); getConsolidatedReport_Chart(); }); $("#overlay").hide(); }); //==================================== Not in Use ====================================// /** * Add 1 month in endDate based on the startDate. * @method onChangeDateSelection * @for ConsolidatedReport */ function onChangeDateSelection() { 'use strict'; var selectedDate; // get selected date selectedDate = new Date($("#startDate").val()); //Add 7 days to selected date selectedDate.setMonth(selectedDate.getMonth() + 1); $("#endtDate").data("kendoDatePicker").value(selectedDate); } function onDataBoundChart() { } //===================================================================================//