tplus-pos
Version:
pos module
302 lines (246 loc) • 12.2 kB
JavaScript
'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = undefined;
var _extends2 = require('babel-runtime/helpers/extends');
var _extends3 = _interopRequireDefault(_extends2);
var _toConsumableArray2 = require('babel-runtime/helpers/toConsumableArray');
var _toConsumableArray3 = _interopRequireDefault(_toConsumableArray2);
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, _class2, _temp; /**
*
* @title Drawer基本示例
* @description 弹出文字
*
*/
var _react = require('react');
var _react2 = _interopRequireDefault(_react);
var _Drawer = require('tinper-bee/lib/Drawer');
var _Drawer2 = _interopRequireDefault(_Drawer);
var _pageStores = require('../../pageStores');
var _mobxReact = require('mobx-react');
var _propTypes = require('prop-types');
var _tplusComponentsTouch = require('tplus-components-touch');
var _mutantsUtil = require('mutants-util');
var _tplusMember = require('tplus-member');
var _mutantsMicrofx = require('mutants-microfx');
var _mutantsAppfx = require('mutants-appfx');
var _tplusPoslogin = require('tplus-poslogin');
var _common = require('../../util/common.js');
var _common2 = _interopRequireDefault(_common);
require('./style.less');
var _AuthProcess = require('../../domain/retail/auth/AuthProcess');
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var t = _mutantsMicrofx.i18n.getFixedT(null, 'newretail');
var DrawerTpl = (_dec = (0, _mutantsAppfx.injectViewModel)('Voucher'), _dec(_class = (0, _mobxReact.observer)(_class = (_temp = _class2 = function (_Component) {
(0, _inherits3.default)(DrawerTpl, _Component);
function DrawerTpl(props) {
(0, _classCallCheck3.default)(this, DrawerTpl);
var _this = (0, _possibleConstructorReturn3.default)(this, (DrawerTpl.__proto__ || (0, _getPrototypeOf2.default)(DrawerTpl)).call(this, props));
_this.state = {};
_this.controllerEvent = function (methodName, methodArgs) {
_this.context.onEvent({ 'controllerEvent': _mutantsAppfx.Action.fromJS(_this.context.viewModel, methodName) }, 'controllerEvent', methodArgs);
};
_this.rowPrintClick = function (data, type) {
var _ref = data || {},
ID = _ref.ID;
var repeatPrint = _common2.default.getRepeatPrint();
if (!repeatPrint) {
_tplusComponentsTouch.Message.warn(t('当前没有权限打印小票!'));
return;
}
console.log('打印单据rowClikdata', data);
var _ref2 = data || {},
DataSourceID = _ref2.DataSourceID;
if (type == 2 || DataSourceID == 56369) {
_this.controllerEvent('printMtRetail', { ID: ID });
} else {
_this.controllerEvent('onlyPrintRetail', { id: ID });
}
};
_this.authorityValidate = function (inventory) {
var status = _AuthProcess.AuthProcess.execute('ReverseOperation');
if (!status) {
_promise2.default.resolve(!_this.props.authorityValidate || _this.props.authorityValidate()).then(function (result) {
if (result) {
_this.controllerEvent('addInventoryFromStock', { inventory: inventory });
_tplusComponentsTouch.AddLogProcessor.execute("删除行", dto.Code, '删除行成功', true);
}
});
} else {
_this.controllerEvent('addInventoryFromStock', { inventory: inventory });
}
};
_this.PrintUtil = new _tplusComponentsTouch.PrintUtil();
var params = _mutantsMicrofx.localStore && _mutantsMicrofx.localStore.get('cloudPrintArguments');
if (params) _this.cloudPrintArguments = params;
return _this;
}
(0, _createClass3.default)(DrawerTpl, [{
key: 'componentWillUnmount',
value: function componentWillUnmount() {
_pageStores.drawerStore.hide();
}
}, {
key: 'wraperComponent',
value: function wraperComponent(_ref3) {
var component = _ref3.component,
componentKey = _ref3.componentKey;
var key = _pageStores.drawerStore.key;
return key == componentKey ? _react2.default.createElement(
'div',
{ className: componentKey },
component
) : null;
}
}, {
key: 'componentDidUpdate',
value: function componentDidUpdate() {
var visible = _pageStores.drawerStore.visible;
if (visible) {
var _ref4 = _mutantsUtil.platform || {},
isHorizontalPad = _ref4.isHorizontalPad;
if (!!isHorizontalPad) return;
var inputs = this.drawerPanel.drawer.getElementsByTagName("input");
if (inputs && inputs.length > 0) {
var arr = [].concat((0, _toConsumableArray3.default)(inputs));
var input = arr.find(function (v) {
return v.type == 'text';
});
if (input) setTimeout(function () {
input.focus();input.click();
}, 300);
}
} else {
this.controllerEvent('setInventoryFocus');
}
}
}, {
key: 'render',
value: function render() {
var _this2 = this;
var visible = _pageStores.drawerStore.visible,
title = _pageStores.drawerStore.title,
placement = _pageStores.drawerStore.placement,
show = _pageStores.drawerStore.show,
hide = _pageStores.drawerStore.hide,
key = _pageStores.drawerStore.key,
type = _pageStores.drawerStore.type,
saveDom = _pageStores.drawerStore.saveDom,
listArr = _pageStores.drawerStore.listArr;
var isEnableUMember = (0, _tplusPoslogin.PosInitData)('IsEnableUMember');
var amountPrecision = _tplusPoslogin.PosInitData["AmountPrecision"];
var amountMaxLength = _tplusPoslogin.PosInitData["AmountMaxLength"];
var storeInfo = _tplusPoslogin.TStore.restore();
var idStore = storeInfo.storeID;
return _react2.default.createElement(
_Drawer2.default,
{ className: 'pos-drawer',
title: title,
show: visible,
placement: placement,
onClose: hide,
maskClosable: true,
showClose: true,
ref: function ref(el) {
return _this2.drawerPanel = el;
},
destroyOnClose: !saveDom ? true : false,
closeIcon: _react2.default.createElement(_tplusComponentsTouch.Ticon, { type: 'guanbixiao' })
},
this.wraperComponent({
component: _react2.default.createElement(_tplusComponentsTouch.InventorySearch, {
amountPrecision: amountPrecision,
amountMaxLength: amountMaxLength,
idStore: idStore,
onClick: function onClick(inventory, v) {
_this2.authorityValidate(inventory);
}
}),
componentKey: 'stock'
}),
this.wraperComponent({
component: _react2.default.createElement(_tplusComponentsTouch.BillSearch, {
type: type,
idStore: idStore,
isUUser: isEnableUMember,
rowPrintClick: function rowPrintClick(data) {
return _this2.rowPrintClick(data, 1);
},
amountPrecision: amountPrecision,
amountMaxLength: amountMaxLength,
closeParentPage: hide,
storeData: this.props.viewModel.store.data,
handleRefundEvent: function handleRefundEvent(dto) {
_this2.controllerEvent('executeReturnInventory', dto);
}
}),
componentKey: 'searchbill'
}),
this.wraperComponent({
component: _react2.default.createElement(
'div',
{ className: 'member-content' },
_react2.default.createElement(_tplusMember.ShopMember, (0, _extends3.default)({}, this.props, {
mode: _pageStores.voucherStateStore.mode,
type: '\u4F1A\u5458\u67E5\u8BE2',
status: 0,
listArr: listArr,
defaultActiveKey: '1',
ref: function ref(el) {
return _this2.memberTpl = el;
},
onCancel: _pageStores.drawerStore.hide,
onOk: _pageStores.drawerStore.hide,
memberChange: function memberChange(memberInfo) {
_this2.controllerEvent('changeMember', memberInfo);
},
authProcess: _AuthProcess.AuthProcess
}))
),
componentKey: 'member'
}),
this.wraperComponent({
component: _react2.default.createElement(_tplusComponentsTouch.DeliverySearch, {
type: type,
idStore: idStore,
isUUser: isEnableUMember,
rowPrintClick: function rowPrintClick(data) {
return _this2.rowPrintClick(data, 2);
},
amountPrecision: amountPrecision,
amountMaxLength: amountMaxLength,
closeParentPage: hide,
storeData: this.props.viewModel.store.data,
handleUnSeedsCountEvent: function handleUnSeedsCountEvent() {
_this2.controllerEvent('doEcommerceUnSeedsCountEvent');
},
handleLoadPageEvent: function handleLoadPageEvent() {
_this2.controllerEvent('executeDeliveryInventory');
}
}),
componentKey: 'deliverylist'
})
);
}
}]);
return DrawerTpl;
}(_react.Component), _class2.contextTypes = {
onEvent: _propTypes.PropTypes.func,
viewModel: _propTypes.PropTypes.object,
stores: _propTypes.PropTypes.object
}, _temp)) || _class) || _class);
exports.default = DrawerTpl;
//# sourceMappingURL=index.js.map