UNPKG

tplus-pos

Version:

pos module

901 lines (728 loc) 38.9 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 _stringify = require('babel-runtime/core-js/json/stringify'); var _stringify2 = _interopRequireDefault(_stringify); var _extends2 = require('babel-runtime/helpers/extends'); var _extends3 = _interopRequireDefault(_extends2); var _regenerator = require('babel-runtime/regenerator'); var _regenerator2 = _interopRequireDefault(_regenerator); var _asyncToGenerator2 = require('babel-runtime/helpers/asyncToGenerator'); var _asyncToGenerator3 = _interopRequireDefault(_asyncToGenerator2); 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, _descriptor2, _descriptor3, _class3, _temp, _initialiseProps; var _mobxReact = require('mobx-react'); var _react = require('react'); var _react2 = _interopRequireDefault(_react); var _propTypes = require('prop-types'); var _propTypes2 = _interopRequireDefault(_propTypes); var _tplusComponentsTouch = require('tplus-components-touch'); var _tplusPoslogin = require('tplus-poslogin'); var _tplusApi = require('tplus-api'); var _mutantsMicrofx = require('mutants-microfx'); var _voucherPosTouch = require('../components/voucherPosTouch'); var _voucherPosTouch2 = _interopRequireDefault(_voucherPosTouch); var _voucherLeftPosTouch = require('../components/voucherLeftPosTouch'); var _voucherLeftPosTouch2 = _interopRequireDefault(_voucherLeftPosTouch); var _index = require('../components/voucherPatternPosTouch/index'); var _index2 = _interopRequireDefault(_index); var _modalWraperPosTouch = require('../components/modalWraperPosTouch'); var _modalWraperPosTouch2 = _interopRequireDefault(_modalWraperPosTouch); var _product = require('../components/product'); var _product2 = _interopRequireDefault(_product); var _drawer = require('../components/drawer'); var _drawer2 = _interopRequireDefault(_drawer); var _mobx = require('mobx'); var _mutantsAppfx = require('mutants-appfx'); var _pageStores = require('../pageStores'); var _setData = require('../config/setData.js'); var _setData2 = _interopRequireDefault(_setData); var _debounce = require('lodash/debounce'); var _debounce2 = _interopRequireDefault(_debounce); var _localStore = require('../localStore'); var _localStore2 = _interopRequireDefault(_localStore); var _Enum = require('../commom/Enum.js'); var _throttle2 = require('lodash/throttle'); var _throttle3 = _interopRequireDefault(_throttle2); var _uiCommon = require('../util/uiCommon.js'); var _uiCommon2 = _interopRequireDefault(_uiCommon); var _env = require('../util/env.js'); var _env2 = _interopRequireDefault(_env); require('./style.less'); 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 _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; } function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that transform-class-properties is enabled.'); } var Footer = _tplusComponentsTouch.Layout.Footer, Sider = _tplusComponentsTouch.Layout.Sider, Content = _tplusComponentsTouch.Layout.Content; 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 _this2 = (0, _possibleConstructorReturn3.default)(this, (RetailOrderView.__proto__ || (0, _getPrototypeOf2.default)(RetailOrderView)).call(this, props)); _initialiseProps.call(_this2); _this2.state = { voucherDefaultPosMode: {}, pageId: Date.now(), underAmountThreshold: false }; var controllerEvent = _this2.props.controllerEvent; _this2.controllerEvent = controllerEvent; var horizontalPad = _env2.default.horizontalPad(); _this2.horizontalSunMi = _env2.default.horizontalSunMi(); _this2.resizeThrottled = (0, _throttle3.default)(_this2.resize, 100); _this2.amountThreshold = horizontalPad ? 860 : 1024; _this2.isMobileEnvironment = horizontalPad; _this2.hasElectron = _mutantsMicrofx.env.platform === _mutantsMicrofx.env.constant.platform.electron; _this2.openWeightParams = {}; //电子秤数据 return _this2; } (0, _createClass3.default)(RetailOrderView, [{ key: 'componentWillMount', value: function componentWillMount() { this.guide = {}; var _context$headHook = this.context.headHook; _context$headHook = _context$headHook === undefined ? {} : _context$headHook; var addClass = _context$headHook.addClass; addClass && addClass(this.state.pageId, 'retailOrder'); _pageStores.voucherStateStore.init(); // 进入开单页的默认焦点 var config = this.getCursorDefaultPosition(); if (config && config.cursorDefault) { _mutantsMicrofx.localStore && _mutantsMicrofx.localStore.set('cursorDefaultPosition', config.cursorDefault); } // 辨别触摸屏模式、单据模式,并保存 this.voucherDefaultPosMode = _mutantsMicrofx.localStore && _mutantsMicrofx.localStore.get('voucherDefaultPosMode') || 'touch'; } }, { key: 'componentDidMount', value: function componentDidMount() { var _this3 = this; setTimeout((0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee() { return _regenerator2.default.wrap(function _callee$(_context) { while (1) { switch (_context.prev = _context.next) { case 0: _this3.setMemberProductCursor(); //获取硬件设置参数 _context.next = 3; return _mutantsMicrofx.stores.hardSetStore.getHardwareSetting(); case 3: if (!_this3.horizontalSunMi) { _context.next = 7; break; } _context.next = 6; return _this3.openSunMiScale(); case 6: return _context.abrupt('return'); case 7: _context.next = 9; return _this3.openScale(); case 9: _context.next = 11; return _this3.openGuestShow(); case 11: case 'end': return _context.stop(); } } }, _callee, _this3); })), 0); this.resize(); window.addEventListener('resize', this.resizeThrottled); } }, { key: 'componentWillUnmount', value: function componentWillUnmount() { var _context$headHook2 = this.context.headHook; _context$headHook2 = _context$headHook2 === undefined ? {} : _context$headHook2; var removeClass = _context$headHook2.removeClass; removeClass && removeClass(this.state.pageId, 'retailOrder'); //练习收银清空挂单数据 if (_pageStores.voucherStateStore.mode === 'practice') { _localStore2.default.leavePracticePage(); } //清除右上角导购员 this.context.infoRender(_react2.default.createElement('span', null)); //关闭电子秤、客显 _pageStores.voucherStateStore.changeScaleState({ state: '0' }); _pageStores.voucherStateStore.changeGuestShowState({ state: '0' }); if (this.hasElectron === true) { var portsetting_hardSet = _mutantsMicrofx.stores.hardSetStore; if (portsetting_hardSet && portsetting_hardSet.scale_enable) { console.log('关闭电子秤参数:', this.openWeightParams); _mutantsMicrofx.nativeMs.setIpcRendererMethod('CloseWeight', this.openWeightParams); } if (portsetting_hardSet && portsetting_hardSet.guestshow_enable) { _tplusComponentsTouch.HardwareAPI.closeCusDisp({ isClearTPB: true }, function (ret) { var dt = JSON.parse(ret); if (dt && dt.status === 0) { console.log('关闭客显成功'); } }); } } window.removeEventListener('resize', this.resizeThrottled); } }, { key: 'openSunMiScale', // 打开商米电子秤 value: function () { var _ref2 = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee2() { var portsetting_hardSet; return _regenerator2.default.wrap(function _callee2$(_context2) { while (1) { switch (_context2.prev = _context2.next) { case 0: _pageStores.voucherStateStore.changeScaleState({ state: '0' }); /* 是否进行电子秤设置 */ portsetting_hardSet = _mutantsMicrofx.stores.hardSetStore; console.log("portsetting_hardSet:", portsetting_hardSet); if (!(!portsetting_hardSet || !portsetting_hardSet.scale_enable)) { _context2.next = 7; break; } _pageStores.voucherStateStore.changeScaleState({ state: '2' }); console.log("进入开单页打开电子秤,无portsetting_hardSet参数 state设置为2", _pageStores.voucherStateStore.scaleState); return _context2.abrupt('return'); case 7: return _context2.abrupt('return'); case 8: case 'end': return _context2.stop(); } } }, _callee2, this); })); function openSunMiScale() { return _ref2.apply(this, arguments); } return openSunMiScale; }() /* 打开电子秤 */ }, { key: 'openScale', value: function () { var _ref3 = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee4() { var _this4 = this; var portsetting_hardSet, scale_baud, scale_check, scale_bit, scale_stop, scale_type, scale_port, openWeightParams; return _regenerator2.default.wrap(function _callee4$(_context4) { while (1) { switch (_context4.prev = _context4.next) { case 0: _pageStores.voucherStateStore.changeScaleState({ state: '0' }); if (!(this.hasElectron === false)) { _context4.next = 5; break; } _pageStores.voucherStateStore.changeScaleState({ state: '1' }); console.log("进入开单页打开电子秤,不在客户端环境 state设置为1", _pageStores.voucherStateStore.scaleState); return _context4.abrupt('return'); case 5: /* 是否进行电子秤设置 */ portsetting_hardSet = _mutantsMicrofx.stores.hardSetStore; console.log("portsetting_hardSet:", portsetting_hardSet); if (!(!portsetting_hardSet || !portsetting_hardSet.scale_enable)) { _context4.next = 11; break; } _pageStores.voucherStateStore.changeScaleState({ state: '2' }); console.log("进入开单页打开电子秤,无portsetting_hardSet参数 state设置为2", _pageStores.voucherStateStore.scaleState); return _context4.abrupt('return'); case 11: /* 电子称数据 */ scale_baud = portsetting_hardSet.scale_baud, scale_check = portsetting_hardSet.scale_check, scale_bit = portsetting_hardSet.scale_bit, scale_stop = portsetting_hardSet.scale_stop, scale_type = portsetting_hardSet.scale_type, scale_port = portsetting_hardSet.scale_port; if (!(!scale_port || !scale_type)) { _context4.next = 15; break; } console.warn('\u7535\u5B50\u79E4\u53C2\u6570\u6709\u8BEF:scale_port:' + scale_port + ';scale_type:' + scale_type); return _context4.abrupt('return'); case 15: openWeightParams = { port: scale_port, setting: scale_baud + ',' + scale_check + ',' + scale_bit + ',' + scale_stop, balance: scale_type, onlyOpen: true }; this.openWeightParams = openWeightParams; console.log(openWeightParams, '打开电子秤所需参数'); _mutantsMicrofx.nativeMs.setIpcRendererMethod('OpenWeight', openWeightParams, function () { var _ref4 = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee3(ret) { var dt; return _regenerator2.default.wrap(function _callee3$(_context3) { while (1) { switch (_context3.prev = _context3.next) { case 0: dt = JSON.parse(ret); if (!dt || dt.intace === 0) { _pageStores.voucherStateStore.changeScaleState({ state: '3' }); console.log("进入开单页打开称,获取值失败 state设置为3", _pageStores.voucherStateStore.scaleState); } console.log('电子秤启动流程结束'); case 3: case 'end': return _context3.stop(); } } }, _callee3, _this4); })); return function (_x) { return _ref4.apply(this, arguments); }; }()); console.log("电子open完成 voucherStateStore:", _pageStores.voucherStateStore.scaleState); case 20: case 'end': return _context4.stop(); } } }, _callee4, this); })); function openScale() { return _ref3.apply(this, arguments); } return openScale; }() /* 打开客显 */ }, { key: 'openGuestShow', value: function () { var _ref5 = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee5() { var portsetting_hardSet, guestshow_type, guestshow_port, guestshow_params, openGuestShowParams; return _regenerator2.default.wrap(function _callee5$(_context5) { while (1) { switch (_context5.prev = _context5.next) { case 0: _pageStores.voucherStateStore.changeGuestShowState({ state: '0' }); if (!(this.hasElectron === false)) { _context5.next = 5; break; } _pageStores.voucherStateStore.changeGuestShowState({ state: '1' }); console.log("进入开单页打开客显,不在客户端环境 state设置为1", _pageStores.voucherStateStore.guestShowState); return _context5.abrupt('return'); case 5: /* 是否进行客显设置 */ portsetting_hardSet = _mutantsMicrofx.stores.hardSetStore; console.log("portsetting_hardSet:", portsetting_hardSet); if (!(!portsetting_hardSet || !portsetting_hardSet.guestshow_enable)) { _context5.next = 11; break; } _pageStores.voucherStateStore.changeGuestShowState({ state: '2' }); console.log("进入开单页打开客显,无portsetting_hardSet参数 state设置为2", _pageStores.voucherStateStore.guestShowState); return _context5.abrupt('return'); case 11: /* 客显称数据 */ guestshow_type = portsetting_hardSet.guestshow_type, guestshow_port = portsetting_hardSet.guestshow_port, guestshow_params = portsetting_hardSet.guestshow_params; openGuestShowParams = { dev: guestshow_type, port: 'com' + guestshow_port, portset: guestshow_params }; console.log('打开客显所需参数', openGuestShowParams); _tplusComponentsTouch.HardwareAPI.openCusDisp(openGuestShowParams, function (ret) { var dt = JSON.parse(ret); if (dt && dt.error) { _pageStores.voucherStateStore.changeGuestShowState({ state: '3' }); console.log("进入开单页打开称,获取值失败 state设置为3", _pageStores.voucherStateStore.guestShowState); } console.log('客显启动流程结束'); }); case 15: case 'end': return _context5.stop(); } } }, _callee5, this); })); function openGuestShow() { return _ref5.apply(this, arguments); } return openGuestShow; }() /* 默认商品录入焦点位置 */ }, { key: 'setInventoryFocus', value: function setInventoryFocus() { this.controllerEvent('setInventoryFocus'); } /* 默认参数设置焦点位置 */ }, { key: 'setMemberProductCursor', value: function setMemberProductCursor() { this.controllerEvent('setMemberProductCursor'); } }, { key: 'getProductConfigure', value: function getProductConfigure() { var setStore = this.context.stores.setStore; var productConfigure = {}; var typeSet = {}, configure = {}; var data = (0, _mobx.toJS)(setStore.getSetData()); if (Array.isArray(data)) { //接口数据为数组 configure = _setData2.default.getProductConfigure(data); typeSet = _setData2.default.getInventoryButtonSize(data); } productConfigure = (0, _extends3.default)({ configure: configure }, typeSet); return productConfigure; } }, { key: 'getCursorDefaultPosition', value: function getCursorDefaultPosition() { var setStore = this.context.stores.setStore; var configure = {}; var data = (0, _mobx.toJS)(setStore.getSetData()); if (Array.isArray(data)) { //接口数据为数组 configure = _setData2.default.getCursorDefaultPosition(data); } return configure; } }, { key: 'onSettleSuccess', /* 结算成功回调 */ value: function onSettleSuccess(_ref6) { var openCashBox = _ref6.openCashBox; //用户信息 var userId = (0, _tplusPoslogin.PosInitData)('UserId'); var userName = (0, _tplusPoslogin.PosInitData)('UserName'); var userParams = (0, _stringify2.default)({ userId: userId, userName: userName }); try { var _this = this; (0, _tplusApi.serverLog)('newretail', { eventId: 'SettleSuccessProcess_onSettleSuccess_trigger_printRetail', param: userParams }); this.controllerEvent('printRetail', { openCashBox: openCashBox }).then(function () { // 先打印然后重新开单 (0, _tplusApi.serverLog)('newretail', { eventId: 'SettleSuccessProcess_onSettleSuccess_trigger_clearVoucherData', param: userParams }); _this.controllerEvent('clearVoucherData', { keep: true }); }); } catch (error) { (0, _tplusApi.serverLog)('newretail', { eventId: 'SettleSuccessProcess_onSettleSuccess_error', param: userParams }); } } /* 取消结算 */ }, { key: 'onCancelSettle', value: function onCancelSettle() { this.controllerEvent('cancelPromotion', true); } /* 特定报错 重新开单 */ /* 结算校验 */ /* 权限校验 */ }, { key: 'render', value: function render() { var _this5 = this; var _state = this.state, collapsed = _state.collapsed, underAmountThreshold = _state.underAmountThreshold; var mode = _pageStores.voucherStateStore.mode; var voucherVM = this.props.viewModel; var dataModal = voucherVM.store.data; var isReturn = dataModal.IdbusiType === 35; var IdMember = dataModal.Idmember || ''; var storeInfo = _tplusPoslogin.TStore.restore(); var idStore = storeInfo.storeID; var voucherMode = this.voucherDefaultPosMode == 'voucher'; /* 结算参数 */ var settlementParams = {}; var bTest = mode === 'practice'; console.log(_Enum.DataSource, 'DataSource=='); settlementParams = { bTest: bTest, onValidate: this.onValidate, onSettleSuccess: function onSettleSuccess(_ref7) { var openCashBox = _ref7.openCashBox; setTimeout(function () { return $.observerTrigger(); }, 0); _this5.onSettleSuccess({ openCashBox: openCashBox }); }, onCancelSettle: function onCancelSettle() { setTimeout(function () { return $.observerTrigger(); }, 0); _this5.onCancelSettle(); _this5.setInventoryFocus(); }, onModalClose: function onModalClose() { _this5.setMemberProductCursor(); }, clearVoucherData: this.clearVoucherData, onHandleAmount: function () { var _ref8 = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee6(type) { return _regenerator2.default.wrap(function _callee6$(_context6) { while (1) { switch (_context6.prev = _context6.next) { case 0: _context6.next = 2; return _this5.controllerEvent('getAvailableAmount', { type: type }); case 2: case 'end': return _context6.stop(); } } }, _callee6, _this5); })); return function onHandleAmount(_x2) { return _ref8.apply(this, arguments); }; }(), dataSource: _Enum.DataSource, initData: _tplusPoslogin.PosInitData, storeInfo: storeInfo, showAmount: voucherMode && underAmountThreshold ? true : !underAmountThreshold, amount: dataModal.TotalTaxAmount, totalVariety: voucherVM.totalVariety, totalQuantity: voucherVM.totalQuantity, quantityDetail: voucherVM.quantityDetail, isReturn: isReturn, isShowChangeTurn: true /* 选商品参数 */ };var productParams = {}; var productConfigure = this.getProductConfigure(); var totalAmount = this.context && this.context.viewModel && this.context.viewModel.data.TotalTaxAmount; var _ref9 = voucherVM || {}, _ref9$quantityDetail = _ref9.quantityDetail, _ref9$quantityDetail$ = _ref9$quantityDetail.buyQuantity, buyQuantity = _ref9$quantityDetail$ === undefined ? 0 : _ref9$quantityDetail$, _ref9$quantityDetail$2 = _ref9$quantityDetail.returnQuantity, returnQuantity = _ref9$quantityDetail$2 === undefined ? 0 : _ref9$quantityDetail$2, totalVariety = _ref9.totalVariety, totalQuantity = _ref9.totalQuantity; //数量总和的值,包括称重的。 var sumQuantity = 0; var sumRetailDetails = this.context && this.context.viewModel && this.context.viewModel.data.RetailDetails; if (sumRetailDetails && sumRetailDetails.length > 0) { sumRetailDetails.forEach(function (v) { sumQuantity += Math.abs(v.Quantity); }); } productParams = { configure: (0, _extends3.default)({}, productConfigure.configure, { idStore: idStore }), type: productConfigure.type, onClick: (0, _debounce2.default)(this.addSku, 50), justOneResultCallBack: this.justOneResultCallBack, isReturn: isReturn, idMember: IdMember, showAmount: this.state.underAmountThreshold, pricePrecision: (0, _tplusPoslogin.PosInitData)("PricePrecision"), totalAmount: totalAmount, totalVariety: totalVariety, totalQuantity: totalQuantity, buyQuantity: buyQuantity, returnQuantity: returnQuantity, sumQuantity: sumQuantity /*会员*/ };var memberParams = { selectMemberSuccess: function selectMemberSuccess() { _this5.controllerEvent('setInventoryFocus'); }, authorityValidate: this.authorityValidate //渲染导购员 };if (voucherVM && voucherVM.guide && voucherVM.guide.ID !== this.guide.ID) { this.guide = voucherVM.guide; if (!voucherVM.guide.ID) { this.context.infoRender(_react2.default.createElement('span', null)); } else { var renderText = this.guide.Name; this.context.infoRender(_react2.default.createElement( 'span', { className: 'voucher-head-guide', style: { isplay: 'inline-block', marginRight: '20px' } }, '\u5BFC\u8D2D\u5458: ', renderText )); } } console.log('quantityDetail===', voucherVM && voucherVM.quantityDetail); return _react2.default.createElement( _tplusComponentsTouch.Layout, { className: 'voucher-wraper-layer' }, _react2.default.createElement( _tplusComponentsTouch.Layout, { className: 'voucher-wraper' }, _react2.default.createElement(_voucherLeftPosTouch2.default, { onCollapse: this.onCollapse }), this.voucherDefaultPosMode == 'voucher' ? _react2.default.createElement(_index2.default, { collapsed: collapsed, settlementParams: settlementParams, productParams: productParams, memberParams: memberParams }) : _react2.default.createElement( Content, null, _react2.default.createElement( _tplusComponentsTouch.Layout, { className: 'voucher-container-wrapper' }, _react2.default.createElement( Sider, { width: 430 }, _react2.default.createElement(_voucherPosTouch2.default, { collapsed: collapsed, memberParams: memberParams }) ), _react2.default.createElement( _tplusComponentsTouch.Layout, { className: 'voucher-right' }, _react2.default.createElement( Content, { className: 'product-container-wrapper' }, _react2.default.createElement(_product2.default, productParams) ), _react2.default.createElement( Footer, { className: 'settlement' }, _react2.default.createElement(_tplusComponentsTouch.Settlement, settlementParams) ) ) ) ) ), _react2.default.createElement(_modalWraperPosTouch2.default, null), _react2.default.createElement(_drawer2.default, memberParams) ); } }]); 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 }, _initialiseProps = function _initialiseProps() { var _this6 = this; this.resize = function () { var _this = _this6; var width = document.body.clientWidth; _this6.setState({ underAmountThreshold: width <= _this.amountThreshold }); }; _initDefineProp(this, 'addSku', _descriptor, this); _initDefineProp(this, 'justOneResultCallBack', _descriptor2, this); _initDefineProp(this, 'clearVoucherData', _descriptor3, this); this.onValidate = function () { _uiCommon2.default.mask({}); // 需要异步校验 var _this = _this6; return new _promise2.default(function (resolve, reject) { _this.controllerEvent('onValidate').then(function () { _uiCommon2.default.deleteMask({ async: true }); resolve(_this6.props.viewModel.settlementVisiable); }).catch(function (err) { console.warn(err); _uiCommon2.default.deleteMask({ async: true }); }); }); }; this.authorityValidate = function (_ref10) { var callback = _ref10.callback; var controllerEvent = _this6.props.controllerEvent; _uiCommon2.default.mask({}); // 需要异步校验 var _this = _this6; return new _promise2.default(function (resolve, reject) { _this.controllerEvent('authorityValidate').then(function (result) { _uiCommon2.default.deleteMask({ async: true }); callback && callback(result); resolve(result); }).catch(function (err) { console.warn(err); _uiCommon2.default.deleteMask({ async: true }); }); }); }; this.onCollapse = function (collapsed) { _this6.setState({ collapsed: collapsed }); }; }, _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, 'addSku', [_mobx.action], { enumerable: true, initializer: function initializer() { var _this7 = this; return function (product, x, y, el) { //设置位置 用于购物车抛物线 _pageStores.voucherStateStore.changeInventoryPosition({ x: x, y: y }); _pageStores.voucherStateStore.changeEl(el); //触发添加商品controller _this7.controllerEvent('addInventory', { inventory: product }); }; } }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, 'justOneResultCallBack', [_mobx.action], { enumerable: true, initializer: function initializer() { var _this8 = this; return function (data) { if (window.__successModal) { window.__successModal.destroy(); window.__successModal = null; } _this8.controllerEvent('justOneResultCallBack', data); }; } }), _applyDecoratedDescriptor(_class2.prototype, 'onSettleSuccess', [_mobx.action], (0, _getOwnPropertyDescriptor2.default)(_class2.prototype, 'onSettleSuccess'), _class2.prototype), _descriptor3 = _applyDecoratedDescriptor(_class2.prototype, 'clearVoucherData', [_mobx.action], { enumerable: true, initializer: function initializer() { var _this9 = this; return function () { _this9.controllerEvent('clearVoucherData'); }; } })), _class2)) || _class) || _class); exports.default = RetailOrderView; //# sourceMappingURL=RetailOrderView.js.map