UNPKG

ming-demo3

Version:
256 lines (214 loc) 8.93 kB
"use strict"; var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard"); 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 _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")); 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 _fixedDataTable = require("fixed-data-table-2"); var format = _interopRequireWildcard(require("@mdf/cube/lib/helpers/formatDate")); var _util = require("@mdf/cube/lib/helpers/util"); var CellModel = function (_React$Component) { (0, _inherits2["default"])(CellModel, _React$Component); function CellModel(props) { var _this; (0, _classCallCheck2["default"])(this, CellModel); _this = (0, _possibleConstructorReturn2["default"])(this, (0, _getPrototypeOf2["default"])(CellModel).call(this, props)); _this.state = {}; return _this; } (0, _createClass2["default"])(CellModel, [{ key: "setCell", value: function setCell() { var property = this.props.RowProperty; var col = this.props.Column; var controlType = col.cControlType; var index = property.rowIndex; var cellState = { disabled: false, visible: false, readOnly: false, style: {} }; if (this.props.cellState && this.props.cellState[index] && this.props.cellState[index][property.columnKey]) { cellState.disabled = this.props.cellState[index][property.columnKey].disabled; cellState.visible = this.props.cellState[index][property.columnKey].visible; cellState.readOnly = this.props.cellState[index][property.columnKey].readOnly; cellState.style = cb.utils.extend(true, {}, this.props.cellState[index][property.columnKey].style); } cellState.style.height = property.height; var data = this.props.dataList; if (data[index]) { var _Cell = this.RemodelingCell(property, col, cellState); return _Cell; } } }, { key: "RemodelingCell", value: function RemodelingCell(rowIndex, col, cellState) { var cControlType = col.cControlType, formatter = col.formatter, bCanModify = col.bCanModify, bJointQuery = col.bJointQuery; var index = rowIndex.rowIndex; var columnKey = rowIndex.columnKey; var data = this.props.dataList; var className = "textCol"; cControlType = cControlType ? cControlType : 'Input'; cellState.style.width = rowIndex.width; if (formatter) { var cellObj = formatter(rowIndex, data[index]); var cellHtml = '', cellText = ''; var cellProps = {}; if (cellObj && cellObj.html) { cellHtml += cellObj.html; cellText += cellObj.text || cellObj.html; Object.assign(cellProps, cellObj.props); } var cellCom = _react["default"].createElement("span", (0, _extends2["default"])({ title: cellText, dangerouslySetInnerHTML: { __html: cellHtml } }, cellProps)); return _react["default"].createElement(_fixedDataTable.Cell, { width: rowIndex.width, height: rowIndex.height }, _react["default"].createElement("div", { style: cellState.style, className: className }, cellObj && cellObj.override ? null : _react["default"].createElement("span", { title: data[index][columnKey] }, data[index][columnKey]), cellCom)); } if (columnKey === 'GridRowNo') { return _react["default"].createElement(_fixedDataTable.Cell, { width: rowIndex.width, height: rowIndex.height }, index + 1); } return _react["default"].createElement(_fixedDataTable.Cell, { width: rowIndex.width, height: rowIndex.height, className: "retail-table-cell" }, _react["default"].createElement("div", { title: data[index][columnKey], className: "textCol", style: cellState.style }, this.RemodelingFormatControl(cControlType, data[index][columnKey], bJointQuery, index, columnKey))); } }, { key: "RemodelingFormatControl", value: function RemodelingFormatControl(controlType, text, bJointQuery, index, columnKey) { var _this2 = this; switch (controlType && controlType.trim().toLocaleLowerCase()) { case 'refer': case 'treerefer': case 'listrefer': { var formatText = text != null && (0, _typeof2["default"])(text) === 'object' ? text.name : text; return bJointQuery ? _react["default"].createElement("a", { onClick: function onClick(e) { return _this2.handleJointQuery(e, index, columnKey); } }, formatText) : formatText; } case 'select': { if (cb.utils.isEmpty(text)) return text; var _formatText = null; if ((0, _typeof2["default"])(text) !== 'object') _formatText = text;else _formatText = text.text; return bJointQuery ? _react["default"].createElement("a", { onClick: function onClick(e) { return _this2.handleJointQuery(e, index, columnKey); } }, _formatText) : _formatText; } case 'inputnumber': case 'money': case 'price': if (cb.utils.isEmpty(text)) return ''; if (isNaN(text)) return text; var cFormatData = this.props.Column.cFormatData; try { if (!cFormatData || cFormatData == '') { cFormatData = {}; } else { cFormatData = JSON.parse(cFormatData); } } catch (e) { cb.utils.alert('数量/金额/单价,预制错误!', 'error'); } text = parseFloat(text); var iNumPoint = this.props.Column.iNumPoint; var decimal = cFormatData.decimal ? (0, _util.getPredicateValue)(cFormatData.decimal) : null; if (controlType === 'money') { if (decimal) iNumPoint = decimal;else iNumPoint = cb.rest.AppContext.option.amountofdecimal; } else if (controlType === 'price') { if (decimal) iNumPoint = decimal;else iNumPoint = cb.rest.AppContext.option.monovalentdecimal; } else { if (decimal) iNumPoint = decimal;else if (cb.utils.isEmpty(iNumPoint)) iNumPoint = null; } if (!isNaN(iNumPoint) && iNumPoint != null) { text = parseFloat(text); text = (0, _util.getRoundValue)(text, iNumPoint); } if (cFormatData.after) text = text + cFormatData.after; return text; case 'datepicker': if (text) { var fmt = 'YYYY-MM-dd'; if (this.props.Column.cFormatData && this.props.Column.cFormatData != '') fmt = this.props.Column.cFormatData; text = format.dateFormat(new Date(text), fmt); } return text; case 'avatar': if (!text || text == '') { return _react["default"].createElement("div", { className: "no-avatar-man" }); } else { var style = {}; style.height = this.props.rowHeight; style.width = this.props.rowHeight; return _react["default"].createElement("img", { src: text + '?imageView2/1/w/80/h/80', style: style }); } } if (text === '') return ''; return bJointQuery ? _react["default"].createElement("a", { onClick: function onClick(e) { return _this2.handleJointQuery(e, index, columnKey); } }, text) : text; } }, { key: "handleJointQuery", value: function handleJointQuery(e, index, columnKey) { this.props.model.execute('cellJointQuery', { rowIndex: index, cellName: columnKey }); } }, { key: "render", value: function render() { var Cell = this.setCell(); return Cell; } }]); return CellModel; }(_react["default"].Component); exports["default"] = CellModel; //# sourceMappingURL=MCell.js.map