frameworkModule.controller('dashboardDeferredTaxAnalysisController', ["$scope", "$compile", "$timeout", function ($scope, $compile, $timeout) {
    'use strict';

    /***************************************** DEMO CODE BEGIN *****************************************/
        //TODO:DEMO 数据正式版中应该动态取值
    var orgList = [
        {"ID": "root", "name": "XXX制造有限公司总公司", "expanded": true, "status": "未开始"},
        {"ID": "1", "categoryId": "root", "name": "XXX制造有限公司A1分公司", "expanded": true, "status": "已提交"},
        {"ID": "2", "categoryId": 'root', "name": "XXX制造有限公司A2分公司", "expanded": true, "status": "已提交"},
        {"ID": "3", "categoryId": 'root', "name": "XXX制造有限公司A3分公司", "expanded": true, "status": "未开始"},
        {"ID": "4", "categoryId": 'root', "name": "XXX制造有限公司A4分公司", "expanded": true, "status": "未开始"},
        {"ID": "5", "categoryId": 'root', "name": "XXX制造有限公司A5分公司", "expanded": true, "status": "未开始"},
        {"ID": "6", "categoryId": "root", "name": "XXX制造有限公司A6分公司", "expanded": true, "status": "未开始"}
    ];
    $scope.assetStructureDEMOData = [
        {value: 4000.00, name: '递延收益'},
        {value: 0.00, name: '公允价值变动'},
        {value: 15250, name: '预提性质费用'},
        {value: 6250, name: '预计负债'},
        {value: 139040, name: '折旧 / 摊销'},
        {value: 56500, name: '准备金或减值准备'},
        {value: 0.00, name: '特殊事项'},
        {value: 50000, name: '税务亏损'},
        {value: 0, name: '其他'},
        {value: 0.00, name: '未实现内部交易(合并层面)'}
    ];

    $scope.taxStructureDEMOData = [
        {value: 0.00, name: '递延收益'},
        {value: 8500, name: '公允价值变动'},
        {value: 0, name: '预提性质费用'},
        {value: 0, name: '预计负债'},
        {value: 0, name: '折旧 / 摊销'},
        {value: 0, name: '准备金或减值准备'},
        {value: 14000, name: '特殊事项'},
        {value: 0, name: '税务亏损'},
        {value: 5750, name: '其他'},
        {value: 0, name: '未实现内部交易(合并层面)'}
    ];

    $scope.variationAnalysisData = [4000, 0, 15250, 6250, 139040, 56500, 0, 50000, 0, 0];

    /***************************************** DEMO CODE END *****************************************/

    $scope.selectedOrgIds = ["root"];
    $scope.selectOrgBoxOptions = {
        bindingOptions: {
            value: "selectedOrgIds"
        },
        dataSource: orgList,
        displayExpr: "name",
        valueExpr: "ID",
        placeholder: '. . .',
        showClearButton: false,
        width: '22em',
        treeView: {
            dataSource: orgList,
            dataStructure: "plain",
            focusStateEnabled: false,
            keyExpr: "ID",
            parentIdExpr: "categoryId",
            displayExpr: "name",
            selectByClick: true,
            selectNodesRecursive: false,
            showCheckBoxesMode: "none",
            selectionMode: 'single',
            treeViewInstance: null,
            onContentReady: function (e) {
                e.component.unselectAll();
                if ($scope.selectedOrgIds && $scope.selectedOrgIds.length > 0)
                    e.component.selectItem($scope.selectedOrgIds[0]);
            },
            onItemSelectionChanged: function (args) {
                var value = args.component.getSelectedNodesKeys();
                $scope.selectedOrgIds = value;
            }
        }
    };
    $scope.period = new Date();
    $scope.periodSelectorOption = {
        bindingOptions: {
            value: "period"
        },
        acceptCustomValue: false,
        displayFormat: "yyyy年MM月",
        maxZoomLevel: "year",
        minZoomLevel: "year",
        min: "2010/1/1",
        max: "2030/12/31"
    };
    $scope.dimensions = null;
    $scope.dimensionsSelectorOption = {
        width: '10em',
        value: '1',
        valueExpr: 'ID',
        displayExpr: 'name',
        dataSource: [
            {
                'ID': "1",
                'name': "按机构",
            },
            {
                'ID': "2",
                'name': "按区域",
            },
            {
                'ID': "3",
                'name': "按事业部",
            }
        ],
        onSelectionChanged: function (e) {
            $scope.dimensions = e.selectedItem;
        }
    };
}]);