tplus-pos
Version:
pos module
253 lines (209 loc) • 7.82 kB
JavaScript
;
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