فهرست منبع

sql更新和审批流程展示

laiguoran 5 سال پیش
والد
کامیت
7315bc6c7c
2فایلهای تغییر یافته به همراه229 افزوده شده و 0 حذف شده
  1. 228 0
      app/view/stage/audit_modal.ejs
  2. 1 0
      sql/update.sql

+ 228 - 0
app/view/stage/audit_modal.ejs

@@ -105,6 +105,63 @@
                                 </div>
                             </div>
                             <div class="col-8 modal-height-500" style="overflow: auto">
+                                <% for (const ah of ctx.stage.auditHistory) { %>
+                                    <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">
+                                                        <h5 class="card-title"><i class="fa fa-play-circle fa-rotate-90 text-success"></i> <%- ctx.stage.user.name %> <small class="text-muted"><%- ctx.stage.user.role %></small><span class="pull-right">原报</span></h5>
+                                                        <div class="ml-3">
+                                                            <span class="text-success"><%- ah[iA].begin_time.toLocaleDateString() %> <% if (ctx.stage.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"><%= parseInt(ah[iA].sort) === parseInt(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 || ah[iA].status === auditConst.status.checkNoPre || ah[iA].status === auditConst.status.checkAgain) { %><small><%- ah[iA].end_time.toLocaleDateString() %></small> <% } %><%- auditConst.statusString[ah[iA].status]%><% if (ah[iA].status === auditConst.status.checkNo) { %> <%- ctx.stage.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 || ah[iA].status === auditConst.status.checkNoPre || ah[iA].status === auditConst.status.checkAgain) { %><small><%- ah[iA].end_time.toLocaleDateString() %></small> <% } %><%- auditConst.statusString[ah[iA].status]%><% if (ah[iA].status === auditConst.status.checkNo) { %> <%- ctx.stage.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 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"><%= parseInt(ah[iA].sort) === parseInt(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 || ah[iA].status === auditConst.status.checkNoPre || ah[iA].status === auditConst.status.checkAgain) { %><small><%- ah[iA].end_time.toLocaleDateString() %></small> <% } %><%- auditConst.statusString[ah[iA].status]%><% if (ah[iA].status === auditConst.status.checkNo) { %> <%- ctx.stage.user.name %><% } %>
+                                                                </span>
+                                                            <% } %>
+                                                            <p class="card-text"><%- ah[iA].opinion %></p>
+                                                        </div>
+                                                    </li>
+                                                <% } %>
+                                            <% } %>
+                                        </ul>
+                                    </div>
+                                <% } %>
                                 <div class="card mt-3">
                                     <ul class="list-group list-group-flush">
                                         <li class="list-group-item">
@@ -206,6 +263,63 @@
                                 </div>
                             </div>
                             <div class="col-8 modal-height-500" style="overflow: auto">
+                                <% for (const ah of ctx.stage.auditHistory) { %>
+                                    <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">
+                                                        <h5 class="card-title"><i class="fa fa-play-circle fa-rotate-90 text-success"></i> <%- ctx.stage.user.name %> <small class="text-muted"><%- ctx.stage.user.role %></small><span class="pull-right">原报</span></h5>
+                                                        <div class="ml-3">
+                                                            <span class="text-success"><%- ah[iA].begin_time.toLocaleDateString() %> <% if (ctx.stage.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"><%= parseInt(ah[iA].sort) === parseInt(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 || ah[iA].status === auditConst.status.checkNoPre || ah[iA].status === auditConst.status.checkAgain) { %><small><%- ah[iA].end_time.toLocaleDateString() %></small> <% } %><%- auditConst.statusString[ah[iA].status]%><% if (ah[iA].status === auditConst.status.checkNo) { %> <%- ctx.stage.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 || ah[iA].status === auditConst.status.checkNoPre || ah[iA].status === auditConst.status.checkAgain) { %><small><%- ah[iA].end_time.toLocaleDateString() %></small> <% } %><%- auditConst.statusString[ah[iA].status]%><% if (ah[iA].status === auditConst.status.checkNo) { %> <%- ctx.stage.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 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"><%= parseInt(ah[iA].sort) === parseInt(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 || ah[iA].status === auditConst.status.checkNoPre || ah[iA].status === auditConst.status.checkAgain) { %><small><%- ah[iA].end_time.toLocaleDateString() %></small> <% } %><%- auditConst.statusString[ah[iA].status]%><% if (ah[iA].status === auditConst.status.checkNo) { %> <%- ctx.stage.user.name %><% } %>
+                                                                </span>
+                                                            <% } %>
+                                                            <p class="card-text"><%- ah[iA].opinion %></p>
+                                                        </div>
+                                                    </li>
+                                                <% } %>
+                                            <% } %>
+                                        </ul>
+                                    </div>
+                                <% } %>
                                 <div class="card mt-3">
                                     <ul class="list-group list-group-flush">
                                         <li class="list-group-item">
@@ -1014,6 +1128,63 @@
                                 </div>
                             </div>
                             <div class="col-8 modal-height-500" style="overflow: auto">
+                                <% for (const ah of ctx.stage.auditHistory) { %>
+                                    <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">
+                                                        <h5 class="card-title"><i class="fa fa-play-circle fa-rotate-90 text-success"></i> <%- ctx.stage.user.name %> <small class="text-muted"><%- ctx.stage.user.role %></small><span class="pull-right">原报</span></h5>
+                                                        <div class="ml-3">
+                                                            <span class="text-success"><%- ah[iA].begin_time.toLocaleDateString() %> <% if (ctx.stage.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"><%= parseInt(ah[iA].sort) === parseInt(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 || ah[iA].status === auditConst.status.checkNoPre || ah[iA].status === auditConst.status.checkAgain) { %><small><%- ah[iA].end_time.toLocaleDateString() %></small> <% } %><%- auditConst.statusString[ah[iA].status]%><% if (ah[iA].status === auditConst.status.checkNo) { %> <%- ctx.stage.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 || ah[iA].status === auditConst.status.checkNoPre || ah[iA].status === auditConst.status.checkAgain) { %><small><%- ah[iA].end_time.toLocaleDateString() %></small> <% } %><%- auditConst.statusString[ah[iA].status]%><% if (ah[iA].status === auditConst.status.checkNo) { %> <%- ctx.stage.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 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"><%= parseInt(ah[iA].sort) === parseInt(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 || ah[iA].status === auditConst.status.checkNoPre || ah[iA].status === auditConst.status.checkAgain) { %><small><%- ah[iA].end_time.toLocaleDateString() %></small> <% } %><%- auditConst.statusString[ah[iA].status]%><% if (ah[iA].status === auditConst.status.checkNo) { %> <%- ctx.stage.user.name %><% } %>
+                                                                </span>
+                                                            <% } %>
+                                                            <p class="card-text"><%- ah[iA].opinion %></p>
+                                                        </div>
+                                                    </li>
+                                                <% } %>
+                                            <% } %>
+                                        </ul>
+                                    </div>
+                                <% } %>
                                 <div class="card mt-3">
                                     <ul class="list-group list-group-flush">
                                         <li class="list-group-item">
@@ -1115,6 +1286,63 @@
                                 </div>
                             </div>
                             <div class="col-8 modal-height-500" style="overflow: auto">
+                                <% for (const ah of ctx.stage.auditHistory) { %>
+                                    <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">
+                                                        <h5 class="card-title"><i class="fa fa-play-circle fa-rotate-90 text-success"></i> <%- ctx.stage.user.name %> <small class="text-muted"><%- ctx.stage.user.role %></small><span class="pull-right">原报</span></h5>
+                                                        <div class="ml-3">
+                                                            <span class="text-success"><%- ah[iA].begin_time.toLocaleDateString() %> <% if (ctx.stage.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"><%= parseInt(ah[iA].sort) === parseInt(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 || ah[iA].status === auditConst.status.checkNoPre || ah[iA].status === auditConst.status.checkAgain) { %><small><%- ah[iA].end_time.toLocaleDateString() %></small> <% } %><%- auditConst.statusString[ah[iA].status]%><% if (ah[iA].status === auditConst.status.checkNo) { %> <%- ctx.stage.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 || ah[iA].status === auditConst.status.checkNoPre || ah[iA].status === auditConst.status.checkAgain) { %><small><%- ah[iA].end_time.toLocaleDateString() %></small> <% } %><%- auditConst.statusString[ah[iA].status]%><% if (ah[iA].status === auditConst.status.checkNo) { %> <%- ctx.stage.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 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"><%= parseInt(ah[iA].sort) === parseInt(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 || ah[iA].status === auditConst.status.checkNoPre || ah[iA].status === auditConst.status.checkAgain) { %><small><%- ah[iA].end_time.toLocaleDateString() %></small> <% } %><%- auditConst.statusString[ah[iA].status]%><% if (ah[iA].status === auditConst.status.checkNo) { %> <%- ctx.stage.user.name %><% } %>
+                                                                </span>
+                                                            <% } %>
+                                                            <p class="card-text"><%- ah[iA].opinion %></p>
+                                                        </div>
+                                                    </li>
+                                                <% } %>
+                                            <% } %>
+                                        </ul>
+                                    </div>
+                                <% } %>
                                 <div class="card mt-3">
                                     <ul class="list-group list-group-flush">
                                         <li class="list-group-item">

+ 1 - 0
sql/update.sql

@@ -0,0 +1 @@
+ALTER TABLE `zh_tender` CHANGE `name` `name` VARCHAR(100) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '名称';