ming-demo3
Version:
mdf metaui web
313 lines (269 loc) • 9.64 kB
JavaScript
;
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 _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 = _interopRequireWildcard(require("react"));
var _baseui = require("@mdf/baseui");
var _addEventListener = _interopRequireDefault(require("rc-util/lib/Dom/addEventListener"));
var _PortalTabItem = _interopRequireDefault(require("./PortalTabItem"));
var _DynamicModal = _interopRequireDefault(require("./DynamicModal"));
var _ImportProgressBall = _interopRequireDefault(require("./ImportProgressBall"));
var DynamicView = function (_Component) {
(0, _inherits2["default"])(DynamicView, _Component);
function DynamicView(props) {
var _this;
(0, _classCallCheck2["default"])(this, DynamicView);
_this = (0, _possibleConstructorReturn2["default"])(this, (0, _getPrototypeOf2["default"])(DynamicView).call(this, props));
_this.state = {};
return _this;
}
(0, _createClass2["default"])(DynamicView, [{
key: "handleResize",
value: function handleResize() {
this.setState({
width: document.body.clientWidth
});
}
}, {
key: "buildData",
value: function buildData() {
var _this$props = this.props,
match = _this$props.match,
_this$props$params = _this$props.params,
params = _this$props$params === void 0 ? {} : _this$props$params;
var _ref = match && match.params || params,
menuurl = _ref.menuurl,
billtype = _ref.billtype,
billno = _ref.billno,
billid = _ref.billid;
if (menuurl) {
if (window.parent !== window && window.jDiwork && this.props.location) window.jDiwork.updateService(cb.rest.AppContext.query.serviceCode, {
customReFresh: false
});
this.setState({
content: {
type: 'platform',
url: menuurl
}
});
return;
}
var _ref2 = new cb.utils.queryString(),
query = _ref2.query;
if (query.billtype) billtype = query.billtype;
if (query.billno) billno = query.billno;
if (query.billid) billid = query.billid;
var data = {
billtype: billtype,
billno: billno
};
if (billid) {
data.params = billid === 'add' ? {
mode: 'add'
} : {
mode: 'edit',
id: billid,
readOnly: true
};
data.params.query = cb.rest.AppContext.query;
delete data.params.query.isSum;
} else {
data.params = {
query: Object.assign({}, cb.rest.AppContext.query)
};
if (query.isSum) data.params.query.isSum = query.isSum;
}
if (query.callbackurl) {
data.params.callbackurl = query.callbackurl;
} else {
data.params.menuId = true;
}
data.params.metaType = billtype;
if (params.protocolMode) {
data.params.protocolMode = params.protocolMode;
}
if (params.protocolJson) {
data.params.protocolJson = params.protocolJson;
}
return data;
}
}, {
key: "componentDidMount",
value: function componentDidMount() {
var _this2 = this;
this.resizeHandler = (0, _addEventListener["default"])(window, 'resize', function () {
return _this2.handleResize();
});
this.loadingCount = 0;
cb.utils.loadingControl = {
start: function start() {
cb.utils.loading(true);
_this2.loadingCount++;
if (_this2.loadingCount === 1) _this2.setState({
loading: true
});
},
end: function end() {
cb.utils.loading(false);
if (_this2.loadingCount > 0) _this2.loadingCount--;
if (_this2.loadingCount === 0) _this2.setState({
loading: false
});
}
};
var data = this.buildData();
if (!data) return;
if (window.parent !== window && cb.rest.AppContext.query.random) {
window.addEventListener('message', function (event) {
if (event.data.key !== 'params') return;
data.params = event.data.value;
cb.loader.runCommandLine('bill', data, null, function (vm, viewmeta, title) {
var content = {
vm: vm,
metaData: viewmeta
};
_this2.setState({
content: content
});
window.parent.postMessage({
key: 'title',
random: cb.rest.AppContext.query.random,
title: title
}, '*');
});
}, false);
window.parent.postMessage({
key: 'context',
random: cb.rest.AppContext.query.random
}, '*');
cb.events.on('message', function (data) {
window.parent.postMessage({
key: 'menu',
random: cb.rest.AppContext.query.random,
data: data
}, '*');
});
return;
}
if (window.opener && cb.rest.AppContext.query.random) {
window.addEventListener('message', function (event) {
if (event.data.key !== 'params') return;
data.params = event.data.value;
cb.loader.runCommandLine('bill', data, null, function (vm, viewmeta) {
var content = {
vm: vm,
metaData: viewmeta
};
_this2.setState({
content: content
});
});
}, false);
window.opener.postMessage({
key: 'context',
random: cb.rest.AppContext.query.random
}, '*');
return;
}
if (window.parent !== window && window.jDiwork && this.props.location) {
window.jDiwork.updateService(cb.rest.AppContext.query.serviceCode, {
customReFresh: true
});
window.jDiwork.getData({
id: cb.rest.AppContext.query.serviceCode
}, function (args) {
var iframeWidth = args.iframeWidth,
iframeHeight = args.iframeHeight,
iframeTitle = args.iframeTitle,
condition = args.condition;
delete args.iframeWidth;
delete args.iframeHeight;
delete args.iframeTitle;
var keepFilter = true;
if (condition && condition.filterId === null) {
keepFilter = false;
delete condition.filterId;
}
Object.assign(data.params, args);
cb.loader.runCommandLine('bill', data, null, function (vm, viewmeta) {
var content = {
vm: vm,
metaData: viewmeta
};
if (condition) {
vm.getParams().condition = condition;
if (!keepFilter) vm.getParams().filterId = null;
}
_this2.setState({
content: content,
params: data,
title: iframeTitle,
width: iframeWidth,
updateTitle: true
});
});
});
return;
}
cb.loader.runCommandLine('bill', data, null, function (vm, viewmeta) {
var content = {
vm: vm,
metaData: viewmeta
};
_this2.setState({
content: content
});
});
}
}, {
key: "componentWillUnmount",
value: function componentWillUnmount() {
this.resizeHandler.remove();
this.resizeHandler = null;
}
}, {
key: "render",
value: function render() {
if (!this.state.content) return _react["default"].createElement(_baseui.Spin, {
className: "portal-spin",
size: "large",
tip: "\u52A0\u8F7D\u4E2D..."
});
var loadingControl = null;
if (this.state.loading) loadingControl = _react["default"].createElement("div", {
className: "ant-modal-mask uretail-loading-bg"
}, _react["default"].createElement(_baseui.Spin, {
className: "portal-spin",
size: "large",
tip: "\u52A0\u8F7D\u4E2D..."
}));
var _this$props2 = this.props,
match = _this$props2.match,
params = _this$props2.params;
var _ref3 = match && match.params || params,
menuurl = _ref3.menuurl,
billno = _ref3.billno;
return _react["default"].createElement("div", {
className: "meta-dynamic-view 222"
}, _react["default"].createElement(_PortalTabItem["default"], {
index: menuurl || billno,
content: this.state.content,
width: this.state.width || document.body.clientWidth,
params: this.state.params,
title: this.state.title,
updateTitle: this.state.updateTitle
}), _react["default"].createElement(_DynamicModal["default"], null), loadingControl, _react["default"].createElement(_ImportProgressBall["default"], null));
}
}]);
return DynamicView;
}(_react.Component);
exports["default"] = DynamicView;
//# sourceMappingURL=DynamicView.js.map