EOS/Scripts/Inventory/OrganizationChart.js
Nidhi Bhargava f0c1ab20e1 code push
2025-09-04 16:25:07 +05:30

60 lines
2.0 KiB
JavaScript

/*================================================================================================================\
+
+ Project : GODATA Eicher
+ Filename : OrganizationChart.js
+ Module Name : Inventory Module
+ Purpose : Organization Chart
+ Coded By : Gourav Jhangikhel
+
+================================================================================================================*/
/**
* This Module Organization Chart.
* @module Inventory
*/
/**
* This class contains functions related to Organization Chart.
* @class OrganizationChart
* @constructor
*/
google.load("visualization", "1", { packages: ["orgchart"] });
google.setOnLoadCallback(drawChart);
/**
* Load and Draw Google Chart based on value comes from server .
* @method drawChart
* @for OrganizationChart
*/
function drawChart() {
var vArr = new Array();
var data = new google.visualization.DataTable();
$.ajax({
type: "GET",
url: "/Inventory/GetListOrganizationChart/",
success: function (response) {
//Intialize Columns For DataTable
data.addColumn('string', 'OrganizationName');
data.addColumn('string', 'Parent');
for (var count = 0 ; count <= response.length - 1; count++) {
var vArrData = new Array();
vArrData.push(response[count].OrganizationName, response[count].Parent);
vArr.push(vArrData);
}
//Add Row According to Organization
data.addRows(vArr);
for (var dtRowCnt = 0; dtRowCnt <= response.length - 1 ; dtRowCnt++) {
data.setRowProperty(dtRowCnt, 'style', "background:" + response[dtRowCnt].Color);
}
//Draw Chart
var chart = new google.visualization.OrgChart(document.getElementById('chart_div'));
chart.draw(data, { allowHtml: true, size: 'large' });
},
error: function (data) {
console.log(data);
}
});
}