UNPKG

ming-demo3

Version:
205 lines (176 loc) 7.4 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = void 0; var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn")); var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf")); var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits")); var _react = _interopRequireDefault(require("react")); var _baseui = require("@mdf/baseui"); var _basic = require("../basic"); var _rangepicker = _interopRequireDefault(require("../basic/rangepicker")); var Option = _baseui.Select.Option; var FilterControl = function (_React$Component) { (0, _inherits2["default"])(FilterControl, _React$Component); function FilterControl(props) { var _this; (0, _classCallCheck2["default"])(this, FilterControl); _this = (0, _possibleConstructorReturn2["default"])(this, (0, _getPrototypeOf2["default"])(FilterControl).call(this, props)); _this.state = { compareLogic: 'eq', selectedField: '', defaultValue: _this.props.selectedValue }; return _this; } (0, _createClass2["default"])(FilterControl, [{ key: "getFieldControl", value: function getFieldControl() { var self = this; var selectedField = this.props.dataSource.length && this.props.dataSource.filter(function (item) { return item.itemName == self.props.selectedValue; })[0]; var ctrlType = selectedField.ctrlType.trim().toLocaleLowerCase(); var compareLogic = this.props.compareLogic || this.state.compareLogic; var fromModel = this.props.model && this.props.model.getFromModel(); var toModel = this.props.model && this.props.model.getToModel(); var control; switch (ctrlType) { case 'input': if (compareLogic == 'between') { control = _react["default"].createElement(_basic.Row, null, _react["default"].createElement(_basic.Col, { span: 11 }, _react["default"].createElement(_basic.Input, { model: fromModel })), _react["default"].createElement(_basic.Col, { span: 2, className: "sp-range-txt" }, _react["default"].createElement("span", null, "\u81F3")), _react["default"].createElement(_basic.Col, { span: 11 }, _react["default"].createElement(_basic.Input, { model: toModel }))); } else control = _react["default"].createElement(_basic.Input, { model: fromModel }); break; case 'inputnumber': if (compareLogic == 'between') { control = _react["default"].createElement(_basic.Row, null, _react["default"].createElement(_basic.Col, { span: 11 }, _react["default"].createElement(_basic.InputNumber, { model: fromModel })), _react["default"].createElement(_basic.Col, { span: 2, className: "sp-range-txt" }, _react["default"].createElement("span", null, "\u81F3")), _react["default"].createElement(_basic.Col, { span: 11 }, _react["default"].createElement(_basic.InputNumber, { model: toModel }))); } else control = _react["default"].createElement(_basic.InputNumber, { model: fromModel }); break; case 'refer': if (compareLogic == 'between') { control = _react["default"].createElement(_basic.Row, null, _react["default"].createElement(_basic.Col, { span: 11 }, _react["default"].createElement(_basic.Refer, { model: fromModel })), _react["default"].createElement(_basic.Col, { span: 2, className: "sp-range-txt" }, _react["default"].createElement("span", null, "\u81F3")), _react["default"].createElement(_basic.Col, { span: 11 }, _react["default"].createElement(_basic.Refer, { model: toModel }))); } else control = _react["default"].createElement(_basic.Refer, { model: fromModel }); break; case 'datepicker': if (compareLogic == 'between') { control = _react["default"].createElement(_basic.Row, null, _react["default"].createElement(_basic.Col, { span: 11 }, _react["default"].createElement(_basic.DatePicker, { model: fromModel })), _react["default"].createElement(_basic.Col, { span: 2, className: "sp-range-txt" }, _react["default"].createElement("span", null, "\u81F3")), _react["default"].createElement(_basic.Col, { span: 11 }, _react["default"].createElement(_basic.DatePicker, { model: toModel }))); } else control = _react["default"].createElement(_basic.DatePicker, { model: fromModel }); break; } return _react["default"].createElement("div", null, control); } }, { key: "handleChange", value: function handleChange(value) { var selectedField = this.props.dataSource.filter(function (item) { return item.itemName == value; })[0]; if (this.props.onChange) this.props.onChange(this.state.defaultValue, selectedField); if (selectedField) this.setState({ selectedField: selectedField, defaultValue: selectedField.itemName }); } }, { key: "getSelect", value: function getSelect() { var _this2 = this; var options = new Array(); this.props.dataSource && this.props.dataSource.length && this.props.dataSource.forEach(function (item) { options.push(_react["default"].createElement(Option, { value: item.itemName }, item.cShowCaption)); }); return _react["default"].createElement(_baseui.Select, { showSearch: true, style: { width: 95 }, optionFilterProp: "children", value: this.props.selectedValue, notFoundContent: "\u65E0\u6CD5\u627E\u5230", onChange: function onChange(e) { return _this2.handleChange(e); } }, options); } }, { key: "getControl", value: function getControl() { var selectControl = this.getSelect(); var inputControl = this.getFieldControl(); var control = _react["default"].createElement(_basic.Row, null, _react["default"].createElement(_basic.Col, { span: 6 }, selectControl), _react["default"].createElement(_basic.Col, { span: 18 }, inputControl)); return control; } }, { key: "render", value: function render() { var control = this.getControl(); return _react["default"].createElement("div", null, control); } }]); return FilterControl; }(_react["default"].Component); exports["default"] = FilterControl; ; //# sourceMappingURL=filter.js.map