|
@@ -978,11 +978,12 @@ module.exports = app => {
|
|
|
|
|
|
const transaction = await this.db.beginTransaction();
|
|
|
try {
|
|
|
- const curAudit = await this.getDataByCondition({ cid: change.cid, times: change.times - 1, status: auditConst.auditStatus.back });
|
|
|
+ // const curAudit = await this.getDataByCondition({ cid: change.cid, times: change.times - 1, status: auditConst.auditStatus.back });
|
|
|
+ const curAudit = await this.getAuditorByStatus(change.cid, change.times - 1, auditConst.auditStatus.back);
|
|
|
// 整理上一个流程审核人状态更新
|
|
|
// 顺移其后审核人流程顺序
|
|
|
const sql = 'UPDATE ' + this.tableName + ' SET `usort` = `usort` + 2 WHERE cid = ? AND times = ? AND `usort` > ?';
|
|
|
- await transaction.query(sql, [change.cid, change.times -1, curAudit.usort]);
|
|
|
+ await transaction.query(sql, [change.cid, change.times - 1, curAudit.usort]);
|
|
|
// 当前审批人2次添加至流程中
|
|
|
const newAuditors = [];
|
|
|
newAuditors.push({
|
|
@@ -1024,6 +1025,12 @@ module.exports = app => {
|
|
|
throw err;
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
+ async getAuditorByStatus(cid, times, status, transaction= null) {
|
|
|
+ const sql = 'SELECT * FROM ?? WHERE `cid` = ? AND `times` = ? AND `status` = ? ORDER BY `usort` DESC';
|
|
|
+ const sqlParam = [this.tableName, cid, times, status];
|
|
|
+ return transaction ? await transaction.queryOne(sql, sqlParam) : await this.db.queryOne(sql, sqlParam);
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
return ChangeAudit;
|