| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- 'use strict';
- const audit = require('../const/audit');
- module.exports = app => {
- class WeappReviseController extends app.BaseController {
- async index(ctx) {
- try {
- const tenderId = ctx.params.id;
- const show_revise_invalid = 1;
- const ledgerRevise = await ctx.service.ledgerRevise.getReviseList(tenderId, show_revise_invalid);
- ctx.body = { code: 0, msg: '', data: ledgerRevise };
- } catch (err) {
- this.log(err);
- ctx.body = { code: -1, msg: err.toString(), data: null };
- }
- }
- async check(ctx) {
- try {
- const reviseId = ctx.params.rid;
- const revise = await ctx.service.ledgerRevise.getDataById(reviseId);
- if (!revise) {
- ctx.body = { code: -1, msg: '修订不存在', data: null };
- return;
- }
- if (revise.status !== audit.revise.status.checking) {
- ctx.body = {
- code: -1,
- msg: `修订状态不正确,当前状态为"${audit.revise.statusString[revise.status] || '未知'}",无法审批`,
- data: { currentStatus: revise.status }
- };
- return;
- }
- revise.curHis = revise.his_id ? await ctx.service.ledgerHistory.getDataById(revise.his_id) : null;
- const curAudits = await ctx.service.reviseAudit.getCurAuditors(revise.id, revise.times);
- const curAuditorIds = curAudits.map(x => { return x.audit_id; });
- if (curAuditorIds.indexOf(ctx.session.sessionUser.accountId) < 0) {
- ctx.body = { code: -1, msg: '您不是当前审批人,无权进行该操作', data: null };
- return;
- }
- const data = ctx.request.body;
- const checkType = parseInt(data.checkType);
- if (!checkType || isNaN(checkType)) {
- ctx.body = { code: -1, msg: '提交数据错误:缺少审批类型参数', data: null };
- return;
- }
- const opinion = data.opinion || '';
- await ctx.service.reviseAudit.check(revise, checkType, opinion, revise.times);
- ctx.body = { code: 0, msg: '审批成功', data: null };
- } catch (err) {
- ctx.body = { code: -1, msg: err.toString(), data: null };
- }
- }
- }
- return WeappReviseController;
- };
|