UNPKG

tplus-pos

Version:

pos module

253 lines (209 loc) 7.82 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = undefined; var _Transfer2 = require('tinper-bee/dist/Transfer'); var _Transfer3 = _interopRequireDefault(_Transfer2); var _Button3 = require('tinper-bee/dist/Button'); var _Button4 = _interopRequireDefault(_Button3); var _extends2 = require('babel-runtime/helpers/extends'); var _extends3 = _interopRequireDefault(_extends2); 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; require('tinper-bee/dist/Transfer/index.css'); require('tinper-bee/dist/Button/index.css'); var _react = require('react'); var _react2 = _interopRequireDefault(_react); var _propTypes = require('prop-types'); var _propTypes2 = _interopRequireDefault(_propTypes); var _mutantsMicrofx = require('mutants-microfx'); require('bee-transfer/build/Transfer.css'); var _tplusComponentsTouch = require('tplus-components-touch'); require('./style.less'); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var PlanSelector = (_dec = (0, _mutantsMicrofx.translate)('posTouch'), _dec(_class = (0, _mutantsMicrofx.observer)(_class = (_temp = _class2 = function (_Component) { (0, _inherits3.default)(PlanSelector, _Component); function PlanSelector(props, context) { (0, _classCallCheck3.default)(this, PlanSelector); var _this = (0, _possibleConstructorReturn3.default)(this, (PlanSelector.__proto__ || (0, _getPrototypeOf2.default)(PlanSelector)).call(this)); _this.state = {}; _this.handleChange = function (targetKeys) { _this.planList.select(targetKeys); _this.context.onEvent(_this.planList, 'onSelected'); }; _this.handleModify = function () {}; _this.handleCancel = function () { _this.planList.hide('cancel'); _this.context.onEvent(_this.planList, 'onCancel'); }; _this.handleOk = function () { _this.setState({ disabled: true }); var planList = _this.context.viewModel.items.find(function (it) { return it.type === 'PlanListModel'; }); _this.context.onEvent(planList, 'onOk').then(function () { _this.setState({ disabled: false }); planList.hide('ok'); }); }; _this.handleClear = function () { _this.context.onEvent(_this.planList, 'onCancel', { clear: true }); }; _this.planList = context.viewModel.items.find(function (it) { return it.type === 'PlanListModel'; }); _this.disposer = (0, _mutantsMicrofx.reaction)(function () { return _this.planList.visible; }, function (visible) { if (visible) { context.onEvent(_this.planList, 'onLoad'); // 一个自动选择 if (_this.planList.items.length === 1) { _this.handleChange(_this.planList.items.map(function (it) { return it.key; })[0]); // 正品界面关闭联动方案界面一起关闭 (0, _mutantsMicrofx.when)(function () { return _this.planList.activeDetail.visible === false; }, function () { if (_this.planList.activeDetail.reason === 'ok') { _this.handleOk(); } else { _this.handleCancel(); } }); } } }); return _this; } (0, _createClass3.default)(PlanSelector, [{ key: 'componentDidMount', value: function componentDidMount() { this.disposer(); } }, { key: 'renderItem', value: function renderItem(item) { var _this2 = this; return { label: _react2.default.createElement( 'span', { className: 'planitem', onClick: function onClick() { return item.order ? _this2.handleModify(item.key) : _this2.handleChange(item.key); } }, item.order ? _react2.default.createElement( 'span', { className: 'no' }, item.order ) : null, _react2.default.createElement( 'span', { className: 'titlearea' }, _react2.default.createElement( 'span', { className: 'title' }, item.title ), _react2.default.createElement( 'span', { className: 'description' }, item.description ) ), _react2.default.createElement( 'span', { className: 'extra' }, item.extra ) ), value: item.title }; } }, { key: 'render', value: function render() { var _this3 = this; var t = this.props.t; var ds = this.planList.waitingItems.concat(this.planList.selecteds.map(function (it, i) { return (0, _extends3.default)({}, it, { key: it.key + '_' + i, order: i + 1 }); })); var tks = this.planList.selectedKeys.slice().map(function (key, i) { return key + '_' + i; }); return _react2.default.createElement( _tplusComponentsTouch.ModalWraper, { key: 'dataList', show: this.planList.visible, modalType: 'big', exclueBoard: true, title: this.planList.title, className: 'planSelectorModal', onHide: this.handleCancel, footer: _react2.default.createElement( 'div', null, _react2.default.createElement( _Button4.default, { onClick: this.handleCancel, disabled: this.state.disabled }, t('取消') ), _react2.default.createElement( _Button4.default, { type: 'primary', className: 'ok', onClick: this.handleOk, disabled: this.state.disabled }, t('确定') ) ) }, _react2.default.createElement(_Transfer3.default, { className: 'planSelector', dataSource: ds, render: function render(item) { return _this3.renderItem(item); }, titles: [_react2.default.createElement( 'span', { key: 'waititems' }, t('待选') ), [_react2.default.createElement( 'span', { key: 'title' }, t('已选') ), _react2.default.createElement( 'span', { key: 'btn', className: ['btn'].concat(this.planList.selecteds.length > 0 ? ['enabled'] : []).join(' '), onClick: this.handleClear }, t('清空') )]], notFoundContent: this.planList.selectedKeys.length > 0 ? t('促销方案已完成,没有可执行的促销方案') : t('请在待选区添加促销方案'), targetKeys: tks }) ); } }]); return PlanSelector; }(_react.Component), _class2.propTypes = { t: _propTypes2.default.func }, _class2.contextTypes = { viewModel: _propTypes2.default.object, onEvent: _propTypes2.default.func }, _temp)) || _class) || _class); exports.default = PlanSelector; //# sourceMappingURL=index.js.map