tplus-pos
Version:
pos module
67 lines (52 loc) • 2.31 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.CashBackProcessBlock = undefined;
var _classCallCheck2 = require('babel-runtime/helpers/classCallCheck');
var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
var _createClass2 = require('babel-runtime/helpers/createClass');
var _createClass3 = _interopRequireDefault(_createClass2);
var _SplitAmountProcessor = require('../../SplitAmountProcessor');
var _UpdateRetailDetailProcessor = require('../UpdateRetailDetailProcessor');
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
/**
* 执行返现类型
*/
//分摊算法
var CashBackProcessBlock = exports.CashBackProcessBlock = function () {
function CashBackProcessBlock() {
(0, _classCallCheck3.default)(this, CashBackProcessBlock);
}
(0, _createClass3.default)(CashBackProcessBlock, null, [{
key: 'execute',
value: function execute(retailDto, promotionDto, isDetail) {
var discountAmount = 0;
if (isDetail) {
discountAmount = promotionDto.Details[0].DiscountAmount;
} else {
discountAmount = promotionDto.SubsDetails[0].DiscountAmount;
}
var detaillist = [];
promotionDto.RetailDetails.forEach(function (item) {
detaillist.push(retailDto.RetailDetails.find(function (it) {
return it.Code == item.Code;
}));
});
//调用分摊方法
_SplitAmountProcessor.SplitAmountProcessor.execute(retailDto, detaillist, discountAmount, "DetailDiscountAmount", "DiscountAmountChange", true);
//更新明细行促销信息
var detaildto = {};
promotionDto.RetailDetails.forEach(function (item) {
detaildto = retailDto.RetailDetails.find(function (it) {
return it.Code == item.Code;
});
if (detaildto) {
_UpdateRetailDetailProcessor.UpdateRetailDetailProcessor.execute(detaildto, promotionDto, false, retailDto.Code);
}
});
}
}]);
return CashBackProcessBlock;
}();
//# sourceMappingURL=CashBackProcessBlock.js.map