fix: 修复中介导入成功条数计算错误
问题: - 导入成功条数显示为负数 - 原因:成功数量计算使用 validRecords.size() - failures.size() - 但没有使用实际的数据库操作返回值 修复: - saveBatchWithUpsert 和 saveBatch 方法现在返回 int - 累加实际的数据库影响行数 - 使用 actualSuccessCount 变量跟踪真实成功数量 影响范围: - CcdiIntermediaryPersonImportServiceImpl - CcdiIntermediaryEntityImportServiceImpl
This commit is contained in:
55
doc/test-data/purchase_transaction/node_modules/unzipper/lib/extract.js
generated
vendored
Normal file
55
doc/test-data/purchase_transaction/node_modules/unzipper/lib/extract.js
generated
vendored
Normal file
@@ -0,0 +1,55 @@
|
||||
module.exports = Extract;
|
||||
|
||||
var Parse = require('./parse');
|
||||
var Writer = require('fstream').Writer;
|
||||
var path = require('path');
|
||||
var stream = require('stream');
|
||||
var duplexer2 = require('duplexer2');
|
||||
var Promise = require('bluebird');
|
||||
|
||||
function Extract (opts) {
|
||||
// make sure path is normalized before using it
|
||||
opts.path = path.resolve(path.normalize(opts.path));
|
||||
|
||||
var parser = new Parse(opts);
|
||||
|
||||
var outStream = new stream.Writable({objectMode: true});
|
||||
outStream._write = function(entry, encoding, cb) {
|
||||
|
||||
if (entry.type == 'Directory') return cb();
|
||||
|
||||
// to avoid zip slip (writing outside of the destination), we resolve
|
||||
// the target path, and make sure it's nested in the intended
|
||||
// destination, or not extract it otherwise.
|
||||
var extractPath = path.join(opts.path, entry.path);
|
||||
if (extractPath.indexOf(opts.path) != 0) {
|
||||
return cb();
|
||||
}
|
||||
|
||||
const writer = opts.getWriter ? opts.getWriter({path: extractPath}) : Writer({ path: extractPath });
|
||||
|
||||
entry.pipe(writer)
|
||||
.on('error', cb)
|
||||
.on('close', cb);
|
||||
};
|
||||
|
||||
var extract = duplexer2(parser,outStream);
|
||||
parser.once('crx-header', function(crxHeader) {
|
||||
extract.crxHeader = crxHeader;
|
||||
});
|
||||
|
||||
parser
|
||||
.pipe(outStream)
|
||||
.on('finish',function() {
|
||||
extract.emit('close');
|
||||
});
|
||||
|
||||
extract.promise = function() {
|
||||
return new Promise(function(resolve, reject) {
|
||||
extract.on('close', resolve);
|
||||
extract.on('error',reject);
|
||||
});
|
||||
};
|
||||
|
||||
return extract;
|
||||
}
|
||||
Reference in New Issue
Block a user