ibiz-chart-view-controller.js 4.2 KB
Newer Older
ibizdev's avatar
ibizdev committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147
"use strict";
var __extends = (this && this.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
/**
 * 数据图表视图控制器
 *
 * @class IBizChartViewController
 * @extends {IBizSearchViewController}
 */
var IBizChartViewController = /** @class */ (function (_super) {
    __extends(IBizChartViewController, _super);
    /**
     * Creates an instance of IBizChartViewController.
     * 创建 IBizChartViewController 对象
     *
     * @param {*} [opts={}]
     * @memberof IBizChartViewController
     */
    function IBizChartViewController(opts) {
        if (opts === void 0) { opts = {}; }
        return _super.call(this, opts) || this;
    }
    /**
     * 视图部件初始化
     *
     * @memberof IBizChartViewController
     */
    IBizChartViewController.prototype.onInitComponents = function () {
        var _this = this;
        _super.prototype.onInitComponents.call(this);
        var chart = this.getChart();
        if (chart) {
            chart.on(IBizChart.LOADED).subscribe(function (data) {
                _this.onStoreLoad(data);
            });
            chart.on(IBizChart.BEFORELOAD).subscribe(function (data) {
                _this.onStoreBeforeLoad(data);
            });
            chart.on(IBizChart.DBLCLICK).subscribe(function (data) {
                _this.onDataActivated();
            });
        }
    };
    /**
     * 视图加载
     *
     * @memberof IBizChartViewController
     */
    IBizChartViewController.prototype.onLoad = function () {
        _super.prototype.onLoad.call(this);
        if (!this.getSearchForm() && this.isLoadDefault()) {
            if (!this.isFreeLayout()) {
                if (this.getChart()) {
                    this.getChart().load();
                }
            }
            else {
                this.otherLoad();
            }
        }
    };
    /**
     * 获取图表部件
     *
     * @returns {*}
     * @memberof IBizChartViewController
     */
    IBizChartViewController.prototype.getChart = function () {
        return this.getControl('chart');
    };
    /**
     * 搜索表单触发加载
     *
     * @param {boolean} isload 是否加载
     * @memberof IBizChartViewController
     */
    IBizChartViewController.prototype.onSearchFormSearched = function () {
        if (!this.isFreeLayout()) {
            if (this.getChart()) {
                this.getChart().load();
            }
        }
        else {
            this.otherLoad();
        }
    };
    /**
     * 表单重置完成
     *
     * @memberof IBizChartViewController
     */
    IBizChartViewController.prototype.onSearchFormReseted = function () {
        if (!this.isFreeLayout()) {
            if (this.getChart()) {
                this.getChart().load();
            }
        }
        else {
            this.otherLoad();
        }
    };
    /**
     * 视图部件刷新
     *
     * @memberof IBizChartViewController
     */
    IBizChartViewController.prototype.onRefresh = function () {
        _super.prototype.onRefresh.call(this);
        if (!this.isFreeLayout()) {
            if (this.getChart()) {
                this.getChart().load();
            }
        }
        else {
            this.otherLoad();
        }
    };
    /**
     * 附加额外部件加载
     *
     * @memberof IBizChartViewController
     */
    IBizChartViewController.prototype.otherLoad = function () {
        if (this.controls) {
            this.controls.forEach(function (obj, key) {
                if (obj instanceof IBizForm || obj instanceof IBizToolbar) {
                    return;
                }
                if (obj.load) {
                    obj.load();
                }
            });
        }
    };
    return IBizChartViewController;
}(IBizSearchViewController));