tplus-pos
Version:
pos module
110 lines (94 loc) • 4.84 kB
JavaScript
;
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