ソースを参照

权限和变更bug修复

laiguoran 6 年 前
コミット
c4c22e205e

+ 11 - 3
app/controller/tender_controller.js

@@ -89,8 +89,16 @@ module.exports = app => {
          * @return {Promise<void>}
          */
         async listManage(ctx) {
-            this.jsFiles = this.app.jsFiles.tender.manage;
-            await this._list('tender/manage.ejs', tenderConst.manageTableCol, 'tender/manage_modal.ejs');
+            // 先判断权限
+            // 获取用户新建标段权利
+            const accountInfo = await this.ctx.service.projectAccount.getDataById(this.ctx.session.sessionUser.accountId);
+            const userPermission = accountInfo !== undefined && accountInfo.permission !== '' ? JSON.parse(accountInfo.permission) : null;
+            if (userPermission !== null && userPermission.tender !== undefined && userPermission.tender.indexOf('1') !== -1) {
+                this.jsFiles = this.app.jsFiles.tender.manage;
+                await this._list('tender/manage.ejs', tenderConst.manageTableCol, 'tender/manage_modal.ejs');
+            } else {
+                this.ctx.redirect('/dashboard');
+            }
         }
 
         /**
@@ -409,7 +417,7 @@ module.exports = app => {
                 }
                 const data = JSON.parse(ctx.request.body.data);
                 if (!data.rule || !data.connector || !codeRuleConst.ruleField[data.rule]) {
-                    throw '参数错误';
+                    throw '请选择组件再添加';
                 }
 
                 const updateData = {

+ 3 - 3
app/view/measure/stage.ejs

@@ -46,9 +46,9 @@
                     <td class="text-right"><%- (s.end_tp ? s.end_tp : '')%></td>
                     <td class="text-center">
                     <% if (s.status === auditConst.status.uncheck && s.user_id === ctx.session.sessionUser.accountId) { %>
-                        <a href="" class="btn <%- auditConst.statusButtonClass[s.status] %> btn-sm"><%- auditConst.statusButton[s.status] %></a>
+                        <a href="<%- '/tender/' + ctx.tender.id + '/measure/stage/' + s.order %>" class="btn <%- auditConst.statusButtonClass[s.status] %> btn-sm"><%- auditConst.statusButton[s.status] %></a>
                     <% } else if (s.status !== auditConst.status.checked && s.curAuditor && s.curAuditor === ctx.session.sessionUser.accountId) { %>
-                        <a href="" class="btn <%- auditConst.statusButtonClass[s.status] %> btn-sm"><%- auditConst.statusButton[s.status] %></a>
+                        <a href="<%- '/tender/' + ctx.tender.id + '/measure/stage/' + s.order %>" class="btn <%- auditConst.statusButtonClass[s.status] %> btn-sm"><%- auditConst.statusButton[s.status] %></a>
                     <% } else { %>
                         <span class="<%- auditConst.auditStringClass[s.status] %>"><%- auditConst.auditString[s.status] %></span>
                     <% } %>
@@ -69,4 +69,4 @@
 </div>
 <script>
     const stages = JSON.parse('<%- JSON.stringify(stages) %>');
-</script>
+</script>

+ 2 - 0
app/view/tender/sub_menu.ejs

@@ -12,9 +12,11 @@
                     <label class="btn btn-sm btn-light  <% if (ctx.url === '/list/progress') { %>active<% } %>" onclick="window.location.href='/list/progress'">
                         <input type="radio" name="options" id="option2" autocomplete="off"> 计量进度
                     </label>
+                    <% if (userPermission !== null && userPermission.tender !== undefined && userPermission.tender.indexOf('1') !== -1) { %>
                     <label class="btn btn-sm btn-light  <% if (ctx.url === '/list/manage') { %>active<% } %>" onclick="window.location.href='/list/manage'">
                         <input type="radio" name="options" id="option2" autocomplete="off"> 管理标段
                     </label>
+                    <% } %>
                 </div>
             </div>
             <!--<div class="d-inline-block ml-3">-->