tplus-pos
Version:
pos module
137 lines (112 loc) • 5.67 kB
JavaScript
;
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