Browse Source

Merge branch 'dev' of http://192.168.1.41:3000/maixinrong/Calculation into dev

TonyKang 4 years ago
parent
commit
98ff15442f

File diff suppressed because it is too large
+ 1 - 0
app/public/js/CalcEval.js


+ 2 - 1
app/public/js/material_list.js

@@ -849,7 +849,8 @@ $(document).ready(() => {
                         const [valid, msg] = this._checkExprValid(expr);
                         if (!valid) return [valid, msg];
                         data.expr = expr;
-                        data.quantity = eval(expr);
+                        const ce = new CalcEval();
+                        data.quantity = ce.eval(expr);
                     }
                 } else {
                     data.quantity = 0;

+ 10 - 5
app/service/report_memory.js

@@ -1092,16 +1092,21 @@ module.exports = app => {
             if (!this.changeInfo) await this.getChangeInfo(tid, sid);
             this.changeInfoBills = [];
             for (const c of this.changeInfo) {
-                const cb = await this.ctx.service.stageChange.getUsedData(tid, c.cid);
+                const cb = await this.ctx.service.changeAuditList.getAllDataByCondition({ where: { cid: c.cid } });
+                const cbu = await this.ctx.service.stageChange.getUsedData(tid, c.cid);
                 const curUsedBills = await this.ctx.service.stageChange.getStageUsedData(sid, c.cid);
                 for (const b of cb) {
                     b.qty = this.ctx.helper._.toNumber(b.samount);
-                    b.valid_qty = this.ctx.helper.sub(b.qty, b.used_qty);
                     b.tp = this.ctx.helper.round(this.ctx.helper.mul(b.qty, b.unit_price), this.ctx.tender.info.decimal.tp);
-                    const pos = this.ctx.helper._.filter(curUsedBills, { cbid: b.id });
+
+                    const u = cbu.find(x => { return x.id === b.id; });
+                    b.used_qty = u ? u.used_qty : 0;
+
+                    b.valid_qty = this.ctx.helper.sub(b.qty, b.used_qty);
+                    const cur = this.ctx.helper._.filter(curUsedBills, { cbid: b.id });
                     b.cur_qty = 0;
-                    for (const p of pos) {
-                        b.cur_qty = this.ctx.helper.add(b.cur_qty, p.qty);
+                    for (const cc of cur) {
+                        b.cur_qty = this.ctx.helper.add(b.cur_qty, cc.qty);
                     }
                     b.cur_used = !!b.cur_qty;
                     this.changeInfoBills.push(b);

+ 2 - 1
app/view/material/audit_modal.ejs

@@ -215,11 +215,12 @@
                                             <div class="card-body p-3">
                                                 <div class="card-text">
                                                     <p class="mb-1"><span class="h5"><%- auditor.name %></span>
+                                                        <% console.log(auditor.status) %>
                                                         <span
                                                             class="pull-right
                                                                             <%- auditConst.statusClass[auditor.status] %>"><%- auditor.status !== auditConst.status.uncheck ? auditConst.statusString[auditor.status] : ''%>
                                                             <%- auditor.status === auditConst.status.checkNo ? ctx.material.user.name : '' %>
-                                                            <%- auditor.status === auditConst.status.checkNoPre ? ctx.material.auditors2.find(item => item.order === auditor.sort-1).name : '' %>
+                                                            <%- auditor.status === auditConst.status.checkNoPre ? (ctx.material.auditors2.find(item => item.order === auditor.sort-1) ? ctx.material.auditors2.find(item => item.order === auditor.sort-1).name : '') : '' %>
                                                         </span>
                                                     </p>
                                                     <p class="text-muted mb-0"><%- auditor.role %></p>

+ 3 - 3
app/view/tender/tender_sub_menu.ejs

@@ -15,7 +15,7 @@
             </ul>
         </div>
         <div class="nav-box">
-            <h3><i class="fa fa-list-alt fa-fw"></i> 0号台账<span class="float-right"><i class="fa fa-angle-down text-muted"></i></span></h3>
+            <h3><i class="fa fa-list-alt fa-fw"></i> 0号台账</h3>
             <ul class="nav-list list-unstyled sub-list">
                 <li <% if (ctx.url === '/tender/' + ctx.tender.id + '/ledger') { %>class="active"<% } %>><a href="/tender/<%- ctx.tender.id %>/ledger"><span>台账分解</span></a></li>
                 <% if (ctx.tender.data.ledger_status !== ctx.tender.auditLedgerConst.status.uncheck) { %>
@@ -27,7 +27,7 @@
             </ul>
         </div>
         <div class="nav-box">
-            <h3><i class="fa fa-calendar-check-o fa-fw"></i> 计量支付<span class="float-right"><i class="fa fa-angle-down text-muted"></i></span></h3>
+            <h3><i class="fa fa-calendar-check-o fa-fw"></i> 计量支付</h3>
             <ul class="nav-list list-unstyled sub-list">
                 <li <% if (ctx.url === '/tender/' + ctx.tender.id + '/measure/stage') { %>class="active"<% } %>><a href="/tender/<%- ctx.tender.id %>/measure/stage"><span>各期计量</span></a></li>
                 <li <% if (ctx.url === '/tender/' + ctx.tender.id + '/measure/compare') { %>class="active"<% } %>><a href="/tender/<%- ctx.tender.id %>/measure/compare"><span>多期比较</span></a></li>
@@ -45,7 +45,7 @@
         </div>
         <% if (ctx.session.sessionProject.page_show !== null && parseInt(ctx.session.sessionProject.page_show.xxjd) === 1 && (ctx.tender.schedule_permission !== 0 || ctx.tender.isTourist)) { %>
         <div class="nav-box">
-            <h3><i class="fa fa-bar-chart fa-fw"></i> 投资进度<span class="float-right"><i class="fa fa-angle-down text-muted"></i></span></h3>
+            <h3><i class="fa fa-bar-chart fa-fw"></i> 投资进度</h3>
             <ul class="nav-list list-unstyled sub-list">
                 <li <% if (ctx.url === '/tender/' + ctx.tender.id + '/schedule' || ctx.url === '/tender/' + ctx.tender.id + '/schedule/ledger') { %>class="active"<% } %>><a href="/tender/<%- ctx.tender.id %>/schedule"><span>进度概况</span></a></li>
                 <li <% if (ctx.url === '/tender/' + ctx.tender.id + '/schedule/plan') { %>class="active"<% } %>><a href="/tender/<%- ctx.tender.id %>/schedule/plan"><span>计划进度</span></a></li>

+ 3 - 3
app/view/tender/tender_sub_mini_menu.ejs

@@ -17,7 +17,7 @@
             </ul>
         </div>
         <div class="nav-box">
-            <h3><i class="fa fa-list-alt fa-fw"></i> 0号台账<span class="float-right"><i class="fa fa-angle-down text-muted"></i></span></h3>
+            <h3><i class="fa fa-list-alt fa-fw"></i> 0号台账</h3>
             <ul class="nav-list list-unstyled sub-list">
                 <li <% if (ctx.url === '/tender/' + ctx.tender.id + '/ledger') { %>class="active"<% } %>><a href="/tender/<%- ctx.tender.id %>/ledger"><span>台账分解</span></a></li>
                 <% if (ctx.tender.data.ledger_status !== ctx.tender.auditLedgerConst.status.uncheck) { %>
@@ -29,7 +29,7 @@
             </ul>
         </div>
         <div class="nav-box">
-            <h3><i class="fa fa-calendar-check-o fa-fw"></i> 计量支付<span class="float-right"><i class="fa fa-angle-down text-muted"></i></span></h3>
+            <h3><i class="fa fa-calendar-check-o fa-fw"></i> 计量支付</h3>
             <ul class="nav-list list-unstyled sub-list">
                 <li <% if (ctx.url === '/tender/' + ctx.tender.id + '/measure/stage') { %>class="active"<% } %>><a href="/tender/<%- ctx.tender.id %>/measure/stage"><span>各期计量</span></a></li>
                 <li <% if (ctx.url === '/tender/' + ctx.tender.id + '/measure/compare') { %>class="active"<% } %>><a href="/tender/<%- ctx.tender.id %>/measure/compare"><span>多期比较</span></a></li>
@@ -47,7 +47,7 @@
         </div>
         <% if (ctx.session.sessionProject.page_show !== null && parseInt(ctx.session.sessionProject.page_show.xxjd) === 1 && (ctx.tender.schedule_permission !== 0 || ctx.tender.isTourist)) { %>
             <div class="nav-box">
-                <h3><i class="fa fa-bar-chart fa-fw"></i> 投资进度<span class="float-right"><i class="fa fa-angle-down text-muted"></i></span></h3>
+                <h3><i class="fa fa-bar-chart fa-fw"></i> 投资进度</h3>
                 <ul class="nav-list list-unstyled sub-list">
                     <li <% if (ctx.url === '/tender/' + ctx.tender.id + '/schedule' || ctx.url === '/tender/' + ctx.tender.id + '/schedule/ledger') { %>class="active"<% } %>><a href="/tender/<%- ctx.tender.id %>/schedule"><span>进度概况</span></a></li>
                     <li <% if (ctx.url === '/tender/' + ctx.tender.id + '/schedule/plan') { %>class="active"<% } %>><a href="/tender/<%- ctx.tender.id %>/schedule/plan"><span>计划进度</span></a></li>

+ 1 - 0
config/web.js

@@ -560,6 +560,7 @@ const JsFiles = {
                     '/public/js/zh_calc.js',
                     '/public/js/path_tree.js',
                     '/public/js/gcl_gather.js',
+                    '/public/js/CalcEval.js', // 计算表达式使用
                     '/public/js/material_list.js',
                     '/public/js/shares/cs_tools.js',
                     '/public/js/material_audit.js',

+ 3 - 0
sql/update.sql

@@ -9,3 +9,6 @@ COMMENT = '归档文档的需要加密签名的坐标及其他key信息(如签
 
 ALTER TABLE `zh_material_list` ADD `expr` VARCHAR(500) NULL DEFAULT '' COMMENT '公式' AFTER `quantity`;
 
+ALTER TABLE `zh_s2b_proj`
+ADD COLUMN `gxby_ratio_valid`  tinyint(1) NULL DEFAULT 0 COMMENT '工序报验,ratio是否生效' AFTER `gxby_status`,
+ADD COLUMN `dagl_ratio_valid`  tinyint(1) NOT NULL DEFAULT 1 COMMENT '工序报验,ratio是否生效' AFTER `dagl_status`;