UNPKG

ming-demo3

Version:
526 lines (454 loc) 17.7 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 _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator")); var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator")); 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 _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized")); var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits")); var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); var _react = _interopRequireWildcard(require("react")); var _redux = require("redux"); var _reactRedux = require("react-redux"); var _baseui = require("@mdf/baseui"); var _util = require("@mdf/cube/lib/helpers/util"); var _SvgIcon = _interopRequireDefault(require("@mdf/metaui-web/lib/components/common/SvgIcon")); var RadioGroup = _baseui.Radio.Group; var RadioButton = _baseui.Radio.Button; var SummarySetting = function (_Component) { (0, _inherits2["default"])(SummarySetting, _Component); function SummarySetting(props) { var _this; (0, _classCallCheck2["default"])(this, SummarySetting); _this = (0, _possibleConstructorReturn2["default"])(this, (0, _getPrototypeOf2["default"])(SummarySetting).call(this, props)); (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleRadioChange", function (value) { var showCardEle = _this.state.showCardEle; var popData = _this.state.popData; showCardEle.cSumType = value; var tmp = _.find(popData, function (o) { return o.cFieldName == _this.state.showCardFieldName; }); tmp.cSumType = showCardEle.cSumType; tmp.cShowCaption = showCardEle.cShowCaption; _this.setState({ popData: popData, showCardFieldName: "" }); }); (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "getCardContent", function () { var radioStyle = { display: 'block', height: '30px', lineHeight: '30px' }; var cardContent; var cardContentInner = []; var ele = _this.state.showCardEle; _this.enumArr.forEach(function (ele, index) { cardContentInner.push(_react["default"].createElement(_baseui.Radio, { style: radioStyle, value: ele.key }, ele.value)); }); if (ele) { cardContent = _react["default"].createElement("div", null, _react["default"].createElement("div", null, _react["default"].createElement(RadioGroup, { value: ele.cSumType ? ele.cSumType : "sum", onChange: function onChange(e) { return _this.handleRadioChange(e.target.value); } }, cardContentInner))); return cardContent; } }); (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "getListContent", function () { if (_.isEmpty(_this.state.popData)) { return null; } else { var listContent = []; var listContentInner = []; var bOnlyShowSelected = _this.state.bOnlyShowSelected ? true : false; listContent.push(_react["default"].createElement("div", { className: "sumarea_list_caption" }, _react["default"].createElement("span", { className: "sumareaset-left" }, "\u6C47\u603B\u8BBE\u7F6E"), _react["default"].createElement(_baseui.Checkbox, { title: "只显示已选", checked: bOnlyShowSelected, onChange: function onChange(e) { _this.setState({ bOnlyShowSelected: !bOnlyShowSelected }); } }, "只显示已选"))); var cardContent; var summaryItems = _this.state.popData; summaryItems.forEach(function (ele, index) { var _this2 = this; var item; var selected = ele.selected == 1 ? 1 : 0; cardContent = null; if (this.state.showCardEle.cFieldName == ele.cFieldName) { cardContent = this.getCardContent(); } var showCurrent = this.state.showCardFieldName == ele.cFieldName ? true : false; if (selected || bOnlyShowSelected == false) { item = _react["default"].createElement("div", { className: "sumarea_list_item" }, _react["default"].createElement("div", { className: "sumarea_list_item_1" }, _react["default"].createElement(_baseui.Checkbox, { title: ele.cShowCaption, checked: selected == 1 ? true : false, onChange: function onChange(e) { return _this2.onChecked(e, ele, index); } }, ele.cShowCaption ? ele.cShowCaption : ele.cCaption)), _react["default"].createElement(_baseui.Popover, { placement: "bottom", overlayClassName: "sumareasetting_card", content: cardContent, trigger: "click", visible: showCurrent, onVisibleChange: function onVisibleChange(visible) { return _this2.onCardVisibleChange(visible); } }, _react["default"].createElement("div", { className: "summary_select_all" }, _react["default"].createElement(_baseui.Button, { className: "sumarea_list_itemarrow_" + (showCurrent ? "1" : "0"), disabled: !selected, onClick: function onClick() { return _this2.showCard(ele); } }, this.cEnumString[ele.cSumType ? ele.cSumType : "sum"]), _react["default"].createElement(_baseui.Icon, { type: showCurrent ? "up" : "down" })))); listContentInner.push(item); } }, (0, _assertThisInitialized2["default"])(_this)); listContent.push(_react["default"].createElement("div", { className: "sumarea_list_items" }, listContentInner)); return _react["default"].createElement("div", null, _react["default"].createElement("div", null, listContent), _react["default"].createElement("div", { className: "footer-btn" }, _react["default"].createElement(_baseui.Button, { type: "primary", onClick: function onClick() { return _this.handleOk(); } }, "\u786E\u5B9A"), _react["default"].createElement(_baseui.Button, { type: "default", onClick: function onClick() { return _this.handleCancel(); } }, "\u53D6\u6D88"), _react["default"].createElement("div", { className: "sumarea_list_8" }, _react["default"].createElement("span", { className: "sumarea_list_8_1" }, "\u6700\u591A\u9009\u62E9"), _react["default"].createElement("span", { className: "sumarea_list_8_2" }, "5"), _react["default"].createElement("span", { className: "sumarea_list_8_3" }, "\u4E2A\u6C47\u603B\u9879")))); } }); (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleCancel", function () { _this.setState({ bShowList: false, showCardFieldName: "", bOnlyShowSelected: true }); }); (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onVisibleChange", function (visible) { if (visible == false && _this.state.showCardFieldName == "") { _this.setState({ bShowList: false, showCardFieldName: "", bOnlyShowSelected: true }); } }); (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "showList", function () { var bShowList = !_this.state.bShowList; var _this$props$viewModel = _this.props.viewModel.getParams(), billNo = _this$props$viewModel.billNo, tplid = _this$props$viewModel.tplid; var childrenField = _this.props.meta.childrenField; var groupCode = _this.props.viewModel.get(childrenField).getCache('groupCode'); if (bShowList == true) { _this.setState({ bShowList: bShowList, popData: [], showCardFieldName: "", bOnlyShowSelected: true }); _this.getPopData(billNo, tplid, groupCode); } }); (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleOk", function () { var _this$props$viewModel2 = _this.props.viewModel.getParams(), billNo = _this$props$viewModel2.billNo; var childrenField = _this.props.meta.childrenField; var popData = _this.state.popData; var selectList = _.filter(popData, function (o) { return o.selected == 1; }); var params = { "billno": billNo, "childrenField": childrenField, "items": [] }; selectList.forEach(function (ele) { if (!ele.cSumType) { ele.cSumType = "sum"; } params["items"].push({ iBillId: ele.iBillId, iBillEntityid: ele.iBillEntityId, cSumType: ele.cSumType, cShowCaption: ele.cShowCaption, cName: ele.cName, cCaption: ele.cCaption }); }); _this.onSave(params); }); (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleSwitch", function () { var mode = _this.state.mode; var switchMode = mode == "明细" ? "汇总" : "明细"; _this.setState({ mode: switchMode }); var bool; bool = switchMode == "明细" ? false : true; _this.props.viewModel.biz["do"]('refresh', _this.props.viewModel, { isSum: bool }); }); _this.enumArr = []; _this.cEnumString = {}; _this.getEnum(); _this.state = { mode: "明细", showCardFieldName: "", bOnlyShowSelected: true, bShowList: false, showCardEle: {}, popData: [] }; return _this; } (0, _createClass2["default"])(SummarySetting, [{ key: "getEnum", value: function () { var _getEnum = (0, _asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee() { var _this3 = this; var config, json; return _regenerator["default"].wrap(function _callee$(_context) { while (1) { switch (_context.prev = _context.next) { case 0: config = { url: 'enum/getEnumStrFetch', method: 'GET', params: { enumtype: 'pb_sumType' } }; _context.next = 3; return (0, _util.proxy)(config); case 3: json = _context.sent; if (!(json.code !== 200)) { _context.next = 7; break; } cb.utils.alert('获取枚举失败' + json.message, 'error'); return _context.abrupt("return"); case 7: this.enumArr = JSON.parse(json.data); this.enumArr && this.enumArr.map(function (item) { _this3.cEnumString[item.key] = item.value; }); case 9: case "end": return _context.stop(); } } }, _callee, this); })); function getEnum() { return _getEnum.apply(this, arguments); } return getEnum; }() }, { key: "componentDidMount", value: function componentDidMount() {} }, { key: "getPopData", value: function () { var _getPopData = (0, _asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee2(billNo, tplid, groupCode) { var config, json; return _regenerator["default"].wrap(function _callee2$(_context2) { while (1) { switch (_context2.prev = _context2.next) { case 0: config = { url: 'billmeta/getSummarySet', method: 'GET', params: { billno: billNo, tplid: tplid, groupcode: groupCode } }; _context2.next = 3; return (0, _util.proxy)(config); case 3: json = _context2.sent; if (!(json.code !== 200)) { _context2.next = 7; break; } cb.utils.alert('获取数据失败!' + json.message, 'error'); return _context2.abrupt("return"); case 7: this.setState({ popData: json.data }); case 8: case "end": return _context2.stop(); } } }, _callee2, this); })); function getPopData(_x, _x2, _x3) { return _getPopData.apply(this, arguments); } return getPopData; }() }, { key: "onCardVisibleChange", value: function onCardVisibleChange(visible) { if (visible == false) { this.setState({ showCardFieldName: "" }); } } }, { key: "onChecked", value: function onChecked(e, element, index) { var checked = e.target.checked; var popData = this.state.popData; if (checked && _.filter(popData, function (o) { return o.selected == 1; }).length >= 5) { cb.utils.alert("最多选择5个汇总项。"); this.setState({}); } else { popData[index].selected = checked ? 1 : 0; this.setState({ popData: popData }); } } }, { key: "showCard", value: function showCard(ele) { var showCardEle = _.cloneDeep(ele); this.setState({ showCardEle: showCardEle, showCardFieldName: ele.cFieldName }); } }, { key: "onSave", value: function () { var _onSave = (0, _asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee3(params) { var config, json; return _regenerator["default"].wrap(function _callee3$(_context3) { while (1) { switch (_context3.prev = _context3.next) { case 0: config = { url: 'billmeta/updateSummarySet', method: 'POST', params: params }; _context3.next = 3; return (0, _util.proxy)(config); case 3: json = _context3.sent; if (json.code === 200) { cb.utils.alert('设置成功!', 'success'); this.setState({ bShowList: false, showCardFieldName: "", bOnlyShowSelected: true }); } if (json.code !== 200) { cb.utils.alert("保存汇总区设置失败。信息 : " + (json.message ? json.message : JSON.stringify(json)).toString(), 'error'); } case 6: case "end": return _context3.stop(); } } }, _callee3, this); })); function onSave(_x4) { return _onSave.apply(this, arguments); } return onSave; }() }, { key: "render", value: function render() { var _this4 = this; var type = this.state.bShowList ? "up" : "down"; var listContent2 = this.getListContent(); var className = "m-l-10XXX"; var IconType = this.state.mode == "明细" ? 'mingxi' : 'huizong1'; return _react["default"].createElement("div", { style: { "float": 'left' }, className: className }, _react["default"].createElement(_baseui.Button, { className: "switch_button", onClick: this.handleSwitch }, _react["default"].createElement(_SvgIcon["default"], { type: IconType }), this.state.mode), _react["default"].createElement(_baseui.Popover, { placement: "bottomRight", overlayClassName: "sumareasetting_list summarysetting", content: listContent2, trigger: "click", visible: this.state.bShowList && _.isEmpty(listContent2) == false, onVisibleChange: function onVisibleChange(visible) { return _this4.onVisibleChange(visible); } }, _react["default"].createElement(_baseui.Button, { onClick: function onClick() { return _this4.showList(); }, type: type, className: "m-l-10XXX" }, _react["default"].createElement("span", null, "\u6C47\u603B\u8BBE\u7F6E")))); } }]); return SummarySetting; }(_react.Component); var _default = SummarySetting; exports["default"] = _default; //# sourceMappingURL=SummarySetting.js.map