API Docs for:
Show:

File: Inventory\OrganizationChart.js

/*================================================================================================================\
+
+ 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);
        }
    });

}