"use strict";

var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard"), _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");

Object.defineProperty(exports, "__esModule", {
    value: !0
}), exports.default = void 0;

var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")), _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")), _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")), _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized")), _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits")), _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn")), _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf")), _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")), _react = _interopRequireWildcard(require("react")), _propTypes = _interopRequireDefault(require("prop-types")), _amosFramework = require("amos-framework"), _CommonDeviceCell = _interopRequireDefault(require("./CommonDeviceCell")), _CreateDeviceSearch = _interopRequireDefault(require("./CreateDeviceSearch")), _CreateDeviceLeft = _interopRequireDefault(require("./CreateDeviceLeft"));

require("./createDeviceHost.scss");

var _deviceService = require("./../../../services/deviceService");

function _createSuper(e) {
    var t = _isNativeReflectConstruct();
    return function() {
        var a, r = (0, _getPrototypeOf2.default)(e);
        if (t) {
            var i = (0, _getPrototypeOf2.default)(this).constructor;
            a = Reflect.construct(r, arguments, i);
        } else a = r.apply(this, arguments);
        return (0, _possibleConstructorReturn2.default)(this, a);
    };
}

function _isNativeReflectConstruct() {
    if ("undefined" == typeof Reflect || !Reflect.construct) return !1;
    if (Reflect.construct.sham) return !1;
    if ("function" == typeof Proxy) return !0;
    try {
        return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], (function() {}))), 
        !0;
    } catch (e) {
        return !1;
    }
}

var DeviceTypePanel = function(e) {
    (0, _inherits2.default)(a, e);
    var t = _createSuper(a);
    function a(e) {
        var r;
        return (0, _classCallCheck2.default)(this, a), r = t.call(this, e), (0, _defineProperty2.default)((0, 
        _assertThisInitialized2.default)(r), "componentDidMount", (function() {
            r.questStatistiscData();
        })), (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(r), "getTemplateContent", (function() {
            var e = r.state.statisticsData, t = [];
            return e && e.map((function(e) {
                var a = e.eqpTemplate;
                a && t.push(_react.default.createElement(_CommonDeviceCell.default, (0, _extends2.default)({
                    key: a.id,
                    deleteTemplate: r.questdeleteNode,
                    clickDeviceTemplate: r.clickDeviceTemplate,
                    type: 2,
                    deviceInfo: a,
                    imgUrl: a.img,
                    deviceNum: e.count
                }, r.props)));
            })), t;
        })), (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(r), "setSearchParam", (function(e) {
            r.setState({
                searchParam: e
            }), r.questStatistiscData(e);
        })), (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(r), "clickDeviceTemplate", (function(e) {
            (0, _deviceService.fetchTemplatOrEqpIntfcAction)(e.id).then((function(t) {
                var a = t;
                (0, _extends2.default)(e, {
                    intfcList: a
                }), r.setState({
                    device: e
                });
            })), (0, _deviceService.fetchTemplatOrEqpQuotaAction)(e.id).then((function(t) {
                var a = t;
                (0, _extends2.default)(e, {
                    quotaList: a
                }), r.setState({
                    device: e
                });
            }));
        })), (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(r), "clickMask", (function() {
            r.setState({
                device: void 0
            });
        })), (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(r), "questStatistiscData", (function(e) {
            var t = r.state.searchParam;
            e = void 0 === e ? t : e, (0, _deviceService.fetchTemplateStatisticsAction)(e).then((function(e) {
                var t = e.data, a = e.totalCount;
                r.setState({
                    statisticsData: t,
                    totalCount: a
                });
            }));
        })), (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(r), "questdeleteNode", (function(e) {
            if (void 0 !== e) {
                var t = r.deleteTemplate;
                _amosFramework.Modal.confirm({
                    title: "确认删除",
                    content: "是否删除所选信息？",
                    okText: "确定",
                    cancelText: "取消",
                    onOk: function() {
                        t(e);
                    },
                    onCancel: function() {}
                });
            }
        })), (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(r), "deleteTemplate", (function(e) {
            (0, _deviceService.deleteEquipmentTemplateAction)(e).then((function(e) {
                r.questStatistiscData(), _amosFramework.message.success("删除成功"), r.clickMask();
            }));
        })), r.state = {
            searchParam: {},
            statisticsData: [],
            totalCount: 0
        }, r;
    }
    return (0, _createClass2.default)(a, [ {
        key: "render",
        value: function() {
            var e = this.state, t = e.device, a = e.statisticsData, r = e.totalCount;
            return _react.default.createElement("div", {
                className: "create-device-root"
            }, _react.default.createElement("div", {
                className: "create-device-host-top"
            }, _react.default.createElement(_CreateDeviceSearch.default, {
                setSearchParam: this.setSearchParam
            })), _react.default.createElement("div", {
                className: "create-device-host-bottom",
                onClick: this.clickMask
            }, _react.default.createElement("div", {
                className: "create-device-host-left"
            }, _react.default.createElement(_CreateDeviceLeft.default, {
                device: t,
                statisticsData: a,
                totalCount: r
            })), _react.default.createElement("div", {
                className: "create-device-host-right"
            }, this.getTemplateContent())));
        }
    } ]), a;
}(_react.Component);

DeviceTypePanel.displayName = "DeviceTypePanel", DeviceTypePanel.propTypes = {
    updateMainView: _propTypes.default.func
};

var _default = DeviceTypePanel;

exports.default = _default;