UNPKG

tplus-pos

Version:

pos module

220 lines (181 loc) 7.66 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var _Alert2 = require('tinper-bee/dist/Alert'); var _Alert3 = _interopRequireDefault(_Alert2); 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; require('tinper-bee/dist/Alert/index.css'); var _tplusComponentsTouch = require('tplus-components-touch'); var _react = require('react'); var _react2 = _interopRequireDefault(_react); var _mutantsMicrofx = require('mutants-microfx'); var _mutantsAppfx = require('mutants-appfx'); var _mutantsUtil = require('mutants-util'); require('./style.less'); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var FreeItemsModal = (_dec = (0, _mutantsAppfx.injectViewModel)('FreeItemsModal'), _dec(_class = (0, _mutantsMicrofx.observer)(_class = function (_Component) { (0, _inherits3.default)(FreeItemsModal, _Component); function FreeItemsModal(props, context) { (0, _classCallCheck3.default)(this, FreeItemsModal); var _this = (0, _possibleConstructorReturn3.default)(this, (FreeItemsModal.__proto__ || (0, _getPrototypeOf2.default)(FreeItemsModal)).call(this, props, context)); _this.onOk = function () { var viewInfo = _this.props.viewModel; var ok = viewInfo.ok, freeItems = viewInfo.freeItems; var isSuccess = freeItems.every(function (element) { return _this.outData[element.Name]; }); if (isSuccess) ok(_this.outData); }; _this.upDown = function (index) { _this.setState({ freeItemIndex: index }); _this.refs['freeItem_' + index].scrollIntoView(true); }; _this.getDefaultFreeItems = function (freeItems, freeItemSelect) { // 默认没有选中自由项的选中第一个 freeItems.forEach(function (freeItem, i) { var isChoose = freeItem.FreeItemRanges.some(function (rangeItem) { if (rangeItem.Name === freeItem.Value) return true; }); if (!isChoose && freeItem.FreeItemRanges[0] !== undefined) { freeItems[i].Value = freeItem.FreeItemRanges[0].Name; } }); return freeItems; }; _this.outData = {}, _this.state = { freeItemIndex: 0 }; return _this; } (0, _createClass3.default)(FreeItemsModal, [{ key: 'renderFree', value: function renderFree() { var _this2 = this; var _props$viewModel = this.props.viewModel, freeItems = _props$viewModel.freeItems, freeItemSelect = _props$viewModel.freeItemSelect; var ItemIndex = this.state.freeItemIndex; var refreeItems = this.getDefaultFreeItems(freeItems, freeItemSelect); var idx = ItemIndex <= -1 || ItemIndex == undefined || ItemIndex > refreeItems.length - 1 ? 0 : ItemIndex; return refreeItems.map(function (freeItem, i) { return _react2.default.createElement( 'div', { onClick: function onClick() { _this2.upDown(i); }, ref: 'freeItem_' + i, className: 'free-range ' + (idx == i ? 'free-range-selected' : ''), key: 'freeItem_' + i }, _react2.default.createElement( 'span', { className: 'free-range-title' }, freeItem.Title ), _react2.default.createElement( 'div', { className: 'free-range-valueWaper' }, freeItem.FreeItemRanges.map(function (rangeItem, index) { var isChoose = rangeItem.Name === freeItem.Value; return _react2.default.createElement( 'span', { key: freeItem.Name + '_rangeItem_' + index, className: isChoose ? 'free-range-select' : 'free-range-default', onClick: function onClick() { freeItemSelect(rangeItem, i); } }, rangeItem.Name, _react2.default.createElement(_tplusComponentsTouch.Ticon, { style: !isChoose ? { visibility: 'hidden' } : {}, type: 'xuanzhong', className: 'xuanzhong' }) ); }) ) ); }); } }, { key: 'render', value: function render() { var _props$viewModel2 = this.props.viewModel, visible = _props$viewModel2.visible, title = _props$viewModel2.title, _ok = _props$viewModel2.ok, _cancel = _props$viewModel2.cancel, errText = _props$viewModel2.errText, cancelEnable = _props$viewModel2.cancelEnable, head = _props$viewModel2.head; var voucherDefaultPosMode = _mutantsMicrofx.localStore && _mutantsMicrofx.localStore.get('voucherDefaultPosMode') || 'touch'; var _ref = _mutantsUtil.platform || {}, isHorizontalPad = _ref.isHorizontalPad; return _react2.default.createElement( 'div', null, _react2.default.createElement( _tplusComponentsTouch.ModalWraper, { key: 'freeItems', show: visible, modalType: 'mid', title: head, className: _tplusComponentsTouch.hotKey.hotKeyBindClass('7', 'freeItem'), reqfooter: true, cancel: function cancel() { _cancel(); }, ok: function ok() { _ok(); } }, _react2.default.createElement( 'div', { className: 'freeItem-content' }, title ? _react2.default.createElement( 'div', { className: 'freeItem-title' }, _react2.default.createElement( 'span', { className: 'head-name' }, title && title.name, ':' ), _react2.default.createElement( 'span', { className: 'head-value' }, title && title.value ) ) : null, !!errText && _react2.default.createElement( _Alert3.default, null, errText ), _react2.default.createElement( 'div', { className: 'freeItem-container' }, this.renderFree() ), voucherDefaultPosMode == 'voucher' && !isHorizontalPad ? head == "修改单位" ? _react2.default.createElement( 'div', { className: 'freeItem-footer' }, '\u2190\u2192\u65B9\u5411\u952E\uFF1A\u9009\u62E9\u5355\u4F4D' ) : _react2.default.createElement( 'div', { className: 'freeItem-footer' }, '\u2191\u2193\u65B9\u5411\u952E\uFF1A\u9009\u62E9\u81EA\u7531\u9879 \uFF1B\u2190\u2192\u65B9\u5411\u952E\uFF1A\u9009\u62E9\u81EA\u7531\u9879\u53D6\u503C' ) : null ) ) ); } }]); return FreeItemsModal; }(_react.Component)) || _class) || _class); exports.default = FreeItemsModal; //# sourceMappingURL=index.js.map