瀏覽代碼

调差审批流程

laiguoran 5 年之前
父節點
當前提交
ba9874a5b1
共有 4 個文件被更改,包括 252 次插入194 次删除
  1. 31 24
      app/public/js/measure_material.js
  2. 3 3
      app/public/js/measure_stage.js
  3. 12 5
      app/service/material_audit.js
  4. 206 162
      app/view/material/audit_modal.ejs

+ 31 - 24
app/public/js/measure_material.js

@@ -19,12 +19,12 @@ $(function () {
             const auditHistory = result.auditHistory;
             // 生成左边列表流程
             const lefthtml = [];
-            lefthtml.push('<li class="list-group-item"><i class="fa fa fa-play-circle fa-rotate-90"></i> '+ materialAuditor.name +'  <small class="text-muted">'+ materialAuditor.role +'</small></li>');
+            lefthtml.push('<li class="list-group-item"><i class="fa fa fa-play-circle fa-rotate-90"></i> '+ materialAuditor.name +'  <small class="text-muted">'+ materialAuditor.role +'</small><span class="pull-right">原报</span></li>');
             for (const [index,a] of auditors.entries()) {
                 if (index+1 === auditors.length) {
-                    lefthtml.push('<li class="list-group-item"><i class="fa fa-stop-circle"></i> '+ a.name +'  <small class="text-muted">'+ a.role +'</small></li>');
+                    lefthtml.push('<li class="list-group-item"><i class="fa fa-stop-circle"></i> '+ a.name +'  <small class="text-muted">'+ a.role +'</small><span class="pull-right">终审</span></li>');
                 } else {
-                    lefthtml.push('<li class="list-group-item"><i class="fa fa-chevron-circle-down"></i> '+ a.name +'  <small class="text-muted">'+ a.role +'</small></li>');
+                    lefthtml.push('<li class="list-group-item"><i class="fa fa-chevron-circle-down"></i> '+ a.name +'  <small class="text-muted">'+ a.role +'</small><span class="pull-right">' + transFormToChinese(index+1) + '审</span></li>');
                 }
             }
             $('#auditor-list').html(lefthtml.join(''));
@@ -36,41 +36,48 @@ $(function () {
                 for (let iA = 0; iA < ah.length; iA++) {
                     if (iA === 0) {
                         righthtml.push('<li class="list-group-item">');
-                        righthtml.push('<span class="text-success pull-right">'+ (auditHistory.indexOf(ah) > 0 ? '重新' : '') +'上报</span>');
                         righthtml.push('<h5 class="card-title">');
-                        righthtml.push('<i class="fa fa-play-circle fa-rotate-90 text-success"></i> '+ materialAuditor.name +' <small class="text-muted">'+ materialAuditor.role +'</small></h5>');
-                        righthtml.push('<p class="card-text"><small class="text-muted">' + (ah[iA].begin_time ? moment(ah[iA].begin_time).format('YYYY-MM-DD') : '') + '</small></p></li>');
+                        righthtml.push('<i class="fa fa-play-circle fa-rotate-90 text-success"></i> '+ materialAuditor.name +' <small class="text-muted">'+ materialAuditor.role +'</small><span class="pull-right">原报</span></h5>');
+                        righthtml.push('<div class="ml-3">');
+                        righthtml.push('<span class="text-success"><small>' + (ah[iA].begin_time ? moment(ah[iA].begin_time).format('YYYY-MM-DD') : '') + '</small>'+ (auditHistory.indexOf(ah) > 0 ? '重新' : '') + '上报</span>');
+                        righthtml.push('</div></li>');
                         righthtml.push('<li class="list-group-item">');
+                        righthtml.push('<h5 class="card-title"><i class="fa '+ (iA === ah.length - 1 ? 'fa-stop-circle ' : 'fa-chevron-circle-down ') + auditConst.statusClass[ah[iA].status] +'"></i> '+ ah[iA].name +' <small class="text-muted">'+ ah[iA].role +'</small><span class="pull-right">' + (ah[iA].sort === ah[iA].max_sort ? '终' : transFormToChinese(ah[iA].sort)) + '审</span></h5>');
+                        righthtml.push('<div class="ml-3">');
                         if (ah[iA].status !== auditConst.status.uncheck) {
-                            righthtml.push('<span class="'+ auditConst.statusClass[ah[iA].status] +' pull-right">' + auditConst.statusString[ah[iA].status] + (ah[iA].status === auditConst.status.checkNo ? ' ' + materialAuditor.name : '') + '</span>');
-                        }
-                        righthtml.push('<h5 class="card-title"><i class="fa '+ (iA === ah.length - 1 ? 'fa-stop-circle ' : 'fa-chevron-circle-down ') + auditConst.statusClass[ah[iA].status] +'"></i> '+ ah[iA].name +' <small class="text-muted">'+ ah[iA].role +'</small></h5>');
-                        if (ah[iA].status === auditConst.status.checked || ah[iA].status === auditConst.status.checkNo) {
-                            righthtml.push('<p class="card-text mb-1">'+ ah[iA].opinion +'</p>');
-                            righthtml.push('<p class="card-text"><small class="text-muted">'+ (ah[iA].end_time ? moment(ah[iA].end_time).format('YYYY-MM-DD') : '') +'</small></p>');
+                            let timeHtml = '';
+                            if (ah[iA].status === auditConst.status.checked || ah[iA].status === auditConst.status.checkNo) {
+                                timeHtml = '<small>'+ (ah[iA].end_time ? moment(ah[iA].end_time).format('YYYY-MM-DD') : '') +'</small> ';
+                            }
+                            righthtml.push('<span class="'+ auditConst.statusClass[ah[iA].status] +'">' + timeHtml + auditConst.statusString[ah[iA].status] + (ah[iA].status === auditConst.status.checkNo ? ' ' + materialAuditor.name : '') + '</span>');
                         }
+                        righthtml.push('<p class="card-text">'+ (ah[iA].opinion !== null ? ah[iA].opinion : '') +'</p></div>');
                         righthtml.push('</li>');
                     } else if (iA === ah.length - 1) {
                         righthtml.push('<li class="list-group-item">');
+                        righthtml.push('<h5 class="card-title"><i class="fa fa-stop-circle '+ auditConst.statusClass[ah[iA].status] +'"></i> '+ ah[iA].name +' <small class="text-muted">'+ ah[iA].role +'</small><span class="pull-right">终审</span></h5>');
+                        righthtml.push('<div class="ml-3">');
                         if (ah[iA].status !== auditConst.status.uncheck) {
-                            righthtml.push('<span class="'+ auditConst.statusClass[ah[iA].status] +' pull-right">' + auditConst.statusString[ah[iA].status] + (ah[iA].status === auditConst.status.checkNo ? ' ' + materialAuditor.name : '') + '</span>');
-                        }
-                        righthtml.push('<h5 class="card-title"><i class="fa fa-stop-circle '+ auditConst.statusClass[ah[iA].status] +'"></i> '+ ah[iA].name +' <small class="text-muted">'+ ah[iA].role +'</small></h5>');
-                        if (ah[iA].status === auditConst.status.checked || ah[iA].status === auditConst.status.checkNo) {
-                            righthtml.push('<p class="card-text mb-1">'+ ah[iA].opinion +'</p>');
-                            righthtml.push('<p class="card-text"><small class="text-muted">'+ (ah[iA].end_time ? moment(ah[iA].end_time).format('YYYY-MM-DD') : '') +'</small></p>');
+                            let timeHtml = '';
+                            if (ah[iA].status === auditConst.status.checked || ah[iA].status === auditConst.status.checkNo) {
+                                timeHtml = '<small>'+ (ah[iA].end_time ? moment(ah[iA].end_time).format('YYYY-MM-DD') : '') +'</small> ';
+                            }
+                            righthtml.push('<span class="'+ auditConst.statusClass[ah[iA].status] +'">' + timeHtml + auditConst.statusString[ah[iA].status] + (ah[iA].status === auditConst.status.checkNo ? ' ' + materialAuditor.name : '') + '</span>');
                         }
+                        righthtml.push('<p class="card-text">'+ (ah[iA].opinion !== null ? ah[iA].opinion : '') +'</p></div>');
                         righthtml.push('</li>');
                     } else {
                         righthtml.push('<li class="list-group-item">');
+                        righthtml.push('<h5 class="card-title"><i class="fa '+ (iA === ah.length - 1 ? 'fa-stop-circle ' : 'fa-chevron-circle-down ') + auditConst.statusClass[ah[iA].status] +'"></i> '+ ah[iA].name +' <small class="text-muted">'+ ah[iA].role +'</small><span class="pull-right">' + (ah[iA].sort === ah[iA].max_sort ? '终' : transFormToChinese(ah[iA].sort)) + '审</span></h5>');
+                        righthtml.push('<div class="ml-3">');
                         if (ah[iA].status !== auditConst.status.uncheck) {
-                            righthtml.push('<span class="'+ auditConst.statusClass[ah[iA].status] +' pull-right">' + auditConst.statusString[ah[iA].status] + (ah[iA].status === auditConst.status.checkNo ? ' ' + materialAuditor.name : '') + '</span>');
-                        }
-                        righthtml.push('<h5 class="card-title"><i class="fa fa-chevron-circle-down '+ auditConst.statusClass[ah[iA].status] +'"></i> '+ ah[iA].name +' <small class="text-muted">'+ ah[iA].role +'</small></h5>');
-                        if (ah[iA].status === auditConst.status.checked || ah[iA].status === auditConst.status.checkNo) {
-                            righthtml.push('<p class="card-text mb-1">'+ ah[iA].opinion +'</p>');
-                            righthtml.push('<p class="card-text"><small class="text-muted">'+ (ah[iA].end_time ? moment(ah[iA].end_time).format('YYYY-MM-DD') : '') +'</small></p>');
+                            let timeHtml = '';
+                            if (ah[iA].status === auditConst.status.checked || ah[iA].status === auditConst.status.checkNo) {
+                                timeHtml = '<small>'+ (ah[iA].end_time ? moment(ah[iA].end_time).format('YYYY-MM-DD') : '') +'</small> ';
+                            }
+                            righthtml.push('<span class="'+ auditConst.statusClass[ah[iA].status] +'">' + timeHtml + auditConst.statusString[ah[iA].status] + (ah[iA].status === auditConst.status.checkNo ? ' ' + materialAuditor.name : '') + '</span>');
                         }
+                        righthtml.push('<p class="card-text">'+ (ah[iA].opinion !== null ? ah[iA].opinion : '') +'</p></div>');
                         righthtml.push('</li>');
                     }
                 }

+ 3 - 3
app/public/js/measure_stage.js

@@ -50,7 +50,7 @@ $('a[data-target="#sp-list" ]').on('click', function () {
                        }
                        righthtml.push('<span class="' + auditConst.statusClass[ah[iA].status] +'">'+ timeHtml + auditConst.statusString[ah[iA].status] + (ah[iA].status === auditConst.status.checkNo ? ' ' + stageAuditor.name : '') + '</span>');
                    }
-                   righthtml.push('<p class="card-text">'+ ah[iA].opinion !== null ? ah[iA].opinion : '' +'</p></div>');
+                   righthtml.push('<p class="card-text">'+ (ah[iA].opinion !== null ? ah[iA].opinion : '') +'</p></div>');
                    righthtml.push('</li>');
                } else if (iA === ah.length - 1) {
                    righthtml.push('<li class="list-group-item">');
@@ -63,7 +63,7 @@ $('a[data-target="#sp-list" ]').on('click', function () {
                        }
                        righthtml.push('<span class="' + auditConst.statusClass[ah[iA].status] +'">' + timeHtml + auditConst.statusString[ah[iA].status] + (ah[iA].status === auditConst.status.checkNo ? ' ' + stageAuditor.name : '') + '</span>');
                    }
-                   righthtml.push('<p class="card-text">'+ ah[iA].opinion !== null ? ah[iA].opinion : '' +'</p></div>');
+                   righthtml.push('<p class="card-text">'+ (ah[iA].opinion !== null ? ah[iA].opinion : '') +'</p></div>');
                    righthtml.push('</li>');
                } else {
                    righthtml.push('<li class="list-group-item">');
@@ -76,7 +76,7 @@ $('a[data-target="#sp-list" ]').on('click', function () {
                        }
                        righthtml.push('<span class="' + auditConst.statusClass[ah[iA].status] +'">'+ timeHtml + auditConst.statusString[ah[iA].status] + (ah[iA].status === auditConst.status.checkNo ? ' ' + stageAuditor.name : '') + '</span>');
                    }
-                   righthtml.push('<p class="card-text">'+ ah[iA].opinion !== null ? ah[iA].opinion : '' +'</p></div>');
+                   righthtml.push('<p class="card-text">'+ (ah[iA].opinion !== null ? ah[iA].opinion : '') +'</p></div>');
                    righthtml.push('</li>');
                }
            }

+ 12 - 5
app/service/material_audit.js

@@ -51,11 +51,18 @@ module.exports = app => {
          * @returns {Promise<*>}
          */
         async getAuditors(materialId, times = 1) {
-            const sql = 'SELECT la.`aid`, pa.`name`, pa.`company`, pa.`role`, pa.`mobile`, pa.`telephone`, la.`times`, la.`order`, la.`status`, la.`opinion`, la.`begin_time`, la.`end_time` ' +
-                'FROM ?? AS la, ?? AS pa ' +
-                'WHERE la.`mid` = ? and la.`times` = ? and la.`aid` = pa.`id` order by la.`order`';
-            const sqlParam = [this.tableName, this.ctx.service.projectAccount.tableName, materialId, times];
-            return await this.db.query(sql, sqlParam);
+            const sql = 'SELECT la.`aid`, pa.`name`, pa.`company`, pa.`role`, pa.`mobile`, pa.`telephone`, la.`times`, la.`order`, la.`status`, la.`opinion`, la.`begin_time`, la.`end_time`, g.`sort` ' +
+                'FROM ?? AS la, ?? AS pa, (SELECT `aid`,(@i:=@i+1) as `sort` FROM ??, (select @i:=0) as it WHERE `mid` = ? AND `times` = ? GROUP BY `aid`) as g ' +
+                'WHERE la.`mid` = ? and la.`times` = ? and la.`aid` = pa.`id` and g.`aid` = la.`aid` order by la.`order`';
+            const sqlParam = [this.tableName, this.ctx.service.projectAccount.tableName, this.tableName, materialId, times, materialId, times];
+            const result = await this.db.query(sql, sqlParam);
+            const sql2 = 'SELECT COUNT(a.`aid`) as num FROM (SELECT `aid` FROM ?? WHERE `mid` = ? AND `times` = ? GROUP BY `aid`) as a';
+            const sqlParam2 = [this.tableName, materialId, times];
+            const count = await this.db.queryOne(sql2, sqlParam2);
+            for (const i in result) {
+                result[i].max_sort = count.num;
+            }
+            return result;
         }
 
         /**

+ 206 - 162
app/view/material/audit_modal.ejs

@@ -65,14 +65,14 @@
                         <div class="card mt-3">
                             <ul class="list-group list-group-flush">
                                 <li class="list-group-item">
-                                    <i class="fa fa fa-play-circle fa-rotate-90"></i> <%- ctx.material.user.name %>  <small class="text-muted"><%- ctx.material.user.role %></small>
+                                    <i class="fa fa fa-play-circle fa-rotate-90"></i> <%- ctx.material.user.name %>  <small class="text-muted"><%- ctx.material.user.role %></small><div class="pull-right">原报</div>
                                 </li>
                                 <% for (let i = 0; i < ctx.material.auditors2.length; i++) { %>
                                 <li class="list-group-item">
                                     <% if (i < ctx.material.auditors2.length - 1) { %>
-                                    <i class="fa fa-chevron-circle-down"></i> <%- ctx.material.auditors2[i].name %>  <small class="text-muted"><%- ctx.material.auditors2[i].role %></small>
+                                    <i class="fa fa-chevron-circle-down"></i> <%- ctx.material.auditors2[i].name %>  <small class="text-muted"><%- ctx.material.auditors2[i].role %></small><span class="pull-right"><%= ctx.helper.transFormToChinese(i+1) %>审</span>
                                     <% } else { %>
-                                    <i class="fa fa fa-stop-circle"></i> <%- ctx.material.auditors2[i].name %>  <small class="text-muted"><%- ctx.material.auditors2[i].role %></small>
+                                    <i class="fa fa fa-stop-circle"></i> <%- ctx.material.auditors2[i].name %>  <small class="text-muted"><%- ctx.material.auditors2[i].role %></small><span class="pull-right">终审</span>
                                     <% } %>
                                 </li>
                                 <% } %>
@@ -83,29 +83,41 @@
                         <div class="card mt-3">
                             <ul class="list-group list-group-flush">
                                 <li class="list-group-item">
-                                    <span class="text-success pull-right"><small><%- ctx.material.auditors[0].begin_time.toLocaleDateString() %></small> 上报</span>
-                                    <h5 class="card-title"><i class="fa fa-play-circle fa-rotate-90 text-success"></i> <%- ctx.material.user.name %> <small class="text-muted"><%- ctx.material.user.role %></small></h5>
+                                    <h5 class="card-title">
+                                        <i class="fa fa-play-circle fa-rotate-90 text-success"></i> <%- ctx.material.user.name %> <small class="text-muted"><%- ctx.material.user.role %></small>
+                                    </h5>
+                                    <div class="ml-3">
+                                        <span class="text-success"><small><%- ctx.material.auditors[0].begin_time.toLocaleDateString() %></small> 上报</span>
+                                    </div>
                                 </li>
                                 <% for (let iA = 0; iA < ctx.material.auditors.length; iA++) { %>
                                 <% const auditors = ctx.material.auditors; %>
                                 <li class="list-group-item">
                                     <% if (auditors[iA].status === auditConst.status.checked) { %>
-                                    <span class="text-success pull-right"><small><%- auditors[iA].end_time.toLocaleString() %></small> 审批通过</span>
                                     <h5 class="card-title">
-                                        <i class="<%- (iA < auditors.length - 1 ? 'fa fa-chevron-circle-down text-success' : 'fa fa-stop-circle text-success') %>"></i> <%- auditors[iA].name %> <small class="text-muted"><%- auditors[iA].role %></small>
+                                        <i class="<%- (iA < auditors.length - 1 ? 'fa fa-chevron-circle-down text-success' : 'fa fa-stop-circle text-success') %>"></i> <%- auditors[iA].name %> <small class="text-muted"><%- auditors[iA].role %></small><span class="pull-right"><%= auditors[iA].sort === auditors[iA].max_sort ? '终' : ctx.helper.transFormToChinese(auditors[iA].sort) %>审</span>
                                     </h5>
+                                    <div class="ml-3">
+                                        <span class="text-success"><small><%- auditors[iA].end_time.toLocaleDateString() %></small> 审批通过</span>
+                                        <p class="card-text"><%- auditors[iA].opinion %></p>
+                                    </div>
                                     <% } else if (auditors[iA].stauts == auditConst.status.checking) { %>
-                                    <span class="pull-right">审批中</span>
                                     <h5 class="card-title">
-                                        <i class="<%- (iA < auditors.length - 1 ? 'fa fa-chevron-circle-down' : 'fa fa-stop-circle') %>"></i> <%- auditors[iA].name %> <small class="text-muted"><%- auditors[iA].role %></small>
+                                        <i class="<%- (iA < auditors.length - 1 ? 'fa fa-chevron-circle-down' : 'fa fa-stop-circle') %>"></i> <%- auditors[iA].name %> <small class="text-muted"><%- auditors[iA].role %></small><span class="pull-right"><%= auditors[iA].sort === auditors[iA].max_sort ? '终' : ctx.helper.transFormToChinese(auditors[iA].sort) %>审</span>
                                     </h5>
+                                    <div class="ml-3">
+                                        <span>审批中</span>
+                                        <p class="card-text"><%- auditors[iA].opinion %></p>
+                                    </div>
                                     <% } else { %>
                                     <h5 class="card-title">
-                                        <i class="<%- (iA < auditors.length - 1 ? 'fa fa-chevron-circle-down' : 'fa fa-stop-circle') %>"></i> <%- auditors[iA].name %> <small class="text-muted"><%- auditors[iA].role %></small>
+                                        <i class="<%- (iA < auditors.length - 1 ? 'fa fa-chevron-circle-down' : 'fa fa-stop-circle') %>"></i> <%- auditors[iA].name %> <small class="text-muted"><%- auditors[iA].role %></small><span class="pull-right"><%= auditors[iA].sort === auditors[iA].max_sort ? '终' : ctx.helper.transFormToChinese(auditors[iA].sort) %>审</span>
                                     </h5>
+                                    <div class="ml-3">
+                                        <p class="card-text"><%- auditors[iA].opinion %></p>
+                                    </div>
                                     <% } %>
                                     <% if (auditors[iA].status === auditConst.status.checked) { %>
-                                    <p class="card-text"><%- auditors[iA].opinion %></p>
                                     <% } else if (auditors[iA].status === auditConst.status.checking) { %>
                                     <div class="form-group">
                                         <label>审批意见<b class="text-danger">*</b></label>
@@ -141,14 +153,14 @@
                         <div class="card mt-3">
                             <ul class="list-group list-group-flush">
                                 <li class="list-group-item">
-                                    <i class="fa fa fa-play-circle fa-rotate-90"></i> <%- ctx.material.user.name %>  <small class="text-muted"><%- ctx.material.user.role %></small>
+                                    <i class="fa fa fa-play-circle fa-rotate-90"></i> <%- ctx.material.user.name %>  <small class="text-muted"><%- ctx.material.user.role %></small><span class="pull-right">原报</span>
                                 </li>
                                 <% for (let i = 0; i < ctx.material.auditors2.length; i++) { %>
                                 <li class="list-group-item">
                                     <% if (i < ctx.material.auditors2.length - 1) { %>
-                                    <i class="fa fa-chevron-circle-down"></i> <%- ctx.material.auditors2[i].name %>  <small class="text-muted"><%- ctx.material.auditors2[i].role %></small>
+                                    <i class="fa fa-chevron-circle-down"></i> <%- ctx.material.auditors2[i].name %>  <small class="text-muted"><%- ctx.material.auditors2[i].role %></small><span class="pull-right"><%= ctx.helper.transFormToChinese(i+1) %>审</span>
                                     <% } else { %>
-                                    <i class="fa fa fa-stop-circle"></i> <%- ctx.material.auditors2[i].name %>  <small class="text-muted"><%- ctx.material.auditors2[i].role %></small>
+                                    <i class="fa fa fa-stop-circle"></i> <%- ctx.material.auditors2[i].name %>  <small class="text-muted"><%- ctx.material.auditors2[i].role %></small><span class="pull-right">终审</span>
                                     <% } %>
                                 </li>
                                 <% } %>
@@ -166,22 +178,30 @@
                                 <% const auditors = ctx.material.auditors; %>
                                 <li class="list-group-item">
                                     <% if (auditors[iA].status === auditConst.status.checked) { %>
-                                    <span class="text-success pull-right"><small><%- auditors[iA].end_time.toLocaleString() %></small> 审批通过</span>
                                     <h5 class="card-title">
-                                        <i class="<%- (iA < auditors.length - 1 ? 'fa fa-chevron-circle-down text-success' : 'fa fa-stop-circle text-success') %>"></i> <%- auditors[iA].name %> <small class="text-muted"><%- auditors[iA].role %></small>
+                                        <i class="<%- (iA < auditors.length - 1 ? 'fa fa-chevron-circle-down text-success' : 'fa fa-stop-circle text-success') %>"></i> <%- auditors[iA].name %> <small class="text-muted"><%- auditors[iA].role %></small><span class="pull-right"><%= auditors[iA].sort === auditors[iA].max_sort ? '终' : ctx.helper.transFormToChinese(auditors[iA].sort) %>审</span>
                                     </h5>
+                                    <div class="ml-3">
+                                        <span class="text-success"><small><%- auditors[iA].end_time.toLocaleDateString() %></small> 审批通过</span>
+                                        <p class="card-text"><%- auditors[iA].opinion %></p>
+                                    </div>
                                     <% } else if (auditors[iA].stauts == auditConst.status.checking) { %>
-                                    <span class="pull-right">审批中</span>
                                     <h5 class="card-title">
-                                        <i class="<%- (iA < auditors.length - 1 ? 'fa fa-chevron-circle-down' : 'fa fa-stop-circle') %>"></i> <%- auditors[iA].name %> <small class="text-muted"><%- auditors[iA].role %></small>
+                                        <i class="<%- (iA < auditors.length - 1 ? 'fa fa-chevron-circle-down' : 'fa fa-stop-circle') %>"></i> <%- auditors[iA].name %> <small class="text-muted"><%- auditors[iA].role %></small><span class="pull-right"><%= auditors[iA].sort === auditors[iA].max_sort ? '终' : ctx.helper.transFormToChinese(auditors[iA].sort) %>审</span>
                                     </h5>
+                                    <div class="ml-3">
+                                        <span>审批中</span>
+                                        <p class="card-text"><%- auditors[iA].opinion %></p>
+                                    </div>
                                     <% } else { %>
                                     <h5 class="card-title">
-                                        <i class="<%- (iA < auditors.length - 1 ? 'fa fa-chevron-circle-down' : 'fa fa-stop-circle') %>"></i> <%- auditors[iA].name %> <small class="text-muted"><%- auditors[iA].role %></small>
+                                        <i class="<%- (iA < auditors.length - 1 ? 'fa fa-chevron-circle-down' : 'fa fa-stop-circle') %>"></i> <%- auditors[iA].name %> <small class="text-muted"><%- auditors[iA].role %></small><span class="pull-right"><%= auditors[iA].sort === auditors[iA].max_sort ? '终' : ctx.helper.transFormToChinese(auditors[iA].sort) %>审</span>
                                     </h5>
+                                    <div class="ml-3">
+                                        <p class="card-text"><%- auditors[iA].opinion %></p>
+                                    </div>
                                     <% } %>
                                     <% if (auditors[iA].status === auditConst.status.checked) { %>
-                                    <p class="card-text"><%- auditors[iA].opinion %></p>
                                     <% } else if (auditors[iA].status === auditConst.status.checking) { %>
                                     <div class="form-group">
                                         <label>审批意见<b class="text-danger">*</b></label>
@@ -218,14 +238,14 @@
                         <div class="card mt-3">
                             <ul class="list-group list-group-flush">
                                 <li class="list-group-item">
-                                    <i class="fa fa fa-play-circle fa-rotate-90"></i> <%- ctx.material.user.name %>  <small class="text-muted"><%- ctx.material.user.role %></small>
+                                    <i class="fa fa fa-play-circle fa-rotate-90"></i> <%- ctx.material.user.name %>  <small class="text-muted"><%- ctx.material.user.role %></small><span class="pull-right">原报</span>
                                 </li>
                                 <% for (let i = 0; i < ctx.material.auditors2.length; i++) { %>
                                 <li class="list-group-item">
                                     <% if (i < ctx.material.auditors2.length - 1) { %>
-                                    <i class="fa fa-chevron-circle-down"></i> <%- ctx.material.auditors2[i].name %>  <small class="text-muted"><%- ctx.material.auditors2[i].role %></small>
+                                    <i class="fa fa-chevron-circle-down"></i> <%- ctx.material.auditors2[i].name %>  <small class="text-muted"><%- ctx.material.auditors2[i].role %></small><span class="pull-right"><%= ctx.helper.transFormToChinese(i+1) %>审</span>
                                     <% } else { %>
-                                    <i class="fa fa fa-stop-circle"></i> <%- ctx.material.auditors2[i].name %>  <small class="text-muted"><%- ctx.material.auditors2[i].role %></small>
+                                    <i class="fa fa fa-stop-circle"></i> <%- ctx.material.auditors2[i].name %>  <small class="text-muted"><%- ctx.material.auditors2[i].role %></small><span class="pull-right">终审</span>
                                     <% } %>
                                 </li>
                                 <% } %>
@@ -239,41 +259,47 @@
                                 <% for (let iA = 0; iA < ah.length; iA++) { %>
                                 <% if (iA === 0) { %>
                                 <li class="list-group-item">
-                                    <span class="text-success pull-right"><% if (ctx.material.auditHistory.indexOf(ah) > 0) { %>重新<% } %>上报</span>
-                                    <h5 class="card-title"><i class="fa fa-play-circle fa-rotate-90 text-success"></i> <%- ctx.material.user.name %> <small class="text-muted"><%- ctx.material.user.role %></small></h5>
-                                    <p class="card-text"><small class="text-muted"><%- ah[iA].begin_time.toLocaleDateString() %></small></p>
+                                    <h5 class="card-title">
+                                        <i class="fa fa-play-circle fa-rotate-90 text-success"></i> <%- ctx.material.user.name %> <small class="text-muted"><%- ctx.material.user.role %></small><span class="pull-right">原报</span>
+                                    </h5>
+                                    <div class="ml-3">
+                                        <span class="text-success"><small><%- ah[iA].begin_time.toLocaleDateString() %></small> <% if (ctx.material.auditHistory.indexOf(ah) > 0) { %>重新<% } %>上报</span>
+                                    </div>
                                 </li>
                                 <li class="list-group-item">
-                                    <% if (ah[iA].status !== auditConst.status.uncheck) { %>
-                                    <span class="<%- auditConst.statusClass[ah[iA].status] %> pull-right"><%- auditConst.statusString[ah[iA].status]%><% if (ah[iA].status === auditConst.status.checkNo) { %> <%- ctx.material.user.name %><% } %></span>
-                                    <% } %>
-                                    <h5 class="card-title"><i class="fa <%if (iA === ah.length - 1) { %>fa-stop-circle<% } else { %>fa-chevron-circle-down<% } %> <%- auditConst.statusClass[ah[iA].status] %>"></i> <%- ah[iA].name %> <small class="text-muted"><%- ah[iA].role %></small></h5>
-                                    <% if (ah[iA].status === auditConst.status.checked || ah[iA].status === auditConst.status.checkNo) { %>
-                                    <p class="card-text mb-1"><%- ah[iA].opinion %></p>
-                                    <p class="card-text"><small class="text-muted"><%- ah[iA].end_time.toLocaleDateString() %></small></p>
-                                    <% } %>
+                                    <h5 class="card-title">
+                                        <i class="fa <%if (iA === ah.length - 1) { %>fa-stop-circle<% } else { %>fa-chevron-circle-down<% } %> <%- auditConst.statusClass[ah[iA].status] %>"></i> <%- ah[iA].name %> <small class="text-muted"><%- ah[iA].role %></small><span class="pull-right"><%= ah[iA].sort === ah[iA].max_sort ? '终' : ctx.helper.transFormToChinese(ah[iA].sort) %>审</span>
+                                    </h5>
+                                    <div class="ml-3">
+                                        <% if (ah[iA].status !== auditConst.status.uncheck) { %>
+                                            <span class="<%- auditConst.statusClass[ah[iA].status] %>"><% if (ah[iA].status === auditConst.status.checked || ah[iA].status === auditConst.status.checkNo) { %><small><%- ah[iA].end_time.toLocaleDateString() %></small> <% } %><%- auditConst.statusString[ah[iA].status]%><% if (ah[iA].status === auditConst.status.checkNo) { %> <%- ctx.material.user.name %><% } %></span>
+                                        <% } %>
+                                        <p class="card-text"><%- ah[iA].opinion %></p>
+                                    </div>
                                 </li>
                                 <% } else if (iA === ah.length - 1) { %>
                                 <li class="list-group-item">
-                                    <% if (ah[iA].status !== auditConst.status.uncheck) { %>
-                                    <span class="<%- auditConst.statusClass[ah[iA].status] %> pull-right"><%- auditConst.statusString[ah[iA].status]%><% if (ah[iA].status === auditConst.status.checkNo) { %> <%- ctx.material.user.name %><% } %></span>
-                                    <% } %>
-                                    <h5 class="card-title"><i class="fa fa-stop-circle <%- auditConst.statusClass[ah[iA].status] %>"></i> <%- ah[iA].name %> <small class="text-muted"><%- ah[iA].role %></small></h5>
-                                    <% if (ah[iA].status === auditConst.status.checked || ah[iA].status === auditConst.status.checkNo) { %>
-                                    <p class="card-text mb-1"><%- ah[iA].opinion %></p>
-                                    <p class="card-text"><small class="text-muted"><%- ah[iA].end_time.toLocaleDateString() %></small></p>
-                                    <% } %>
+                                    <h5 class="card-title">
+                                        <i class="fa fa-stop-circle <%- auditConst.statusClass[ah[iA].status] %>"></i> <%- ah[iA].name %> <small class="text-muted"><%- ah[iA].role %></small><span class="pull-right">终审</span>
+                                    </h5>
+                                    <div class="ml-3">
+                                        <% if (ah[iA].status !== auditConst.status.uncheck) { %>
+                                            <span class="<%- auditConst.statusClass[ah[iA].status] %>"><% if (ah[iA].status === auditConst.status.checked || ah[iA].status === auditConst.status.checkNo) { %><small><%- ah[iA].end_time.toLocaleDateString() %></small> <% } %><%- auditConst.statusString[ah[iA].status]%><% if (ah[iA].status === auditConst.status.checkNo) { %> <%- ctx.material.user.name %><% } %></span>
+                                        <% } %>
+                                        <p class="card-text"><%- ah[iA].opinion %></p>
+                                    </div>
                                 </li>
                                 <% } else { %>
                                 <li class="list-group-item">
-                                    <% if (ah[iA].status !== auditConst.status.uncheck) { %>
-                                    <span class="<%- auditConst.statusClass[ah[iA].status] %> pull-right"><%- auditConst.statusString[ah[iA].status]%><% if (ah[iA].status === auditConst.status.checkNo) { %> <%- ctx.material.user.name %><% } %></span>
-                                    <% } %>
-                                    <h5 class="card-title"><i class="fa fa-chevron-circle-down <%- auditConst.statusClass[ah[iA].status] %>"></i> <%- ah[iA].name %> <small class="text-muted"><%- ah[iA].role %></small></h5>
-                                    <% if (ah[iA].status === auditConst.status.checked || ah[iA].status === auditConst.status.checkNo) { %>
-                                    <p class="card-text mb-1"><%- ah[iA].opinion %></p>
-                                    <p class="card-text"><small class="text-muted"><%- ah[iA].end_time.toLocaleDateString() %></small></p>
-                                    <% } %>
+                                    <h5 class="card-title">
+                                        <i class="fa <%if (iA === ah.length - 1) { %>fa-stop-circle<% } else { %>fa-chevron-circle-down<% } %> <%- auditConst.statusClass[ah[iA].status] %>"></i> <%- ah[iA].name %> <small class="text-muted"><%- ah[iA].role %></small><span class="pull-right"><%= ah[iA].sort === ah[iA].max_sort ? '终' : ctx.helper.transFormToChinese(ah[iA].sort) %>审</span>
+                                    </h5>
+                                    <div class="ml-3">
+                                        <% if (ah[iA].status !== auditConst.status.uncheck) { %>
+                                            <span class="<%- auditConst.statusClass[ah[iA].status] %>"><% if (ah[iA].status === auditConst.status.checked || ah[iA].status === auditConst.status.checkNo) { %><small><%- ah[iA].end_time.toLocaleDateString() %></small> <% } %><%- auditConst.statusString[ah[iA].status]%><% if (ah[iA].status === auditConst.status.checkNo) { %> <%- ctx.material.user.name %><% } %></span>
+                                        <% } %>
+                                        <p class="card-text"><%- ah[iA].opinion %></p>
+                                    </div>
                                 </li>
                                 <% } %>
                                 <% } %>
@@ -287,41 +313,47 @@
                                 <% for (let iA = 0; iA < auditors.length; iA++) { %>
                                 <% if (iA === 0) { %>
                                 <li class="list-group-item">
-                                    <span class="text-success pull-right"><% if (ctx.material.times > 1) { %>重新<% } %>上报</span>
-                                    <h5 class="card-title"><i class="fa fa-play-circle fa-rotate-90 text-success"></i> <%- ctx.material.user.name %> <small class="text-muted"><%- ctx.material.user.role %></small></h5>
-                                    <p class="card-text"><small class="text-muted"><%- auditors[iA].begin_time.toLocaleDateString() %></small></p>
+                                    <h5 class="card-title">
+                                        <i class="fa fa-play-circle fa-rotate-90 text-success"></i> <%- ctx.material.user.name %> <small class="text-muted"><%- ctx.material.user.role %></small><span class="pull-right">原报</span>
+                                    </h5>
+                                    <div class="ml-3">
+                                        <span class="text-success"><small><%- auditors[iA].begin_time.toLocaleDateString() %></small> <% if (ctx.material.times > 1) { %>重新<% } %>上报</span>
+                                    </div>
                                 </li>
                                 <li class="list-group-item">
-                                    <% if (auditors[iA].status !== auditConst.status.uncheck) { %>
-                                    <span class="<%- auditConst.statusClass[auditors[iA].status] %> pull-right"><%- auditConst.statusString[auditors[iA].status]%><% if (auditors[iA].status === auditConst.status.checkNo) { %> <%- ctx.material.user.name %><% } %></span>
-                                    <% } %>
-                                    <h5 class="card-title"><i class="fa <%if (iA === auditors.length - 1) { %>fa-stop-circle<% } else { %>fa-chevron-circle-down<% } %> <%- auditConst.statusClass[auditors[iA].status] %>"></i> <%- auditors[iA].name %> <small class="text-muted"><%- auditors[iA].role %></small></h5>
-                                    <% if (auditors[iA].status === auditConst.status.checked || auditors[iA].status === auditConst.status.checkNo) { %>
-                                    <p class="card-text mb-1"><%- auditors[iA].opinion %></p>
-                                    <p class="card-text"><small class="text-muted"><%- auditors[iA].end_time.toLocaleDateString() %></small></p>
-                                    <% } %>
+                                    <h5 class="card-title">
+                                        <i class="fa <%if (iA === auditors.length - 1) { %>fa-stop-circle<% } else { %>fa-chevron-circle-down<% } %> <%- auditConst.statusClass[auditors[iA].status] %>"></i> <%- auditors[iA].name %> <small class="text-muted"><%- auditors[iA].role %></small><%- auditors[iA].sort === auditors[iA].max_sort ? '终' : ctx.helper.transFormToChinese(auditors[iA].sort) %>审</span>
+                                    </h5>
+                                    <div class="ml-3">
+                                        <% if (auditors[iA].status !== auditConst.status.uncheck) { %>
+                                            <span class="<%- auditConst.statusClass[auditors[iA].status] %>"><% if (auditors[iA].status === auditConst.status.checked || auditors[iA].status === auditConst.status.checkNo) { %><small><%- auditors[iA].end_time.toLocaleDateString() %></small> <% } %><%- auditConst.statusString[auditors[iA].status]%><% if (auditors[iA].status === auditConst.status.checkNo) { %> <%- ctx.material.user.name %><% } %></span>
+                                        <% } %>
+                                        <p class="card-text"><%- auditors[iA].opinion %></p>
+                                    </div>
                                 </li>
                                 <% } else if (iA === auditors.length - 1) { %>
                                 <li class="list-group-item">
-                                    <% if (auditors[iA].status !== auditConst.status.uncheck) { %>
-                                    <span class="<%- auditConst.statusClass[auditors[iA].status] %> pull-right"><%- auditConst.statusString[auditors[iA].status]%><% if (auditors[iA].status === auditConst.status.checkNo) { %> <%- ctx.material.user.name %><% } %></span>
-                                    <% } %>
-                                    <h5 class="card-title"><i class="fa fa-stop-circle <%- auditConst.statusClass[auditors[iA].status] %>"></i> <%- auditors[iA].name %> <small class="text-muted"><%- auditors[iA].role %></small></h5>
-                                    <% if (auditors[iA].status === auditConst.status.checked || auditors[iA].status === auditConst.status.checkNo) { %>
-                                    <p class="card-text mb-1"><%- auditors[iA].opinion %></p>
-                                    <p class="card-text"><small class="text-muted"><%- auditors[iA].end_time.toLocaleDateString() %></small></p>
-                                    <% } %>
+                                    <h5 class="card-title">
+                                        <i class="fa fa-stop-circle <%- auditConst.statusClass[auditors[iA].status] %>"></i> <%- auditors[iA].name %> <small class="text-muted"><%- auditors[iA].role %></small><span class="pull-right">终审</span>
+                                    </h5>
+                                    <div class="ml-3">
+                                        <% if (auditors[iA].status !== auditConst.status.uncheck) { %>
+                                            <span class="<%- auditConst.statusClass[auditors[iA].status] %>"><% if (auditors[iA].status === auditConst.status.checked || auditors[iA].status === auditConst.status.checkNo) { %><small><%- auditors[iA].end_time.toLocaleDateString() %></small> <% } %><%- auditConst.statusString[auditors[iA].status]%><% if (auditors[iA].status === auditConst.status.checkNo) { %> <%- ctx.material.user.name %><% } %></span>
+                                        <% } %>
+                                        <p class="card-text"><%- auditors[iA].opinion %></p>
+                                    </div>
                                 </li>
                                 <% } else { %>
                                 <li class="list-group-item">
-                                    <% if (auditors[iA].status !== auditConst.status.uncheck) { %>
-                                    <span class="<%- auditConst.statusClass[auditors[iA].status] %> pull-right"><%- auditConst.statusString[auditors[iA].status]%><% if (auditors[iA].status === auditConst.status.checkNo) { %> <%- ctx.material.user.name %><% } %></span>
-                                    <% } %>
-                                    <h5 class="card-title"><i class="fa fa-chevron-circle-down <%- auditConst.statusClass[auditors[iA].status] %>"></i> <%- auditors[iA].name %> <small class="text-muted"><%- auditors[iA].role %></small></h5>
-                                    <% if (auditors[iA].status === auditConst.status.checked || auditors[iA].status === auditConst.status.checkNo) { %>
-                                    <p class="card-text mb-1"><%- auditors[iA].opinion %></p>
-                                    <p class="card-text"><small class="text-muted"><%- auditors[iA].end_time.toLocaleDateString() %></small></p>
-                                    <% } %>
+                                    <h5 class="card-title">
+                                        <i class="fa <%if (iA === auditors.length - 1) { %>fa-stop-circle<% } else { %>fa-chevron-circle-down<% } %> <%- auditConst.statusClass[auditors[iA].status] %>"></i> <%- auditors[iA].name %> <small class="text-muted"><%- auditors[iA].role %></small><%- auditors[iA].sort === auditors[iA].max_sort ? '终' : ctx.helper.transFormToChinese(auditors[iA].sort) %>审</span>
+                                    </h5>
+                                    <div class="ml-3">
+                                        <% if (auditors[iA].status !== auditConst.status.uncheck) { %>
+                                            <span class="<%- auditConst.statusClass[auditors[iA].status] %>"><% if (auditors[iA].status === auditConst.status.checked || auditors[iA].status === auditConst.status.checkNo) { %><small><%- auditors[iA].end_time.toLocaleDateString() %></small> <% } %><%- auditConst.statusString[auditors[iA].status]%><% if (auditors[iA].status === auditConst.status.checkNo) { %> <%- ctx.material.user.name %><% } %></span>
+                                        <% } %>
+                                        <p class="card-text"><%- auditors[iA].opinion %></p>
+                                    </div>
                                 </li>
                                 <% } %>
                                 <% } %>
@@ -352,14 +384,14 @@
                         <div class="card mt-3">
                             <ul class="list-group list-group-flush">
                                 <li class="list-group-item">
-                                    <i class="fa fa fa-play-circle fa-rotate-90"></i> <%- ctx.material.user.name %>  <small class="text-muted"><%- ctx.material.user.role %></small>
+                                    <i class="fa fa fa-play-circle fa-rotate-90"></i> <%- ctx.material.user.name %>  <small class="text-muted"><%- ctx.material.user.role %></small><span class="pull-right">原报</span>
                                 </li>
                                 <% for (let i = 0; i < ctx.material.auditors2.length; i++) { %>
                                 <li class="list-group-item">
                                     <% if (i < ctx.material.auditors2.length - 1) { %>
-                                    <i class="fa fa-chevron-circle-down"></i> <%- ctx.material.auditors2[i].name %>  <small class="text-muted"><%- ctx.material.auditors2[i].role %></small>
+                                    <i class="fa fa-chevron-circle-down"></i> <%- ctx.material.auditors2[i].name %>  <small class="text-muted"><%- ctx.material.auditors2[i].role %></small><span class="pull-right"><%= ctx.helper.transFormToChinese(i+1) %>审</span>
                                     <% } else { %>
-                                    <i class="fa fa fa-stop-circle"></i> <%- ctx.material.auditors2[i].name %>  <small class="text-muted"><%- ctx.material.auditors2[i].role %></small>
+                                    <i class="fa fa fa-stop-circle"></i> <%- ctx.material.auditors2[i].name %>  <small class="text-muted"><%- ctx.material.auditors2[i].role %></small><span class="pull-right">终审</span>
                                     <% } %>
                                 </li>
                                 <% } %>
@@ -371,45 +403,51 @@
                         <div class="card mt-3">
                             <ul class="list-group list-group-flush">
                                 <% for (let iA = 0; iA < ah.length; iA++) { %>
-                                <% if (iA === 0) { %>
-                                <li class="list-group-item">
-                                    <span class="text-success pull-right"><% if (ctx.material.auditHistory.indexOf(ah) > 0) { %>重新<% } %>上报</span>
-                                    <h5 class="card-title"><i class="fa fa-play-circle fa-rotate-90 text-success"></i> <%- ctx.material.user.name %> <small class="text-muted"><%- ctx.material.user.role %></small></h5>
-                                    <p class="card-text"><small class="text-muted"><%- ah[iA].begin_time.toLocaleDateString() %></small></p>
-                                </li>
-                                <li class="list-group-item">
-                                    <% if (ah[iA].status !== auditConst.status.uncheck) { %>
-                                    <span class="<%- auditConst.statusClass[ah[iA].status] %> pull-right"><%- auditConst.statusString[ah[iA].status]%><% if (ah[iA].status === auditConst.status.checkNo) { %> <%- ctx.material.user.name %><% } %></span>
-                                    <% } %>
-                                    <h5 class="card-title"><i class="fa <%if (iA === ah.length - 1) { %>fa-stop-circle<% } else { %>fa-chevron-circle-down<% } %> <%- auditConst.statusClass[ah[iA].status] %>"></i> <%- ah[iA].name %> <small class="text-muted"><%- ah[iA].role %></small></h5>
-                                    <% if (ah[iA].status === auditConst.status.checked || ah[iA].status === auditConst.status.checkNo) { %>
-                                    <p class="card-text mb-1"><%- ah[iA].opinion %></p>
-                                    <p class="card-text"><small class="text-muted"><%- ah[iA].end_time.toLocaleDateString() %></small></p>
-                                    <% } %>
-                                </li>
-                                <% } else if (iA === ah.length - 1) { %>
-                                <li class="list-group-item">
-                                    <% if (ah[iA].status !== auditConst.status.uncheck) { %>
-                                    <span class="<%- auditConst.statusClass[ah[iA].status] %> pull-right"><%- auditConst.statusString[ah[iA].status]%><% if (ah[iA].status === auditConst.status.checkNo) { %> <%- ctx.material.user.name %><% } %></span>
-                                    <% } %>
-                                    <h5 class="card-title"><i class="fa fa-stop-circle <%- auditConst.statusClass[ah[iA].status] %>"></i> <%- ah[iA].name %> <small class="text-muted"><%- ah[iA].role %></small></h5>
-                                    <% if (ah[iA].status === auditConst.status.checked || ah[iA].status === auditConst.status.checkNo) { %>
-                                    <p class="card-text mb-1"><%- ah[iA].opinion %></p>
-                                    <p class="card-text"><small class="text-muted"><%- ah[iA].end_time.toLocaleDateString() %></small></p>
-                                    <% } %>
-                                </li>
-                                <% } else { %>
-                                <li class="list-group-item">
-                                    <% if (ah[iA].status !== auditConst.status.uncheck) { %>
-                                    <span class="<%- auditConst.statusClass[ah[iA].status] %> pull-right"><%- auditConst.statusString[ah[iA].status]%><% if (ah[iA].status === auditConst.status.checkNo) { %> <%- ctx.material.user.name %><% } %></span>
-                                    <% } %>
-                                    <h5 class="card-title"><i class="fa fa-chevron-circle-down <%- auditConst.statusClass[ah[iA].status] %>"></i> <%- ah[iA].name %> <small class="text-muted"><%- ah[iA].role %></small></h5>
-                                    <% if (ah[iA].status === auditConst.status.checked || ah[iA].status === auditConst.status.checkNo) { %>
-                                    <p class="card-text mb-1"><%- ah[iA].opinion %></p>
-                                    <p class="card-text"><small class="text-muted"><%- ah[iA].end_time.toLocaleDateString() %></small></p>
+                                    <% if (iA === 0) { %>
+                                        <li class="list-group-item">
+                                            <h5 class="card-title">
+                                                <i class="fa fa-play-circle fa-rotate-90 text-success"></i> <%- ctx.material.user.name %> <small class="text-muted"><%- ctx.material.user.role %></small><span class="pull-right">原报</span>
+                                            </h5>
+                                            <div class="ml-3">
+                                                <span class="text-success"><small><%- ah[iA].begin_time.toLocaleDateString() %></small> <% if (ctx.material.auditHistory.indexOf(ah) > 0) { %>重新<% } %>上报</span>
+                                            </div>
+                                        </li>
+                                        <li class="list-group-item">
+                                            <h5 class="card-title">
+                                                <i class="fa <%if (iA === ah.length - 1) { %>fa-stop-circle<% } else { %>fa-chevron-circle-down<% } %> <%- auditConst.statusClass[ah[iA].status] %>"></i> <%- ah[iA].name %> <small class="text-muted"><%- ah[iA].role %></small><span class="pull-right"><%= ah[iA].sort === ah[iA].max_sort ? '终' : ctx.helper.transFormToChinese(ah[iA].sort) %>审</span>
+                                            </h5>
+                                            <div class="ml-3">
+                                                <% if (ah[iA].status !== auditConst.status.uncheck) { %>
+                                                    <span class="<%- auditConst.statusClass[ah[iA].status] %>"><% if (ah[iA].status === auditConst.status.checked || ah[iA].status === auditConst.status.checkNo) { %><small><%- ah[iA].end_time.toLocaleDateString() %></small> <% } %><%- auditConst.statusString[ah[iA].status]%><% if (ah[iA].status === auditConst.status.checkNo) { %> <%- ctx.material.user.name %><% } %></span>
+                                                <% } %>
+                                                <p class="card-text"><%- ah[iA].opinion %></p>
+                                            </div>
+                                        </li>
+                                    <% } else if (iA === ah.length - 1) { %>
+                                        <li class="list-group-item">
+                                            <h5 class="card-title">
+                                                <i class="fa fa-stop-circle <%- auditConst.statusClass[ah[iA].status] %>"></i> <%- ah[iA].name %> <small class="text-muted"><%- ah[iA].role %></small><span class="pull-right">终审</span>
+                                            </h5>
+                                            <div class="ml-3">
+                                                <% if (ah[iA].status !== auditConst.status.uncheck) { %>
+                                                    <span class="<%- auditConst.statusClass[ah[iA].status] %>"><% if (ah[iA].status === auditConst.status.checked || ah[iA].status === auditConst.status.checkNo) { %><small><%- ah[iA].end_time.toLocaleDateString() %></small> <% } %><%- auditConst.statusString[ah[iA].status]%><% if (ah[iA].status === auditConst.status.checkNo) { %> <%- ctx.material.user.name %><% } %></span>
+                                                <% } %>
+                                                <p class="card-text"><%- ah[iA].opinion %></p>
+                                            </div>
+                                        </li>
+                                    <% } else { %>
+                                    <li class="list-group-item">
+                                        <h5 class="card-title">
+                                            <i class="fa <%if (iA === ah.length - 1) { %>fa-stop-circle<% } else { %>fa-chevron-circle-down<% } %> <%- auditConst.statusClass[ah[iA].status] %>"></i> <%- ah[iA].name %> <small class="text-muted"><%- ah[iA].role %></small><span class="pull-right"><%= ah[iA].sort === ah[iA].max_sort ? '终' : ctx.helper.transFormToChinese(ah[iA].sort) %>审</span>
+                                        </h5>
+                                        <div class="ml-3">
+                                            <% if (ah[iA].status !== auditConst.status.uncheck) { %>
+                                                <span class="<%- auditConst.statusClass[ah[iA].status] %>"><% if (ah[iA].status === auditConst.status.checked || ah[iA].status === auditConst.status.checkNo) { %><small><%- ah[iA].end_time.toLocaleDateString() %></small> <% } %><%- auditConst.statusString[ah[iA].status]%><% if (ah[iA].status === auditConst.status.checkNo) { %> <%- ctx.material.user.name %><% } %></span>
+                                            <% } %>
+                                            <p class="card-text"><%- ah[iA].opinion %></p>
+                                        </div>
+                                    </li>
                                     <% } %>
-                                </li>
-                                <% } %>
                                 <% } %>
                             </ul>
                         </div>
@@ -437,14 +475,14 @@
                         <div class="card mt-3">
                             <ul class="list-group list-group-flush">
                                 <li class="list-group-item">
-                                    <i class="fa fa fa-play-circle fa-rotate-90"></i> <%- ctx.material.user.name %>  <small class="text-muted"><%- ctx.material.user.role %></small>
+                                    <i class="fa fa fa-play-circle fa-rotate-90"></i> <%- ctx.material.user.name %>  <small class="text-muted"><%- ctx.material.user.role %></small><span class="pull-right">原报</span>
                                 </li>
                                 <% for (let i = 0; i < ctx.material.auditors2.length; i++) { %>
                                 <li class="list-group-item">
                                     <% if (i < ctx.material.auditors2.length - 1) { %>
-                                    <i class="fa fa-chevron-circle-down"></i> <%- ctx.material.auditors2[i].name %>  <small class="text-muted"><%- ctx.material.auditors2[i].role %></small>
+                                    <i class="fa fa-chevron-circle-down"></i> <%- ctx.material.auditors2[i].name %>  <small class="text-muted"><%- ctx.material.auditors2[i].role %></small><span class="pull-right"><%= ctx.helper.transFormToChinese(i+1) %>审</span>
                                     <% } else { %>
-                                    <i class="fa fa fa-stop-circle"></i> <%- ctx.material.auditors2[i].name %>  <small class="text-muted"><%- ctx.material.auditors2[i].role %></small>
+                                    <i class="fa fa fa-stop-circle"></i> <%- ctx.material.auditors2[i].name %>  <small class="text-muted"><%- ctx.material.auditors2[i].role %></small><span class="pull-right">终审</span>
                                     <% } %>
                                 </li>
                                 <% } %>
@@ -456,45 +494,51 @@
                         <div class="card mt-3">
                             <ul class="list-group list-group-flush">
                                 <% for (let iA = 0; iA < ah.length; iA++) { %>
-                                <% if (iA === 0) { %>
-                                <li class="list-group-item">
-                                    <span class="text-success pull-right"><% if (ctx.material.auditHistory.indexOf(ah) > 0) { %>重新<% } %>上报</span>
-                                    <h5 class="card-title"><i class="fa fa-play-circle fa-rotate-90 text-success"></i> <%- ctx.material.user.name %> <small class="text-muted"><%- ctx.material.user.role %></small></h5>
-                                    <p class="card-text"><small class="text-muted"><%- ah[iA].begin_time.toLocaleDateString() %></small></p>
-                                </li>
-                                <li class="list-group-item">
-                                    <% if (ah[iA].status !== auditConst.status.uncheck) { %>
-                                    <span class="<%- auditConst.statusClass[ah[iA].status] %> pull-right"><%- auditConst.statusString[ah[iA].status]%><% if (ah[iA].status === auditConst.status.checkNo) { %> <%- ctx.material.user.name %><% } %></span>
-                                    <% } %>
-                                    <h5 class="card-title"><i class="fa <%if (iA === ah.length - 1) { %>fa-stop-circle<% } else { %>fa-chevron-circle-down<% } %> <%- auditConst.statusClass[ah[iA].status] %>"></i> <%- ah[iA].name %> <small class="text-muted"><%- ah[iA].role %></small></h5>
-                                    <% if (ah[iA].status === auditConst.status.checked || ah[iA].status === auditConst.status.checkNo) { %>
-                                    <p class="card-text mb-1"><%- ah[iA].opinion %></p>
-                                    <p class="card-text"><small class="text-muted"><%- ah[iA].end_time.toLocaleDateString() %></small></p>
-                                    <% } %>
-                                </li>
-                                <% } else if (iA === ah.length - 1) { %>
-                                <li class="list-group-item">
-                                    <% if (ah[iA].status !== auditConst.status.uncheck) { %>
-                                    <span class="<%- auditConst.statusClass[ah[iA].status] %> pull-right"><%- auditConst.statusString[ah[iA].status]%><% if (ah[iA].status === auditConst.status.checkNo) { %> <%- ctx.material.user.name %><% } %></span>
-                                    <% } %>
-                                    <h5 class="card-title"><i class="fa fa-stop-circle <%- auditConst.statusClass[ah[iA].status] %>"></i> <%- ah[iA].name %> <small class="text-muted"><%- ah[iA].role %></small></h5>
-                                    <% if (ah[iA].status === auditConst.status.checked || ah[iA].status === auditConst.status.checkNo) { %>
-                                    <p class="card-text mb-1"><%- ah[iA].opinion %></p>
-                                    <p class="card-text"><small class="text-muted"><%- ah[iA].end_time.toLocaleDateString() %></small></p>
-                                    <% } %>
-                                </li>
-                                <% } else { %>
-                                <li class="list-group-item">
-                                    <% if (ah[iA].status !== auditConst.status.uncheck) { %>
-                                    <span class="<%- auditConst.statusClass[ah[iA].status] %> pull-right"><%- auditConst.statusString[ah[iA].status]%><% if (ah[iA].status === auditConst.status.checkNo) { %> <%- ctx.material.user.name %><% } %></span>
-                                    <% } %>
-                                    <h5 class="card-title"><i class="fa fa-chevron-circle-down <%- auditConst.statusClass[ah[iA].status] %>"></i> <%- ah[iA].name %> <small class="text-muted"><%- ah[iA].role %></small></h5>
-                                    <% if (ah[iA].status === auditConst.status.checked || ah[iA].status === auditConst.status.checkNo) { %>
-                                    <p class="card-text mb-1"><%- ah[iA].opinion %></p>
-                                    <p class="card-text"><small class="text-muted"><%- ah[iA].end_time.toLocaleDateString() %></small></p>
+                                    <% if (iA === 0) { %>
+                                        <li class="list-group-item">
+                                            <h5 class="card-title">
+                                                <i class="fa fa-play-circle fa-rotate-90 text-success"></i> <%- ctx.material.user.name %> <small class="text-muted"><%- ctx.material.user.role %></small><span class="pull-right">原报</span>
+                                            </h5>
+                                            <div class="ml-3">
+                                                <span class="text-success"><small><%- ah[iA].begin_time.toLocaleDateString() %></small> <% if (ctx.material.auditHistory.indexOf(ah) > 0) { %>重新<% } %>上报</span>
+                                            </div>
+                                        </li>
+                                        <li class="list-group-item">
+                                            <h5 class="card-title">
+                                                <i class="fa <%if (iA === ah.length - 1) { %>fa-stop-circle<% } else { %>fa-chevron-circle-down<% } %> <%- auditConst.statusClass[ah[iA].status] %>"></i> <%- ah[iA].name %> <small class="text-muted"><%- ah[iA].role %></small><span class="pull-right"><%= ah[iA].sort === ah[iA].max_sort ? '终' : ctx.helper.transFormToChinese(ah[iA].sort) %>审</span>
+                                            </h5>
+                                            <div class="ml-3">
+                                                <% if (ah[iA].status !== auditConst.status.uncheck) { %>
+                                                    <span class="<%- auditConst.statusClass[ah[iA].status] %>"><% if (ah[iA].status === auditConst.status.checked || ah[iA].status === auditConst.status.checkNo) { %><small><%- ah[iA].end_time.toLocaleDateString() %></small> <% } %><%- auditConst.statusString[ah[iA].status]%><% if (ah[iA].status === auditConst.status.checkNo) { %> <%- ctx.material.user.name %><% } %></span>
+                                                <% } %>
+                                                <p class="card-text"><%- ah[iA].opinion %></p>
+                                            </div>
+                                        </li>
+                                    <% } else if (iA === ah.length - 1) { %>
+                                        <li class="list-group-item">
+                                            <h5 class="card-title">
+                                                <i class="fa fa-stop-circle <%- auditConst.statusClass[ah[iA].status] %>"></i> <%- ah[iA].name %> <small class="text-muted"><%- ah[iA].role %></small><span class="pull-right">终审</span>
+                                            </h5>
+                                            <div class="ml-3">
+                                                <% if (ah[iA].status !== auditConst.status.uncheck) { %>
+                                                    <span class="<%- auditConst.statusClass[ah[iA].status] %>"><% if (ah[iA].status === auditConst.status.checked || ah[iA].status === auditConst.status.checkNo) { %><small><%- ah[iA].end_time.toLocaleDateString() %></small> <% } %><%- auditConst.statusString[ah[iA].status]%><% if (ah[iA].status === auditConst.status.checkNo) { %> <%- ctx.material.user.name %><% } %></span>
+                                                <% } %>
+                                                <p class="card-text"><%- ah[iA].opinion %></p>
+                                            </div>
+                                        </li>
+                                    <% } else { %>
+                                    <li class="list-group-item">
+                                        <h5 class="card-title">
+                                            <i class="fa <%if (iA === ah.length - 1) { %>fa-stop-circle<% } else { %>fa-chevron-circle-down<% } %> <%- auditConst.statusClass[ah[iA].status] %>"></i> <%- ah[iA].name %> <small class="text-muted"><%- ah[iA].role %></small><span class="pull-right"><%= ah[iA].sort === ah[iA].max_sort ? '终' : ctx.helper.transFormToChinese(ah[iA].sort) %>审</span>
+                                        </h5>
+                                        <div class="ml-3">
+                                            <% if (ah[iA].status !== auditConst.status.uncheck) { %>
+                                                <span class="<%- auditConst.statusClass[ah[iA].status] %>"><% if (ah[iA].status === auditConst.status.checked || ah[iA].status === auditConst.status.checkNo) { %><small><%- ah[iA].end_time.toLocaleDateString() %></small> <% } %><%- auditConst.statusString[ah[iA].status]%><% if (ah[iA].status === auditConst.status.checkNo) { %> <%- ctx.material.user.name %><% } %></span>
+                                            <% } %>
+                                            <p class="card-text"><%- ah[iA].opinion %></p>
+                                        </div>
+                                    </li>
                                     <% } %>
-                                </li>
-                                <% } %>
                                 <% } %>
                             </ul>
                         </div>
@@ -523,7 +567,7 @@
                             <div class="card mt-3">
                                 <ul class="list-group list-group-flush">
                                     <li class="list-group-item">
-                                        <i class="fa fa fa-play-circle fa-rotate-90"></i> <%- ctx.material.user.name %>  <small class="text-muted"><%- ctx.material.user.role %></small>
+                                        <i class="fa fa fa-play-circle fa-rotate-90"></i> <%- ctx.material.user.name %>  <small class="text-muted"><%- ctx.material.user.role %></small><span class="pull-right">原报</span>
                                     </li>
                                 </ul>
                                 <ul class="list-group list-group-flush" id="auditors-list">
@@ -531,9 +575,9 @@
                                     <% for (let i = 0; i < auditorList.length; i++) { %>
                                         <li class="list-group-item" data-auditid="<%- auditorList[i].aid %>">
                                             <% if (i < auditorList.length - 1) { %>
-                                                <i class="fa fa-chevron-circle-down"></i> <%- auditorList[i].name %>  <small class="text-muted"><%- auditorList[i].role %></small>
+                                                <i class="fa fa-chevron-circle-down"></i> <%- auditorList[i].name %>  <small class="text-muted"><%- auditorList[i].role %></small><span class="pull-right"><%= ctx.helper.transFormToChinese(i+1) %>审</span>
                                             <% } else { %>
-                                                <i class="fa fa fa-stop-circle"></i> <%- auditorList[i].name %>  <small class="text-muted"><%- auditorList[i].role %></small>
+                                                <i class="fa fa fa-stop-circle"></i> <%- auditorList[i].name %>  <small class="text-muted"><%- auditorList[i].role %></small><span class="pull-right">终审</span>
                                             <% } %>
                                         </li>
                                     <% } %>