浏览代码

更新审批流相关

MaiXinRong 2 年之前
父节点
当前提交
f0c86cd5f4
共有 3 个文件被更改,包括 12 次插入4 次删除
  1. 6 3
      app/middleware/stage_check.js
  2. 4 1
      app/middleware/tender_check.js
  3. 2 0
      app/service/stage_audit.js

+ 6 - 3
app/middleware/stage_check.js

@@ -49,9 +49,6 @@ module.exports = options => {
             // 读取原报、审核人数据
             // 读取原报、审核人数据
             stage.auditors = yield this.service.stageAudit.getAuditors(stage.id, stage.times);
             stage.auditors = yield this.service.stageAudit.getAuditors(stage.id, stage.times);
             stage.curAuditor = yield this.service.stageAudit.getCurAuditor(stage.id, stage.times);
             stage.curAuditor = yield this.service.stageAudit.getCurAuditor(stage.id, stage.times);
-            const auditAssists = yield this.service.stageAuditAss.getData(stage);
-            stage.userAssists = auditAssists.filter(x => { return x.user_id === stage.user_id; }); // 原报协同人
-            stage.auditAssists = auditAssists.filter(x => { return x.user_id !== stage.user_id; }); // 审批协同人
 
 
             // 历史台账
             // 历史台账
             if (stage.status === status.checked) {
             if (stage.status === status.checked) {
@@ -73,6 +70,12 @@ module.exports = options => {
                 userAssistIds = _.map(stage.userAssists, 'ass_user_id'),
                 userAssistIds = _.map(stage.userAssists, 'ass_user_id'),
                 auditAssistIds = _.map(stage.auditAssists, 'ass_user_id'),
                 auditAssistIds = _.map(stage.auditAssists, 'ass_user_id'),
                 shareIds = [];
                 shareIds = [];
+            let auditAssists = yield this.service.stageAuditAss.getData(stage);
+            auditAssists = auditAssists.filter(x => {
+                return x.user_id === accountId || auditorIds.indexOf(x.user_id) >= 0;
+            });
+            stage.userAssists = auditAssists.filter(x => { return x.user_id === stage.user_id; }); // 原报协同人
+            stage.auditAssists = auditAssists.filter(x => { return x.user_id !== stage.user_id; }); // 审批协同人
             stage.users = stage.status === status.uncheck ? [stage.user_id, ...userAssistIds] : [stage.user_id, ...userAssistIds, ...auditorIds, ...auditAssistIds];
             stage.users = stage.status === status.uncheck ? [stage.user_id, ...userAssistIds] : [stage.user_id, ...userAssistIds, ...auditorIds, ...auditAssistIds];
             stage.relaAssists = auditAssists.filter(x => { return x.user_id === accountId });
             stage.relaAssists = auditAssists.filter(x => { return x.user_id === accountId });
             if (stage.status === status.uncheck || stage.status === status.checkNo) {
             if (stage.status === status.uncheck || stage.status === status.checkNo) {

+ 4 - 1
app/middleware/tender_check.js

@@ -57,7 +57,10 @@ module.exports = options => {
             const auditorsId = this.helper._.map(auditors, 'audit_id');
             const auditorsId = this.helper._.map(auditors, 'audit_id');
             const stageAuditors = yield this.service.stageAudit.getAllAuditors(tender.id);
             const stageAuditors = yield this.service.stageAudit.getAllAuditors(tender.id);
             const stageAuditorsId = this.helper._.map(stageAuditors, 'aid');
             const stageAuditorsId = this.helper._.map(stageAuditors, 'aid');
-            const auditAssists = yield this.service.auditAss.getData(tender.id);
+            let auditAssists = yield this.service.auditAss.getData(tender.id);
+            auditAssists = auditAssists.filter(x => {
+                return x.user_id === accountId || stageAuditorsId.indexOf(x.user_id) >= 0;
+            });
             const auditAssistsId = this.helper._.map(auditAssists, 'ass_user_id');
             const auditAssistsId = this.helper._.map(auditAssists, 'ass_user_id');
             const changeAuditors = yield this.service.changeAudit.getAllAuditors(tender.id);
             const changeAuditors = yield this.service.changeAudit.getAllAuditors(tender.id);
             const changeAuditorsId = this.helper._.map(changeAuditors, 'uid');
             const changeAuditorsId = this.helper._.map(changeAuditors, 'uid');

+ 2 - 0
app/service/stage_audit.js

@@ -1426,6 +1426,7 @@ module.exports = app => {
             try {
             try {
                 // 先删除旧的审批流,再添加新的
                 // 先删除旧的审批流,再添加新的
                 await transaction.delete(this.tableName, { sid: stage.id, times: stage.times });
                 await transaction.delete(this.tableName, { sid: stage.id, times: stage.times });
+                await transaction.delete(this.ctx.service.stageAuditAss.tableName, { sid: stage.id, times: stage.times });
                 const newAuditors = [];
                 const newAuditors = [];
                 let order = 1;
                 let order = 1;
                 for (const aid of newIdList) {
                 for (const aid of newIdList) {
@@ -1452,6 +1453,7 @@ module.exports = app => {
                 let order = idList.length + 1;
                 let order = idList.length + 1;
                 if (idList.indexOf(lastId) !== -1) {
                 if (idList.indexOf(lastId) !== -1) {
                     await transaction.delete(this.tableName, { sid: stage.id, times: stage.times, aid: lastId });
                     await transaction.delete(this.tableName, { sid: stage.id, times: stage.times, aid: lastId });
+                    await transaction.delete(this.ctx.service.stageAuditAss.tableName, { sid: stage.id, times: stage.times, user_id: lastId });
                     const audit = this._.find(auditList, { 'aid': lastId });
                     const audit = this._.find(auditList, { 'aid': lastId });
                     // 顺移之后审核人流程顺序
                     // 顺移之后审核人流程顺序
                     await this._syncOrderByDelete(transaction, stage.id, audit.order, stage.times);
                     await this._syncOrderByDelete(transaction, stage.id, audit.order, stage.times);