UNPKG

ming-demo3

Version:
308 lines (259 loc) 9.82 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 _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 _forEach2 = _interopRequireDefault(require("lodash/forEach")); var _find2 = _interopRequireDefault(require("lodash/find")); var _get2 = _interopRequireDefault(require("lodash/get")); var _isEmpty2 = _interopRequireDefault(require("lodash/isEmpty")); var _react = _interopRequireWildcard(require("react")); var _basic = require("../basic"); var _util = require("@mdf/cube/lib/helpers/util"); var _redux = require("redux"); var _reactRedux = require("react-redux"); var eChartCommon = _interopRequireWildcard(require("../echart/eChartCommon")); var _TotalContainerOld = _interopRequireDefault(require("./TotalContainerOld")); var TotalContainer = function (_Component) { (0, _inherits2["default"])(TotalContainer, _Component); function TotalContainer(props) { var _this; (0, _classCallCheck2["default"])(this, TotalContainer); _this = (0, _possibleConstructorReturn2["default"])(this, (0, _getPrototypeOf2["default"])(TotalContainer).call(this, props)); var bPublished = _this.props.viewid ? true : false; _this.state = { billnum: props.billnum ? props.billnum : _this.props.viewModel.getParams().billNo, totalFields: {}, condition: {}, controls: [], bDisplaySumField: true, bPublished: bPublished, firstQueryDone: false }; return _this; } (0, _createClass2["default"])(TotalContainer, [{ key: "componentDidMount", value: function componentDidMount() { var self = this; self.props.viewModel.on('firstQueryDone', function (params) { self.state.firstQueryDone = params; }); self.props.viewModel.on("filterClick", function (params) { self.state.condition = params.condition; self.getSum(); }); self.props.viewModel.on("saveSumArea", function (params) { self.state.bDisplaySumField = true; self.getTotalFields(self.state.billnum, true); }); if (self.state.billnum) { self.getTotalFields(self.state.billnum); } } }, { key: "getTotalFields", value: function getTotalFields(billnum, bReGet) { var self = this; if ((bReGet || (0, _isEmpty2["default"])(self.state.totalFields)) && !!billnum && self.state.bDisplaySumField) { var totalFields = {}; var param = { billnum: billnum, isOnlySelected: true }; var callback = function callback(json) { if (json.code === 200) { if (json.data) { var items = json.data.items; items.forEach(function (ele) { var caption = ele.showCaption ? ele.showCaption : ele.caption; if (ele.selected) { var totalField = { caption: caption, value: 0 }; totalFields[ele.fieldname] = totalField; } }); if ((0, _isEmpty2["default"])(totalFields)) { self.setState({ bDisplaySumField: false }); return; } self.state.totalFields = totalFields; self.getSum(); } ; } else { eChartCommon.LogChartInfo("TotalContainer getTotalFields Err errMsg ", json.message + " 查询参数 = " + JSON.stringify(param), 999); } }; this.actionsProxy('report/getTotalSetting', 'GET', param, callback); } } }, { key: "componentWillReceiveProps", value: function componentWillReceiveProps(nextProps) { if (nextProps.billnum !== "" && this.state.billnum != nextProps.billnum) { this.state.billnum = nextProps.billnum; this.getTotalFields(nextProps.billnum); } } }, { key: "getSum", value: function getSum() { var self = this; if ((0, _isEmpty2["default"])(self.state.billnum)) return; if ((0, _isEmpty2["default"])(self.state.condition)) return; if ((0, _isEmpty2["default"])(self.state.totalFields)) return; if (!self.state.firstQueryDone) { self.setSum({}); return; } var queryParams = { billnum: self.state.billnum, isOnlyTotal: true, condition: self.state.condition }; var callback = function callback(json) { if (json.code === 200) { var data = json.data.sumRecordList; if (data == null || data.length == 1 && data[0] == null) data = [{}]; var fields = (0, _get2["default"])(json.data, "viewmodel.entities[0].fields"); self.setSum(data, fields); } else { self.setSum({}); } }; this.actionsProxy('/report/list', 'POST', queryParams, callback); } }, { key: "formatData", value: function formatData(fieldName, fieldValue, fields) { var formatter = undefined; if (isNaN(fieldValue)) return fieldValue; var fieldEle = (0, _find2["default"])(fields, function (o) { return o.cItemName == fieldName; }); if (!fieldEle) { return fieldValue; } var cFormatData = fieldEle.cFormatData; try { if (!cFormatData || cFormatData == '') { cFormatData = {}; } else { cFormatData = JSON.parse(cFormatData); } } catch (e) { return fieldValue; } var iNumPoint = fieldEle.iNumPoint; var decimal = cFormatData.decimal ? (0, _util.getPredicateValue)(cFormatData.decimal) : null; var controlType = fieldEle.cControlType; if (controlType === 'money') { formatter = function formatter(value) { var _value = value + ''; var _valueArr = _value.split('.'); if (_valueArr.length == 1) { return "".concat(_value.replace(/\B(?=(\d{3})+(?!\d))/g, ',')); } else { _valueArr[0] = _valueArr[0].replace(/\B(?=(\d{3})+(?!\d))/g, ','); return "".concat(_valueArr.join('.')); } }; 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) { fieldValue = parseFloat(fieldValue); fieldValue = (0, _util.getRoundValue)(fieldValue, iNumPoint); } if (formatter) { fieldValue = formatter(fieldValue); } if (cFormatData.after) fieldValue = fieldValue + cFormatData.after; return fieldValue; } }, { key: "setSum", value: function setSum(sumData, fields) { var self = this; if ((0, _isEmpty2["default"])(sumData)) sumData = [{}]; if (!sumData.length) sumData = [{}]; var controls = []; (0, _forEach2["default"])(self.state.totalFields, function (item, key) { var value = sumData[0][key] || 0; value = self.formatData(key, value, fields); controls.push({ caption: item.caption, value: value }); }); self.setState({ controls: controls }); } }, { key: "render", value: function render() { var controls = this.state.controls; var self = this; if (!controls.length || self.state.bDisplaySumField == false) { return _react["default"].createElement(_TotalContainerOld["default"], { meta: self.props.meta, viewModel: self.props.viewModel }); } var itemClassName = "rpt-zhekou-".concat(controls.length === 1 ? 'padding' : 'center'); var children = []; var width = 100 / controls.length; controls.forEach(function (item) { children.push(_react["default"].createElement("div", { className: "rpt-zhekou-list", style: { "float": 'left', width: width + '%' } }, _react["default"].createElement("div", { className: "zhekou-name" }, _react["default"].createElement("h3", { className: itemClassName }, item.caption)), _react["default"].createElement("div", { className: "zhekou-number" }, _react["default"].createElement("h4", { className: itemClassName }, item.value)))); }); return _react["default"].createElement(_basic.Row, { className: "rpt-zhekou" }, children); } }, { key: "actionsProxy", value: function actionsProxy(url, method, params, callback) { var config = { url: url, method: method, params: params }; (0, _util.proxy)(config).then(function (json) { callback(json); }); } }]); return TotalContainer; }(_react.Component); exports["default"] = TotalContainer; //# sourceMappingURL=TotalContainer.js.map