UNPKG

ming-demo3

Version:
209 lines (170 loc) 6.6 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = void 0; var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof")); 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 _input = _interopRequireDefault(require("../basic/input")); var _inputnumber = _interopRequireDefault(require("../basic/inputnumber")); var _datepicker = _interopRequireDefault(require("../basic/datepicker")); var _timepicker = _interopRequireDefault(require("../basic/timepicker")); var _checkboxenum = _interopRequireDefault(require("../basic/checkboxenum")); var _select = _interopRequireDefault(require("../basic/select")); var UncertainControl = function (_React$Component) { (0, _inherits2["default"])(UncertainControl, _React$Component); function UncertainControl(props) { var _this; (0, _classCallCheck2["default"])(this, UncertainControl); _this = (0, _possibleConstructorReturn2["default"])(this, (0, _getPrototypeOf2["default"])(UncertainControl).call(this, props)); _this.state = { model: null }; return _this; } (0, _createClass2["default"])(UncertainControl, [{ key: "componentDidMount", value: function componentDidMount() { var _this2 = this; var col = this.props.cellConfig; if (!col) col = { 'cControlType': 'Input' }; var cControlType = col.cControlType && col.cControlType.trim().toLocaleLowerCase(); var model = null; switch (cControlType) { case 'select': case 'radio': case 'checkboxenum': model = new cb.models.ListModel(col); break; default: model = new cb.models.SimpleModel(col); break; } this.setState({ model: model }); model.on('blur', function () { var val = _this2.state.model.getValue(); var _this2$props$RowPrope = _this2.props.RowProperty, rowIndex = _this2$props$RowPrope.rowIndex, columnKey = _this2$props$RowPrope.columnKey; _this2.props.model.setCellValue(rowIndex, columnKey, val, true, true); }); model.on('afterValueChange', function (val) { if (val.value != null && (0, _typeof2["default"])(val.value) == 'object') { var _this2$props$RowPrope2 = _this2.props.RowProperty, rowIndex = _this2$props$RowPrope2.rowIndex, columnKey = _this2$props$RowPrope2.columnKey; var newValue = val.value; if (!cb.utils.isArray(newValue)) { newValue = newValue.value; } else { var temp = ''; newValue.map(function (newVal) { if (temp == '') temp = newVal.value;else temp = temp + ',' + newVal.value; }); newValue = temp; } _this2.props.model.setCellValue(rowIndex, columnKey, newValue || '', true, true); } }); } }, { key: "getComponents", value: function getComponents(col) { if (!col) col = { 'cControlType': 'Input' }; var components = null; var NumPoint = 1; if (col.iNumPoint && col.iNumPoint > 1) { NumPoint = 0.1; NumPoint = Math.pow(NumPoint, col.iNumPoint).toFixed(col.iNumPoint); } var controlType = col.cControlType && col.cControlType.trim().toLocaleLowerCase(); var model = this.state.model; switch (controlType) { case 'input': case 'refer': case 'treerefer': case 'listrefer': components = _react["default"].createElement(_input["default"], { focus: true, model: model }); break; case 'inputnumber': case 'money': case 'price': if (controlType === 'money') NumPoint = cb.rest.AppContext.option.amountofdecimal;else if (controlType === 'price') NumPoint = cb.rest.AppContext.option.monovalentdecimal; components = _react["default"].createElement(_inputnumber["default"], { className: 'edit-input-number', focus: true, model: model, iNumPoint: col.iNumPoint, cFormatData: col.cFormatData }); break; case 'datepicker': components = _react["default"].createElement(_datepicker["default"], { model: model, className: 'edit-input-number', cFormatData: col.cFormatData }); break; case 'timepicker': components = _react["default"].createElement(_timepicker["default"], { model: model, className: "edit-input-number" }); break; case 'select': case 'radio': components = _react["default"].createElement(_select["default"], { focus: true, model: model, className: 'edit-input-number' }); break; case 'checkboxenum': components = _react["default"].createElement(_select["default"], { focus: true, model: model }); break; default: components = _react["default"].createElement(_input["default"], { focus: true, model: model }); break; } if (model) { var data = this.props.dataList; var _this$props$RowProper = this.props.RowProperty, rowIndex = _this$props$RowProper.rowIndex, columnKey = _this$props$RowProper.columnKey; var value = data[rowIndex][columnKey]; if (!cb.utils.isEmpty(value)) model.setValue(value); } return components; } }, { key: "render", value: function render() { var components = this.getComponents(this.props.cellConfig); return components; } }]); return UncertainControl; }(_react["default"].Component); exports["default"] = UncertainControl; //# sourceMappingURL=UncertainControl.js.map