Browse Source

概算投资相关:
1. 移除创建人
2. 关联标段,提供全选按钮
3. 编辑,项目名默认填写当前项目名
4. 管理员可进入项目,且可编辑

MaiXinRong 3 years atrás
parent
commit
6f77129597

+ 8 - 3
app/middleware/budget_check.js

@@ -24,9 +24,13 @@ module.exports = options => {
             if (!id) throw '参数错误';
             this.budget = yield this.service.budget.getDataById(id);
             if (!this.budget) throw '项目不存在';
-            const bp = yield this.service.budgetPermission.getBudgetUserPermission(id);
-            if (!bp) throw '您无权查看该项目';
-            this.budget.readOnly = bp.permission.indexOf(this.service.budgetPermission.PermissionConst.edit.value) < 0;
+            if (this.session.sessionUser.is_admin) {
+                this.budget.readOnly = false;
+            } else {
+                const bp = yield this.service.budgetPermission.getBudgetUserPermission(id);
+                if (!bp) throw '您无权查看该项目';
+                this.budget.readOnly = bp.permission.indexOf(this.service.budgetPermission.PermissionConst.edit.value) < 0;
+            }
             yield next;
         } catch (err) {
             this.log(err);
@@ -34,6 +38,7 @@ module.exports = options => {
                 this.ajaxErrorBody(err, '概算投资项目未知错误');
             } else {
                 this.postError(err, '概算投资项目未知错误');
+                this.redirect(this.request.headers.referer);
             }
         }
     };

+ 10 - 0
app/public/js/budget_list.js

@@ -64,9 +64,19 @@ const relaTender = function () {
 
 $(document).ready(() => {
     autoFlashHeight();
+    $('#modify-budget').on('show.bs.modal', () => {
+        $('#modify-budget-name').val(curBudget.name);
+    });
     $('#del-budget').on('show.bs.modal', () => {
         $('#del-budget-name').text(curBudget.name);
     });
+    $('#sr-select-all').click(function () {
+        if (this.checked) {
+            $('[name=select-rela-check]').attr("checked", "checked");
+        } else {
+            $('[name=select-rela-check]').removeAttr('checked');
+        }
+    });
     $('#select-rela').on('show.bs.modal', () => {
         $('[name=select-rela-check]').removeAttr('checked');
         const rela = curBudget.rela_tender ? curBudget.rela_tender.split(',') : [];

+ 0 - 4
app/public/js/stage.js

@@ -1628,10 +1628,6 @@ $(document).ready(() => {
                 const posData = stagePos.ledgerPos[itemsPre + node.id] || [];
                 SpreadJsObj.loadSheetData(spSpread.getActiveSheet(), 'data', posData, true);
                 getNodeList(node.id);
-                // 如果是附件是当前节点,隐藏
-                // if ($('#dqjiedian').hasClass('active')) {
-                //     $('#showAttachment').hide();
-                // }
             } else {
                 spSpread.getActiveSheet().zh_setting.readOnly = true;
                 SpreadJsObj.loadSheetData(spSpread.getActiveSheet(), 'data', [], true);

+ 1 - 2
app/view/budget/list.ejs

@@ -18,11 +18,10 @@
                 </div>
                 <% } else { %>
                 <table class="table table-hover table-bordered">
-                    <tr class="text-center"><th>项目名称</th><th>创建人</th><th>创建时间</th><th>操作</th></tr>
+                    <tr class="text-center"><th>项目名称</th><th>创建时间</th><th>操作</th></tr>
                     <% for (const bl of budgetList) { %>
                     <tr bid="<%- bl.id %>" bname="<%- bl.name %>" rela-tender="<%- bl.rela_tender %>" >
                         <td><a href="/budget/<%- bl.id %>/compare"><%- bl.name %></a></td>
-                        <td><%- bl.username %></td>
                         <td><%- ctx.moment(bl.in_time).format('YYYY-MM-DD HH:mm:ss') %></td>
                         <td>
                             <% if (ctx.session.sessionUser.is_admin || bl.canEdit) { %>

+ 4 - 92
app/view/budget/list_modal.ejs

@@ -89,100 +89,12 @@
                 </table>
             </div>
             <div class="modal-footer">
-                <button type="button" class="btn btn-sm btn-secondary" data-dismiss="modal">取消</button>
-                <button type="button" class="btn btn-sm btn-primary" onclick="relaTender();">确定</button>
-            </div>
-        </div>
-    </div>
-</div>
-
-<div class="modal fade" id="add-xm" data-backdrop="static">
-    <div class="modal-dialog" role="document">
-        <div class="modal-content">
-            <div class="modal-header">
-                <h5 class="modal-title">编辑标段</h5>
-            </div>
-            <div class="modal-body">
-                <div class="form-group">
-                    <label>标段名称<b class="text-danger">*</b></label>
-                    <input class="form-control"  placeholder="输入标段名称" type="text">
+                <div class="form-check form-check-inline">
+                    <input class="form-check-input" type="checkbox" id="sr-select-all">
+                    <label class="form-check-label" for="sr-select-all">全选</label>
                 </div>
-                <div class="form-group">
-                    <label>项目名称<b class="text-danger">*</b></label>
-                    <input class="form-control form-control-sm"  placeholder="输入项目名称" type="text">
-                </div>
-                <div class="form-group">
-                    <label>项目名称<b class="text-danger">*</b></label>
-                    <input class="form-control form-control-sm is-invalid"  placeholder="输入标段名称" type="text" value="名称超过100个字">
-                    <div class="invalid-feedback">
-                        名称超过100个字,请缩减名称。
-                    </div>
-                </div>
-
-            </div>
-            <div class="modal-footer">
-                <button type="button" class="btn btn-secondary" data-dismiss="modal">取消</button>
-                <button type="button" class="btn btn-primary">确定修改</button>
-            </div>
-        </div>
-    </div>
-</div>
-<!--删除标段-->
-<div class="modal fade" id="del-bd" data-backdrop="static">
-    <div class="modal-dialog" role="document">
-        <div class="modal-content">
-            <div class="modal-header">
-                <h5 class="modal-title">删除项目</h5>
-            </div>
-            <div class="modal-body">
-                <h6>确认删除「XXX高速公路」?</h6>
-                <h6>删除后,数据无法恢复,请谨慎操作。</h6>
-            </div>
-            <div class="modal-footer">
                 <button type="button" class="btn btn-sm btn-secondary" data-dismiss="modal">取消</button>
-                <button type="button" class="btn btn-sm btn-danger">确定删除</button>
-            </div>
-        </div>
-    </div>
-</div>
-
-<!--弹出关联标段-->
-<div class="modal fade" id="add-selectbd" data-backdrop="static">
-    <div class="modal-dialog" role="document">
-        <div class="modal-content">
-            <div class="modal-header">
-                <h5 class="modal-title">选择决算标段</h5>
-            </div>
-            <div class="modal-body">
-                <h5>可选标段</h5>
-                <table class="table table-sm table-bordered">
-                    <thead>
-                    <tr class="text-center">
-                        <th>选择</th>
-                        <th>标段名称</th>
-                        <th>期数</th>
-                        <th>状态</th>
-                    </tr>
-                    </thead>
-                    <tr>
-                        <td class="text-center"><input type="checkbox"></td><td>第一合同段</td><td>第15期</td><td>审批完成</td>
-                    </tr>
-                    <tr>
-                        <td class="text-center"><input type="checkbox"></td><td>第二合同段</td><td>第16期</td><td>审批完成</td>
-                    </tr>
-                    <tr>
-                        <td class="text-center"><input type="checkbox"></td><td>第三合同段</td><td>第15期</td><td>审批完成</td>
-                    </tr>
-                    <tr>
-                        <td class="text-center"><input type="checkbox"></td><td>第四合同段</td><td>第14期</td><td>审批完成</td>
-                    </tr>
-                </table>
-            </div>
-            <div class="modal-footer d-flex justify-content-between">
-                <div>
-                    <button type="button" class="btn btn-sm btn-secondary" data-dismiss="modal">取消</button>
-                    <button type="button" class="btn btn-sm btn-primary" >确定</button>
-                </div>
+                <button type="button" class="btn btn-sm btn-primary" onclick="relaTender();">确定</button>
             </div>
         </div>
     </div>