tplus-pos
Version:
pos module
162 lines (126 loc) • 6.07 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.CheckExpiryDateProcessor = undefined;
var _regenerator = require('babel-runtime/regenerator');
var _regenerator2 = _interopRequireDefault(_regenerator);
var _asyncToGenerator2 = require('babel-runtime/helpers/asyncToGenerator');
var _asyncToGenerator3 = _interopRequireDefault(_asyncToGenerator2);
var _classCallCheck2 = require('babel-runtime/helpers/classCallCheck');
var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
var _createClass2 = require('babel-runtime/helpers/createClass');
var _createClass3 = _interopRequireDefault(_createClass2);
var _symbol = require('babel-runtime/core-js/symbol');
var _symbol2 = _interopRequireDefault(_symbol);
require('../../../../commom/Challenger');
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var getExceedExpiryDate = (0, _symbol2.default)('getExceedExpiryDate');
/**
* 校验失效日期
*/
var CheckExpiryDateProcessor = exports.CheckExpiryDateProcessor = function () {
function CheckExpiryDateProcessor() {
(0, _classCallCheck3.default)(this, CheckExpiryDateProcessor);
}
(0, _createClass3.default)(CheckExpiryDateProcessor, null, [{
key: 'execute',
value: function () {
var _ref = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee2(dto, popupMethod) {
var _this = this;
var codeList, message, InventoryInfo, confirm, callObj, columns, dataSource, result, check, content;
return _regenerator2.default.wrap(function _callee2$(_context2) {
while (1) {
switch (_context2.prev = _context2.next) {
case 0:
codeList = this[getExceedExpiryDate](dto);
if (!(codeList.length < 1)) {
_context2.next = 3;
break;
}
return _context2.abrupt('return', true);
case 3:
message = "以下行的商品已过期:[{InventoryInfo}]";
InventoryInfo = codeList.join(",");
message = message.Format({ "InventoryInfo": InventoryInfo });
confirm = popupMethod.confirm;
callObj = popupMethod.callObj;
columns = new Array();
dataSource = new Array();
result = null;
check = function () {
var _ref2 = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee(form) {
return _regenerator2.default.wrap(function _callee$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
case 'end':
return _context.stop();
}
}
}, _callee, _this);
}));
return function check(_x3) {
return _ref2.apply(this, arguments);
};
}();
// 提示
content = message + ",是否继续执行?";
_context2.next = 15;
return confirm.call(callObj, { content: content, check: check, columns: columns, dataSource: dataSource });
case 15:
result = _context2.sent;
return _context2.abrupt('return', result);
case 17:
case 'end':
return _context2.stop();
}
}
}, _callee2, this);
}));
function execute(_x, _x2) {
return _ref.apply(this, arguments);
}
return execute;
}()
/**
* 获取已经失效的行
* @param {*} dto
*/
}, {
key: getExceedExpiryDate,
value: function value(dto) {
var nowDate = new Date();
var nowDateStr = nowDate.Format('yyyy-MM-dd');
var codeList = new Array();
if (!dto) {
return codeList;
}
if (!dto.RetailDetails) {
return codeList;
}
for (var index = 0; index < dto.RetailDetails.length; index++) {
var detail = dto.RetailDetails[index];
var inventory = detail.Inventory;
if (!inventory.IsQualityPeriod) {
// 没有启用保质期的场合
continue;
}
var expiryDate = detail.ExpiryDate;
if (!expiryDate) {
continue;
}
var expiryDateStr = expiryDate.Format('yyyy-MM-dd');
if (expiryDateStr < '1900-01-01') {
continue;
}
if (expiryDateStr < nowDateStr) {
codeList.push(index + 1);
}
}
return codeList;
}
}]);
return CheckExpiryDateProcessor;
}();
//# sourceMappingURL=CheckExpiryDateProcessor.js.map