ソースを参照

覆盖已签数据修正

laiguoran 3 年 前
コミット
7d5822845a
2 ファイル変更13 行追加3 行削除
  1. 11 1
      app/controller/report_archive_controller.js
  2. 2 2
      app/service/netcasign_log.js

+ 11 - 1
app/controller/report_archive_controller.js

@@ -247,6 +247,16 @@ module.exports = app => {
                 if (!(oss_result && oss_result.url && oss_result.res.status === 200)) {
                     throw '上传文件失败';
                 }
+                // 判断是否存在已签名文档,存在则删除文档并删除签名记录
+                const pdfMsg = await ctx.oss.head('archive/sign/' + fileName);
+                if (pdfMsg.res.status === 200) {
+                    const oss_reuslt = await ctx.oss.delete('archive/sign/' + fileName);
+                    if (oss_reuslt && oss_reuslt.res && oss_reuslt.res.status === 204) {
+                        const delSign_result = await ctx.service.netcasignLog.removeSign(orgName);
+                    } else {
+                        throw '删除已签文档失败';
+                    }
+                }
 
                 const updateDate = new Date();
                 const montStr = (updateDate.getMonth() + 1) < 10 ? ('0' + (updateDate.getMonth() + 1)) : ((updateDate.getMonth() + 1));
@@ -546,7 +556,7 @@ module.exports = app => {
                     case 'removeSign':
                         const oss_reuslt = await ctx.oss.delete('archive/sign/' + data.uuid + '.PDF');
                         if (oss_reuslt && oss_reuslt.res && oss_reuslt.res.status === 204) {
-                            const delSign_result = await ctx.service.netcasignLog.removeSign(ctx.session.sessionUser.accountId, data.uuid);
+                            const delSign_result = await ctx.service.netcasignLog.removeSign(data.uuid);
                             const signLogList = await ctx.service.netcasignLog.getLogList(ctx.tender.id);
                             response.data = signLogList;
                         } else {

+ 2 - 2
app/service/netcasign_log.js

@@ -42,8 +42,8 @@ module.exports = app => {
             return await this.db.query(sql, sqlParam);
         }
 
-        async removeSign(uid, uuid) {
-            return await this.db.delete(this.tableName, { uid, uuid });
+        async removeSign(uuid) {
+            return await this.db.delete(this.tableName, { uuid });
         }
     }