UNPKG

tplus-pos

Version:

pos module

110 lines (94 loc) 4.84 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.UpdateRetailDetailProcessor = undefined; var _classCallCheck2 = require("babel-runtime/helpers/classCallCheck"); var _classCallCheck3 = _interopRequireDefault(_classCallCheck2); var _createClass2 = require("babel-runtime/helpers/createClass"); var _createClass3 = _interopRequireDefault(_createClass2); var _AddLogProcessor = require("../../operationLog/AddLogProcessor"); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var UpdateRetailDetailProcessor = exports.UpdateRetailDetailProcessor = function () { function UpdateRetailDetailProcessor() { (0, _classCallCheck3.default)(this, UpdateRetailDetailProcessor); } (0, _createClass3.default)(UpdateRetailDetailProcessor, null, [{ key: "execute", value: function execute(detailDto, promotionDto, isClear, retailCode) { if (isClear) { detailDto.PromotionDetails = []; detailDto.PromotionTypeStr = ""; detailDto.PromotionIdStr = ""; detailDto.PromotionCode = ""; detailDto.PromotionType = null; detailDto.IsUseIntegralAndCash = false; detailDto.IsUseStorage = false; detailDto.IsMemberIntegralUsedPromotion = true; } var info = {}; info.PromotionCode = promotionDto.PromotionCode; info.IdSalesPromotionDTO = promotionDto.PromotionId; var PromotionType = {}; PromotionType.Id = promotionDto.PromotionType; info.PromotionType = PromotionType; var index = detailDto.PromotionDetails.findIndex(function (it) { return it && it.IdSalesPromotionDTO == info.IdSalesPromotionDTO; }); if (index == -1) { detailDto.PromotionDetails.push(info); //记录操作日志 var desc = "\u660E\u7EC6\u884C\u5B58\u8D27\u3010" + detailDto.Inventory.Name + "\u3011\u6267\u884C\u4E86\u3010" + promotionDto.PromotionCode + "\u3011\u7684\u3010" + promotionDto.PromotionTypeName + "\u3011\u4FC3\u9500\u65B9\u6848\uFF0C\u6267\u884C\u540E\u542B\u7A0E\u5355\u4EF7\u4E3A\u3010" + detailDto.TaxPrice + "\u3011,\u6298\u6263\u4E3A\u3010" + detailDto.DiscountRate + "\u3011"; _AddLogProcessor.AddLogProcessor.execute("执行促销", retailCode, desc); } //不能使用积分抵现和代金券结算 if (promotionDto.IsUseIntegralAndCash) { detailDto.IsUseIntegralAndCash = true; } //不能使用储值卡结算 if (promotionDto.IsUseStorage) { detailDto.IsUseStorage = true; } //是否可以积分 true 表示可以积分,false 表示不能积分 if (!promotionDto.IsMemberIntegral) { detailDto.IsMemberIntegralUsedPromotion = false; } //处理促销明细行数据 if (detailDto.PromotionTypeStr) { if (detailDto.PromotionTypeStr.indexOf(promotionDto.PromotionTypeName) < 0) { detailDto.PromotionTypeStr = detailDto.PromotionTypeStr + "," + promotionDto.PromotionTypeName; } } else { detailDto.PromotionTypeStr = promotionDto.PromotionTypeName; } if (detailDto.PromotionIdStr) { if (detailDto.PromotionCode.indexOf(promotionDto.PromotionCode) < 0) { detailDto.PromotionIdStr = detailDto.PromotionIdStr + "," + promotionDto.PromotionId; } } else { detailDto.PromotionIdStr = promotionDto.PromotionId; } if (detailDto.PromotionCode) { if (detailDto.PromotionCode.indexOf(promotionDto.PromotionCode) < 0) { detailDto.PromotionCode = detailDto.PromotionCode + "," + promotionDto.PromotionCode; } } else { detailDto.PromotionCode = promotionDto.PromotionCode; } //处理明细行促销类型 if (detailDto.PromotionType && detailDto.PromotionType.Id) { if (detailDto.PromotionType.Id != promotionDto.PromotionType) { PromotionType.Id = 1623; detailDto.PromotionType = PromotionType; } } else { PromotionType.Id = promotionDto.PromotionType; detailDto.PromotionType = PromotionType; } } }]); return UpdateRetailDetailProcessor; }(); /** * 更新促销信息到明细行上 */ //# sourceMappingURL=UpdateRetailDetailProcessor.js.map