|
@@ -1643,27 +1643,36 @@ async function downLoadProjectFile(info) {
|
|
|
|
|
|
|
|
async function doDownLoadAndImport(privateDownloadUrl,info) {
|
|
async function doDownLoadAndImport(privateDownloadUrl,info) {
|
|
|
let stream = fs.createWriteStream(path.join(__dirname, "../../../tmp/"+info.key));//
|
|
let stream = fs.createWriteStream(path.join(__dirname, "../../../tmp/"+info.key));//
|
|
|
- request(privateDownloadUrl).pipe(stream).on("close", async function (err) {
|
|
|
|
|
- console.log("文件[" + info.key + "]下载完毕");
|
|
|
|
|
- let doc = {status:"finish"};
|
|
|
|
|
- try {
|
|
|
|
|
- let data = fs.readFileSync(stream.path,'utf-8');
|
|
|
|
|
- let result = await importProject(data,{session:info.session},info.updateData);
|
|
|
|
|
- if(result.error == 1){
|
|
|
|
|
- doc.errorMsg = result.msg;
|
|
|
|
|
|
|
+ request(privateDownloadUrl)
|
|
|
|
|
+ .on('error', async function (err) {
|
|
|
|
|
+ await importLogsModel.update({ key: info.key }, { status: 'error', errorMsg: err.toString() });
|
|
|
|
|
+ })
|
|
|
|
|
+ .pipe(stream)
|
|
|
|
|
+ .on("close", async function () {
|
|
|
|
|
+ console.log('close');
|
|
|
|
|
+ console.log("文件[" + info.key + "]下载完毕");
|
|
|
|
|
+ let doc = { status: "finish" };
|
|
|
|
|
+ try {
|
|
|
|
|
+ let data = fs.readFileSync(stream.path, 'utf-8');
|
|
|
|
|
+ let result = await importProject(data, { session: info.session }, info.updateData);
|
|
|
|
|
+ if (result.error == 1) {
|
|
|
|
|
+ doc.errorMsg = result.msg;
|
|
|
|
|
+ doc.status = "error";
|
|
|
|
|
+ } else {
|
|
|
|
|
+ doc.projectID = result.constructionProjectID;
|
|
|
|
|
+ }
|
|
|
|
|
+ } catch (error) {
|
|
|
|
|
+ console.log(error);
|
|
|
|
|
+ doc.errorMsg = "导入失败,请检查文件!";
|
|
|
doc.status = "error";
|
|
doc.status = "error";
|
|
|
- } else {
|
|
|
|
|
- doc.projectID = result.constructionProjectID;
|
|
|
|
|
|
|
+ } finally {
|
|
|
|
|
+ await importLogsModel.update({ key: info.key }, doc);
|
|
|
|
|
+ fs.unlinkSync(stream.path);
|
|
|
}
|
|
}
|
|
|
- }catch (error){
|
|
|
|
|
- console.log(error);
|
|
|
|
|
- doc.errorMsg = "导入失败,请检查文件!";
|
|
|
|
|
- doc.status = "error";
|
|
|
|
|
- }finally {
|
|
|
|
|
- await importLogsModel.update({key:info.key},doc);
|
|
|
|
|
- fs.unlinkSync(stream.path);
|
|
|
|
|
- }
|
|
|
|
|
- });
|
|
|
|
|
|
|
+ })
|
|
|
|
|
+ .on('error', async function () {
|
|
|
|
|
+ await importLogsModel.update({ key: info.key }, { status: 'error', errorMsg: `文件[${info.key}]下载失败,请稍后再试。` });
|
|
|
|
|
+ });
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
async function importProcessChecking(data){
|
|
async function importProcessChecking(data){
|