UNPKG

tplus-pos

Version:

pos module

292 lines (219 loc) 9.98 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var _defineProperty = require('babel-runtime/core-js/object/define-property'); var _defineProperty2 = _interopRequireDefault(_defineProperty); var _getOwnPropertyDescriptor = require('babel-runtime/core-js/object/get-own-property-descriptor'); var _getOwnPropertyDescriptor2 = _interopRequireDefault(_getOwnPropertyDescriptor); var _promise = require('babel-runtime/core-js/promise'); var _promise2 = _interopRequireDefault(_promise); var _getPrototypeOf = require('babel-runtime/core-js/object/get-prototype-of'); var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf); var _classCallCheck2 = require('babel-runtime/helpers/classCallCheck'); var _classCallCheck3 = _interopRequireDefault(_classCallCheck2); var _createClass2 = require('babel-runtime/helpers/createClass'); var _createClass3 = _interopRequireDefault(_createClass2); var _possibleConstructorReturn2 = require('babel-runtime/helpers/possibleConstructorReturn'); var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2); var _inherits2 = require('babel-runtime/helpers/inherits'); var _inherits3 = _interopRequireDefault(_inherits2); var _dec, _class, _desc, _value, _class2, _descriptor, _class3, _temp; var _mobxReact = require('mobx-react'); var _react = require('react'); var _react2 = _interopRequireDefault(_react); var _propTypes = require('prop-types'); var _propTypes2 = _interopRequireDefault(_propTypes); var _voucherVertical = require('../components/vertical/voucherVertical'); var _voucherVertical2 = _interopRequireDefault(_voucherVertical); require('./style.less'); var _mobx = require('mobx'); var _mutantsAppfx = require('mutants-appfx'); var _mutantsMicrofx = require('mutants-microfx'); var _tplusPoslogin = require('tplus-poslogin'); var _throttle2 = require('lodash/throttle'); var _throttle3 = _interopRequireDefault(_throttle2); var _uiCommon = require('../util/uiCommon.js'); var _uiCommon2 = _interopRequireDefault(_uiCommon); var _common = require('../util/common.js'); var _common2 = _interopRequireDefault(_common); var _tplusComponentsTouch = require('tplus-components-touch'); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _initDefineProp(target, property, descriptor, context) { if (!descriptor) return; (0, _defineProperty2.default)(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); } function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that transform-class-properties is enabled.'); } function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object['ke' + 'ys'](descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object['define' + 'Property'](target, property, desc); desc = null; } return desc; } var t = _mutantsMicrofx.i18n.getFixedT(null, 'newretail'); var RetailOrderView = (_dec = (0, _mutantsAppfx.injectViewModel)('Voucher'), _dec(_class = (0, _mobxReact.observer)(_class = (_class2 = (_temp = _class3 = function (_React$Component) { (0, _inherits3.default)(RetailOrderView, _React$Component); //应收金额 监测的屏幕宽度阈值 function RetailOrderView(props) { (0, _classCallCheck3.default)(this, RetailOrderView); var _this = (0, _possibleConstructorReturn3.default)(this, (RetailOrderView.__proto__ || (0, _getPrototypeOf2.default)(RetailOrderView)).call(this, props)); _this.resize = function () { var width = document.body.clientWidth; _this.setState({ underAmountThreshold: width <= _this.amountThreshold }); }; _initDefineProp(_this, 'clearVoucherData', _descriptor, _this); _this.onValidate = function () { var controllerEvent = _this.props.controllerEvent; _uiCommon2.default.mask({}); // 需要异步校验 return new _promise2.default(function (resolve, reject) { controllerEvent('onValidate').then(function () { _uiCommon2.default.deleteMask({ async: true }); resolve(_this.props.viewModel.settlementVisiable); }).catch(function (err) { console.warn(err); _uiCommon2.default.deleteMask({ async: true }); }); }); }; _this.onCollapse = function (collapsed) { _this.setState({ collapsed: collapsed }); }; return _this; } //电子秤数据 (0, _createClass3.default)(RetailOrderView, [{ key: 'getChildContext', value: function getChildContext() { var storeInfo = _tplusPoslogin.TStore.restore(); return { storeInfo: storeInfo }; } }, { key: 'componentWillUnmount', value: function componentWillUnmount() { rx$.headRenderSubject.closed || rx$.headRenderSubject.next(); } }, { key: 'componentDidMount', value: function componentDidMount() { var voucherStore = _mutantsMicrofx.stores.voucherStore; var dataModal = voucherStore.getData(); if (!dataModal) return; var controllerEvent = this.props.controllerEvent; controllerEvent('loadWithoutVoucherBody', dataModal); } /* 结算成功回调 */ }, { key: 'onSettleSuccess', value: function onSettleSuccess(_ref) { var openCashBox = _ref.openCashBox; var controllerEvent = this.props.controllerEvent; // 先打印然后重新开单 controllerEvent('printRetail', { openCashBox: openCashBox }).then(function () { controllerEvent('clearVoucherData', { keep: true }); }); } /* 取消结算 */ }, { key: 'onCancelSettle', value: function onCancelSettle() { var controllerEvent = this.props.controllerEvent; controllerEvent('cancelPromotion', true); } /* 特定报错 重新开单 */ /* 结算校验 */ }, { key: 'clearModel', value: function clearModel() { var controllerEvent = this.props.controllerEvent; _tplusComponentsTouch.ModalWraper.confirm({ title: t('不想要了'), content: t('确定要取消当前交易吗?如需帮助请联系工作人员。'), onOk: function onOk() { controllerEvent('clearVoucherData'); } }); } }, { key: 'render', value: function render() { var _this2 = this; //渲染不想买了 var voucherVM = this.props.viewModel; if (!!voucherVM.totalQuantity) { rx$ && rx$.headRenderSubject.next(_react2.default.createElement( 'span', { className: 'voucher-head-giveup', style: { display: 'inline-block', marginRight: '20px' }, onClick: function onClick() { _this2.clearModel(); } }, _react2.default.createElement(_tplusComponentsTouch.Ticon, { type: 'buyaole', className: 'buyaole' }), '\u4E0D\u60F3\u8981\u4E86' )); } else { rx$ && rx$.headRenderSubject.next(); } return _react2.default.createElement( 'div', { className: 'voucher-wraper-layer', ref: function ref(el) { _this2.barcodeEl = el; } }, _react2.default.createElement(_voucherVertical2.default, null) ); } }]); return RetailOrderView; }(_react2.default.Component), _class3.contextTypes = { router: _propTypes2.default.object, onEvent: _propTypes2.default.func, onAction: _propTypes2.default.func, stores: _propTypes2.default.object, infoRender: _propTypes2.default.func, headHook: _propTypes2.default.object, viewModel: _propTypes2.default.object }, _class3.propTypes = { match: _propTypes2.default.object }, _class3.childContextTypes = { storeInfo: _propTypes2.default.object }, _temp), (_applyDecoratedDescriptor(_class2.prototype, 'onSettleSuccess', [_mobx.action], (0, _getOwnPropertyDescriptor2.default)(_class2.prototype, 'onSettleSuccess'), _class2.prototype), _descriptor = _applyDecoratedDescriptor(_class2.prototype, 'clearVoucherData', [_mobx.action], { enumerable: true, initializer: function initializer() { var _this3 = this; return function () { var controllerEvent = _this3.props.controllerEvent; controllerEvent('clearVoucherData'); }; } })), _class2)) || _class) || _class); exports.default = RetailOrderView; //# sourceMappingURL=RetailOrderVerticalView.js.map