tplus-pos
Version:
pos module
73 lines (56 loc) • 2.44 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.WholeCashBackProcessBlock = undefined;
var _classCallCheck2 = require('babel-runtime/helpers/classCallCheck');
var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
var _createClass2 = require('babel-runtime/helpers/createClass');
var _createClass3 = _interopRequireDefault(_createClass2);
var _DiscountProcessBlock = require('../cashback/DiscountProcessBlock');
var _CashBackProcessBlock = require('../cashback/CashBackProcessBlock');
var _XPrieceProcessBlock = require('../cashback/XPrieceProcessBlock');
var _RepeatCashProcessBlock = require('../cashback/RepeatCashProcessBlock');
var _Enum = require('../../../../commom/Enum');
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
//成倍返现的情况
//返现金的情况
var WholeCashBackProcessBlock = exports.WholeCashBackProcessBlock = function () {
function WholeCashBackProcessBlock() {
(0, _classCallCheck3.default)(this, WholeCashBackProcessBlock);
}
(0, _createClass3.default)(WholeCashBackProcessBlock, null, [{
key: 'execute',
value: function execute(retailDto, promotionDto) {
switch (promotionDto.CashBackWay) {//返现方式
case _Enum.CashBackWay.DR_CashBackWay_00:
//折扣的情况
_DiscountProcessBlock.DiscountProcessBlock.execute(retailDto, promotionDto, true);
break;
case _Enum.CashBackWay.DR_CashBackWay_01:
//返现金的情况
_CashBackProcessBlock.CashBackProcessBlock.execute(retailDto, promotionDto, true);
break;
case _Enum.CashBackWay.DR_CashBackWay_02:
//阶梯折扣的情况
_XPrieceProcessBlock.XPrieceProcessBlock.execute(retailDto, promotionDto, true);
break;
case _Enum.CashBackWay.DR_CashBackWay_03:
//成倍返现的情况 (意思是循环返现,每满多少就返现多少,也就是先分组,然后返现处理) 有可能要考虑拆行的情况
_RepeatCashProcessBlock.RepeatCashProcessBlock.execute(retailDto, promotionDto, true);
break;
}
}
}]);
return WholeCashBackProcessBlock;
}();
//返现方式枚举
//阶梯折扣
/**
*整单满返相关处理
*
* @export
* @class WholeCashBackProcessBlock
*/
//折扣返现的情况
//# sourceMappingURL=WholeCashBackProcessBlock.js.map