瀏覽代碼

修复变更管理员查看bug

ellisran 9 月之前
父節點
當前提交
7a1fbba13a
共有 1 個文件被更改,包括 14 次插入16 次删除
  1. 14 16
      app/service/change.js

+ 14 - 16
app/service/change.js

@@ -363,22 +363,21 @@ module.exports = app => {
                     case 5: // 待上报(所有的)PS:取未上报,退回,修订的变更令
                         sql =
                             'SELECT a.* FROM ?? AS a WHERE' +
-                            ' ((a.status != ? AND a.cid IN (SELECT b.cid FROM ?? AS b WHERE b.uid = ? AND a.times = b.times GROUP BY b.cid))' +
-                            ' OR (a.status = ? AND a.cid IN (SELECT b.cid FROM ?? AS b WHERE b.uid = ? AND a.times - 1 = b.times GROUP BY b.cid)))' +
-                            // 'a.cid IN (SELECT b.cid FROM ?? AS b WHERE b.uid = ? GROUP BY b.cid)' +
-                            ' AND (a.status = ? OR a.status = ? OR a.status = ?) AND a.tid = ?' + stateSql;
+                            ' (a.status = ? OR a.status = ? OR a.status = ?) AND a.tid = ?' + stateSql +
+                            (this.ctx.session.sessionUser.is_admin ? '' : ' AND ((a.status != ? AND a.cid IN (SELECT b.cid FROM ?? AS b WHERE b.uid = ? AND a.times = b.times GROUP BY b.cid))' +
+                            ' OR (a.status = ? AND a.cid IN (SELECT b.cid FROM ?? AS b WHERE b.uid = ? AND a.times - 1 = b.times GROUP BY b.cid)))');
                         sqlParam = [
                             this.tableName,
                             audit.change.status.uncheck,
+                            audit.change.status.checkNo,
+                            audit.change.status.revise,
+                            tenderId,
+                            audit.change.status.uncheck,
                             this.ctx.service.changeAudit.tableName,
                             this.ctx.session.sessionUser.accountId,
                             audit.change.status.checkNo,
                             this.ctx.service.changeAudit.tableName,
                             this.ctx.session.sessionUser.accountId,
-                            audit.change.status.uncheck,
-                            audit.change.status.checkNo,
-                            audit.change.status.revise,
-                            tenderId,
                         ];
                         break;
                     case 2: // 进行中(所有的)
@@ -464,22 +463,21 @@ module.exports = app => {
                 case 5: // 待上报(所有的)PS:取未上报,退回,修订的变更令
                     const sql2 =
                         'SELECT count(*) AS count FROM ?? AS a WHERE' +
-                        ' ((a.status != ? AND a.cid IN (SELECT b.cid FROM ?? AS b WHERE b.uid = ? AND a.times = b.times GROUP BY b.cid))' +
-                        ' OR (a.status = ? AND a.cid IN (SELECT b.cid FROM ?? AS b WHERE b.uid = ? AND a.times - 1 = b.times GROUP BY b.cid)))' +
-                        // 'a.cid IN (SELECT b.cid FROM ?? AS b WHERE b.uid = ? AND a.times = b.times GROUP BY b.cid) ' +
-                        ' AND (a.status = ? OR a.status = ? OR a.status = ?) AND a.tid = ?' + stateSql;
+                        ' (a.status = ? OR a.status = ? OR a.status = ?) AND a.tid = ?' + stateSql +
+                        (this.ctx.session.sessionUser.is_admin ? '' : ' AND ((a.status != ? AND a.cid IN (SELECT b.cid FROM ?? AS b WHERE b.uid = ? AND a.times = b.times GROUP BY b.cid))' +
+                            ' OR (a.status = ? AND a.cid IN (SELECT b.cid FROM ?? AS b WHERE b.uid = ? AND a.times - 1 = b.times GROUP BY b.cid)))');
                     const sqlParam2 = [
                         this.tableName,
                         audit.change.status.uncheck,
+                        audit.change.status.checkNo,
+                        audit.change.status.revise,
+                        tenderId,
+                        audit.change.status.uncheck,
                         this.ctx.service.changeAudit.tableName,
                         this.ctx.session.sessionUser.accountId,
                         audit.change.status.checkNo,
                         this.ctx.service.changeAudit.tableName,
                         this.ctx.session.sessionUser.accountId,
-                        audit.change.status.uncheck,
-                        audit.change.status.checkNo,
-                        audit.change.status.revise,
-                        tenderId,
                     ];
                     const result2 = await this.db.query(sql2, sqlParam2);
                     return result2[0].count;