UNPKG

fastlion-amis

Version:

一种MIS页面生成工具

134 lines (133 loc) 8.45 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.LionImportExcelRenderer = void 0; var tslib_1 = require("tslib"); var react_1 = tslib_1.__importDefault(require("react")); var spin_1 = tslib_1.__importDefault(require("antd/lib/spin")); var FileUpload_1 = require("./FileUpload"); var factory_1 = require("../../../../../factory"); var index_1 = require("../../../../../index"); var style_1 = require("./style"); var Scoped_1 = require("../../../../../Scoped"); var Button_1 = tslib_1.__importDefault(require("../../../../../components/Button")); require("./style.scss"); var tpl_1 = require("../../../../../utils/tpl"); var LionCopyItem_1 = tslib_1.__importDefault(require("../../../components/LionCopyItem")); var helper_1 = require("../../../../../utils/helper"); var LionImportExcel = /** @class */ (function (_super) { tslib_1.__extends(LionImportExcel, _super); function LionImportExcel(props, context) { var _this = _super.call(this, props) || this; _this.index = 0; _this.reloadTarget = function (target, data) { var scoped = _this.context; scoped.reload(target, data); }; _this.setLoading = function (loading) { var that = _this; that.setState({ loading: loading ? loading : !that.state.loading }); }; _this.handleCancel = function (e) { _this.setState({ visible: !_this.state.visible }); }; _this.handleUpload = function () { var _a, _b; ((_a = _this._uploadRef) === null || _a === void 0 ? void 0 : _a.uploadClick) && ((_b = _this._uploadRef) === null || _b === void 0 ? void 0 : _b.uploadClick()); }; _this.onRef = function (ref) { _this._uploadRef = ref; }; _this.state = { visible: false, loading: false }; var scoped = context; scoped.registerComponent(_this); return _this; } LionImportExcel.prototype.componentDidMount = function () { // 初始化的时候才进行inde计算 不然每次渲染都会变得比原来高 this.index = (0, helper_1.getLagerThanMaxZindex)(); }; LionImportExcel.prototype.componentWillUnmount = function () { var scoped = this.context; scoped.unRegisterComponent(this); }; LionImportExcel.prototype.render = function () { var _this = this; var _a, _b; var _c = this.props, env = _c.env, label = _c.label, rules = _c.rules, size = _c.size, disabled = _c.disabled, data = _c.data, disabledOn = _c.disabledOn, level = _c.level, active = _c.active, activeLevel = _c.activeLevel, primary = _c.primary, name = _c.name, __ = _c.translate; return (react_1.default.createElement(react_1.default.Fragment, null, react_1.default.createElement(LionCopyItem_1.default, { showItems: [{ value: name !== null && name !== void 0 ? name : "", label: __('Alert.copyName'), icon: "fa fa-sticky-note-o" }], env: (_a = this.props) === null || _a === void 0 ? void 0 : _a.env }, react_1.default.createElement(Button_1.default, { size: size, level: activeLevel && active ? activeLevel : level || (primary ? 'primary' : undefined), disabled: disabled || (0, tpl_1.evalExpression)(disabledOn, data), onClick: function (e) { _this.handleCancel(e); } }, label)), react_1.default.createElement(style_1.WrapperModal, { title: label, closable: true, onCancel: this.handleCancel, wrapClassName: 'modal-export-body', visible: this.state.visible, getContainer: (_b = this.props.env) === null || _b === void 0 ? void 0 : _b.getModalContainer, footer: null, bodyStyle: { flex: 1, overflow: 'auto', padding: '10px', color: '#606266', fontSize: '14px', wordBreak: 'break-all' }, destroyOnClose: true }, react_1.default.createElement("div", { style: { width: '100%', position: 'relative' }, className: "import-body" }, react_1.default.createElement("div", { className: "import-Upload" }, react_1.default.createElement("div", { style: { display: 'inline-block' } }, (0, index_1.render)({ type: 'submit', className: 'import-reload-btn', reload: this.props.reload }), react_1.default.createElement("button", { className: 'import-btn', onClick: function () { _this.handleUpload(); } }, "\u70B9\u51FB\u4E0A\u4F20"), react_1.default.createElement("button", { className: "download-model", onClick: function () { _this._uploadRef.openDownloadDialog && _this._uploadRef.openDownloadDialog(_this.props.downLoadTempUrl); } }, "\u4E0B\u8F7D\u6A21\u677F")), react_1.default.createElement(FileUpload_1.FileUpload, { reload: this.props.reload, data: data, reloadTarget: this.reloadTarget, url: this.props.upLoadFileUrl, env: this.props.env, loading: this.state.loading, setLoading: function (loading) { _this.setLoading(loading); }, onRef: this.onRef }), react_1.default.createElement("div", { style: { fontSize: '12px', color: '#606266', marginTop: '5px' } }, react_1.default.createElement("span", null, "\u53EA\u80FD\u4E0A\u4F20xls/xlsx\u6587\u4EF6"))), rules && (rules === null || rules === void 0 ? void 0 : rules.length) > 0 ? react_1.default.createElement("div", { className: "import-Tip" }, react_1.default.createElement("div", { className: 'import-cell' }, react_1.default.createElement("div", { style: { color: 'rgba(0,0,0,.65)', margin: 0 } }, react_1.default.createElement("div", { style: { marginBottom: "10px" } }, react_1.default.createElement("div", { className: "import-rules" }, "\u5BFC\u5165\u89C4\u5219"), react_1.default.createElement("ol", null, rules.split(',').map(function (_rule, index) { return react_1.default.createElement("li", { key: index }, _rule); })))))) : null), this.state.loading ? react_1.default.createElement(style_1.WrapperLoading, { className: "import-loading" }, react_1.default.createElement(spin_1.default, { indicator: react_1.default.createElement("span", { className: "fa fa-spin fa-circle-o-notch", style: { fontSize: 24 } }), size: "small", spinning: true, tip: '\u6587\u4EF6\u5BFC\u5165\u4E2D....' })) : null))); }; LionImportExcel.contextType = Scoped_1.ScopedContext; LionImportExcel.defaultProps = { label: '导入', rules: "重复导入同个物流商数据将覆盖原有数据, 同一个物流商名称或同一个供应商编码存在多条记录,以第一条记录为准" }; return LionImportExcel; }(react_1.default.Component)); exports.default = LionImportExcel; var LionImportExcelRenderer = /** @class */ (function (_super) { tslib_1.__extends(LionImportExcelRenderer, _super); function LionImportExcelRenderer() { return _super !== null && _super.apply(this, arguments) || this; } LionImportExcelRenderer = tslib_1.__decorate([ (0, factory_1.Renderer)({ type: 'lion-cell-import' }) ], LionImportExcelRenderer); return LionImportExcelRenderer; }(LionImportExcel)); exports.LionImportExcelRenderer = LionImportExcelRenderer; //# sourceMappingURL=./renderers/Lion/Table/components/import/LionCellImport.js.map