UNPKG

tplus-pos

Version:

pos module

137 lines (112 loc) 5.67 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports.OriginalReturnProcessBlock = undefined; var _classCallCheck2 = require('babel-runtime/helpers/classCallCheck'); var _classCallCheck3 = _interopRequireDefault(_classCallCheck2); var _createClass2 = require('babel-runtime/helpers/createClass'); var _createClass3 = _interopRequireDefault(_createClass2); var _SummaryProcessorBlock = require('../summary/SummaryProcessorBlock'); var _QuantityChangeProcessorBlock = require('../quantity/QuantityChangeProcessorBlock'); var _UpdateFreeItemsProcessorBlock = require('../freeItem/UpdateFreeItemsProcessorBlock'); var _HandlePriuserdefInfoProcessorBlock = require('../priuserdefinfo/HandlePriuserdefInfoProcessorBlock'); var _ReturnTaxAmountProcessBlock = require('./ReturnTaxAmountProcessBlock'); var _Enum = require('../../../commom/Enum'); var _DetailCodeProcessor = require('../DetailCodeProcessor'); var _tplusPoslogin = require('tplus-poslogin'); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } /** *原单退货单据处理 * @export * @class OriginalReturnProcessBlock * @auther tuzha */ var OriginalReturnProcessBlock = exports.OriginalReturnProcessBlock = function () { function OriginalReturnProcessBlock() { (0, _classCallCheck3.default)(this, OriginalReturnProcessBlock); } (0, _createClass3.default)(OriginalReturnProcessBlock, null, [{ key: 'execute', value: function execute(dto, returnData) { $T.debugger(); var sourceCode = returnData.Code; var sourceID = returnData.ID; delete returnData.Code; delete returnData.ID; delete returnData.POSCode; delete returnData.PosName; delete returnData.PosName; delete returnData.UserName; delete returnData.Idstore; delete returnData.VoucherDate; delete returnData.UserCode; delete returnData.UserId; delete returnData.IdShiftVoucher; delete returnData.ShiftCode; delete returnData.Shift; delete returnData.IdDailyVoucher; delete returnData.DailyCode; delete returnData.DataClient; delete returnData.DataSource; delete returnData.Idperson; delete returnData.Person; delete returnData.OnlinePaymentAmount; dto.merge(returnData); dto.IdbusiType = 35; //班次值 dto.Shift = { Id: (0, _tplusPoslogin.PosInitData)('Shift') }; // 导购员 // 默认=收银员关联员工档案的员工编码,若收银员没有关联员工档案,员工档案导购属性为否,则默认=空; var person = (0, _tplusPoslogin.PosInitData)('Person'); if (person) { dto.Person = dto.createValue("Person", JSON.parse(person)); dto.Idperson = dto.Person.ID; } // 发货状态 dto.DeliveryStatus.Id = _Enum.DeliveryStatus.Code_02; // 零售数据端来源 dto.DataClient.Id = _Enum.DataClient.Code_02; // 配送方式 dto.DistributionMode.Id = _Enum.DistributionMode.Code_01; dto.DataSource.Id = _Enum.DataSource.Code_02; //处理明细数据为负值 for (var index = 0; index < dto.RetailDetails.length; index++) { var detail = dto.RetailDetails[index]; detail.Quantity = -detail.Quantity; detail.BaseQuantity = -detail.BaseQuantity; detail.SourceVoucherCode = sourceCode; detail.ReturnSourceId = sourceID; detail.ReturnSourceDetailId = detail.ID; //清空明细行的促销信息 detail.PromotionDetails = []; detail.PromotionTypeStr = ""; detail.PromotionIdStr = ""; detail.PromotionCode = ""; detail.PromotionType = null; detail.IsUseIntegralAndCash = false; detail.IsUseStorage = false; detail.IsMemberIntegralUsedPromotion = true; // 自由项 var freeitems = new Array(); for (var _index = 0; _index < 10; _index++) { var freeitem = "FreeItem" + _index.toString(); //dto对应自由项字段名称 var updatedDetailFreeItem = "freeitem" + _index.toString(); //detail对应自由项字段名称 var freeitemValue = JSON.getCellValue(detail, updatedDetailFreeItem); freeitems.push({ Name: freeitem, Value: freeitemValue }); } _UpdateFreeItemsProcessorBlock.UpdateFreeItemsProcessorBlock.execute(dto, detail, freeitems); _HandlePriuserdefInfoProcessorBlock.HandlePriuserdefInfoProcessorBlock.execute(dto, detail, detail); _QuantityChangeProcessorBlock.QuantityChangeProcessorBlock.execute(dto, detail, detail.Quantity, {}); //金额改变事件(原单退货) _ReturnTaxAmountProcessBlock.ReturnTaxAmountProcessBlock.execute(dto, detail); } // 处理明细的编码 _DetailCodeProcessor.DetailCodeProcessor.execute(dto); //处理表头以及价格数据 _SummaryProcessorBlock.SummaryProcessorBlock.execute(dto); } }]); return OriginalReturnProcessBlock; }(); //# sourceMappingURL=OriginalReturnProcessBlock.js.map