Sfoglia il codice sorgente

Merge branch 'master' of http://smartcost.f3322.net:3000/SmartCost/ConstructionCost

chenshilong 7 anni fa
parent
commit
25b720bd9f

+ 2 - 1
lib/spreadjs/sheets/css/gc.spread.sheets.sc.css

@@ -153,7 +153,8 @@
 /*选择框*/
 .gc-selection {
     background-color: rgba(20, 20, 20, 0.2);
-    border-color: #ababab;
+    /*border-color: #ababab;*/
+    border-color: #675f5e;
     color: rgba(240,240,240,0.7);
 }
 .gc-drag-indicator {

+ 1 - 1
modules/complementary_glj_lib/models/gljModel.js

@@ -15,7 +15,7 @@ class GljDao {
             if(data.length) {
                 callback(0,data);
             }
-            else  if(err) callback("获取工料机类型错误!",false);
+            else  if(err) callback("获取人材机类型错误!",false);
         })
     }
 

+ 4 - 83
web/building_saas/complementary_glj_lib/html/tools-gongliaoji.html

@@ -5,7 +5,7 @@
     <meta charset="utf-8">
     <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
     <meta http-equiv="x-ua-compatible" content="ie=edge">
-    <title>工料机库编辑-Smartcost</title>
+    <title>人材机库编辑-Smartcost</title>
     <!--inject:css-->
     <link rel="stylesheet" href="/lib/bootstrap/css/bootstrap.min.css" type="text/css">
     <link rel="stylesheet" href="/web/building_saas/css/main.css" type="text/css">
@@ -22,46 +22,8 @@
 <body>
     <div class="header">
         <%include ../../../common/html/header.html %>
-    <!--    <nav class="navbar navbar-expand-lg justify-content-between navbar-light p-0">
-            <ul class="nav navbar-nav px-1">
-                <li class="nav-item">
-                    <a class="nav-link" href="#" aria-expanded="false"><i class="fa fa-sliders"></i> 选项</a>
-                </li>
-                <li class="nav-item dropdown">
-                    <a class="nav-link dropdown-toggle" href="#" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"><i class="fa fa-wrench"></i> 工具</a>
-                    <div class="dropdown-menu">
-                        <a class="dropdown-item" href="#">定额库编辑器</a>
-                        <a class="dropdown-item" href="/complementaryGlj">工料机库编辑器</a>
-                    </div>
-                </li>
-                <li class="nav-item dropdown">
-                    <a class="nav-link dropdown-toggle" href="#" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"><i class="fa fa-question-circle-o"></i> 帮助</a>
-                    <div class="dropdown-menu">
-                        <a class="dropdown-item" href="#">帮助</a>
-                        <a class="dropdown-item" href="#">升级说明</a>
-                        <a class="dropdown-item" href="#">重庆市2008定额说明</a>
-                        <a class="dropdown-item" href="#">纵横官网</a>
-                        <a class="dropdown-item" href="#">动画教程</a>
-                        <a class="dropdown-item" href="#">联系客服</a>
-                        <a class="dropdown-item" href="#">关于</a>
-                    </div>
-                </li>
-                <li class="nav-item">
-                    <a href="javacript:void(0);" data-toggle="modal" data-target="#history" class="nav-link"><i class="fa fa-history"></i> 历史记录</a>
-                </li>
-            </ul>
-            <form class="form-inline">
-                <input class="form-control form-control-sm mr-1" type="text" placeholder="告诉我你想做什么">
-            </form>
-        </nav>-->
     </div>
     <div class="main">
-     <!--   <div class="main-nav">
-            <ul class="nav flex-column">
-              <li><a href="#">定额库编辑器</a></li>
-              <li><a href="/complementaryGlj" class="active">工料机库编辑器</a></li>
-            </ul>
-        </div>-->
         <div class="content" style="margin-left: 0px;">
             <div class="container-fluid">
                 <div class="row">
@@ -83,47 +45,6 @@
       </div>
       <!--弹出组成物-->
     <button id="componentBtn" class="btn btn-primary btn-lg" data-toggle="modal" data-target="#component" style="display: none"></button>
-      <!--<div class="modal fade" id="component" data-backdrop="static">
-          <div class="modal-dialog modal-lg" role="document" id="modalCon">
-              <div class="modal-content" >
-                  <div class="modal-header">
-                    <h5 class="modal-title">选择组成物</h5>
-                      <button type="button" class="close" data-dismiss="modal" aria-label="Close">
-                        <span aria-hidden="true">&times;</span>
-                      </button>
-                  </div>
-                  <div class="modal-body">
-                    <div class="row">
-                      <div class="col-4">
-                        <div  class="modal-auto-height" id="componentTreeDiv" style="overflow: hidden">
-                            &lt;!&ndash;<div class="print-list">&ndash;&gt;
-                                <div style="width: 100%; height: 100%; overflow: auto">
-                                    <ul id="componentTree" class="ztree"></ul>
-                                </div>
-                            &lt;!&ndash;</div>&ndash;&gt;
-                        </div>
-                      </div>
-                      <div class="col-8">
-                          <div class="row">
-                              <div class="col-12" id="gljRadios">
-                                  <input type="radio" class="glj-radio" name="glj" value="allGljs">所有工料机&nbsp;&nbsp;
-                                  <input type="radio" class="glj-radio" name="glj" value="stdGljs">标准工料机&nbsp;&nbsp;
-                                  <input type="radio" class="glj-radio" name="glj" value="complementaryGljs">补充工料机&nbsp;&nbsp;
-                                 &lt;!&ndash; <div class="form-group"><input id="searchGlj" type="text" class="form-control-sm" placeholder="查询工料机"></div>&ndash;&gt;
-                              </div>
-                              <div class="modal-auto-height col-12" style="overflow: hidden" id="componentSheet">
-                              </div>
-                          </div>
-                      </div>
-                    </div>
-                  </div>
-                  <div class="modal-footer">
-                      <button type="button" id="componentsCacnel" class="btn btn-secondary" data-dismiss="modal">取消</button>
-                      <a href="javascript:void(0);" id="componentsConf" class="btn btn-primary">确定</a>
-                  </div>
-              </div>
-          </div>
-      </div>-->
     <div class="modal fade" id="component" data-backdrop="static">
         <div class="modal-dialog modal-lg" role="document" id="modalCon">
             <div class="modal-content" >
@@ -148,9 +69,9 @@
                                 <div class="col-12" id="gljRadios">
                                     <div class="row">
                                         <div class="col-7" style="margin-top: 5px;">
-                                            <input type="radio" class="glj-radio" name="glj" value="allGljs">所有工料机&nbsp;&nbsp;
-                                            <input type="radio" class="glj-radio" name="glj" value="stdGljs">标准工料机&nbsp;&nbsp;
-                                            <input type="radio" class="glj-radio" name="glj" value="complementaryGljs">补充工料机&nbsp;&nbsp;
+                                            <input type="radio" class="glj-radio" name="glj" value="allGljs">所有人材机&nbsp;&nbsp;
+                                            <input type="radio" class="glj-radio" name="glj" value="stdGljs">标准人材机&nbsp;&nbsp;
+                                            <input type="radio" class="glj-radio" name="glj" value="complementaryGljs">补充人材机&nbsp;&nbsp;
                                         </div>
                                         <div class="input-group col-5" style="margin-bottom: 5px;">
                                             <input type="text" class="form-control form-control-sm" placeholder="请输入筛选编码或名称" value="" id="gljSearchKeyword">

+ 2 - 2
web/building_saas/complementary_ration_lib/html/anzhuang.html

@@ -36,7 +36,7 @@
                       <a class="nav-link px-3" id="dinge" href="dinge.html">定额</a>
                   </li>
                   <li class="nav-item">
-                      <a class="nav-link px-3" id="gongliao" href="gongliao.html">工料机</a>
+                      <a class="nav-link px-3" id="gongliao" href="gongliao.html">人材机</a>
                   </li>
                   <li class="nav-item">
                       <a class="nav-link px-3" id="fuzhu" href="fuzhu.html">附注条件</a>
@@ -72,7 +72,7 @@
                           </div>
                       </div>
                     </div>
-                    <div class="bottom-content" id="instFeeRuleSpread">
+                    <div class="bottom-content" id="instFeeRuleSpread" style="height: 370px;">
                         <!--<table class="table table-sm table-bordered">
                           <thead><tr><th></th><th>编码</th><th>费用规则</th><th>基数</th><th>费率(%)</th><th>其中人工(%)</th><th>其中材料(%)</th><th>其中机械(%)</th></tr></thead>
                           <tbody>

+ 4 - 4
web/building_saas/complementary_ration_lib/html/dinge.html

@@ -35,10 +35,10 @@
                 <a class="nav-link active px-3" id ="dinge" >定额</a>
             </li>
             <li class="nav-item">
-                <a class="nav-link px-3" id="gongliao" href="#">工料机</a>
+                <a class="nav-link px-3" id="gongliao" href="#">人材机</a>
             </li>
             <li class="nav-item">
-                <a class="nav-link px-3" id="fuzhu" href="#">附注条件</a>
+                <a class="nav-link px-3" id="fuzhu" href="#">子目换算</a>
             </li>
             <li class="nav-item">
                 <a class="nav-link px-3" id="anzhuang" href="#">安装增加费</a>
@@ -92,13 +92,13 @@
                                 <!-- 标签 -->
                                 <ul class="nav nav-tabs" role="tablist">
                                     <li class="nav-item">
-                                        <a class="nav-link active" id="linkGLJ" data-toggle="tab" href="#rDetail" role="tab">工料机</a>
+                                        <a class="nav-link active" id="linkGLJ" data-toggle="tab" href="#rDetail" role="tab">人材机</a>
                                     </li>
                                     <li class="nav-item">
                                         <a class="nav-link" id="linkFZDE" data-toggle="tab" href="#rDetail" role="tab">辅助定额调整</a>
                                     </li>
                                     <li class="nav-item">
-                                        <a class="nav-link" id="linkFZTJ" data-toggle="tab" href="#rDetail" role="tab">附注条件调整</a>
+                                        <a class="nav-link" id="linkFZTJ" data-toggle="tab" href="#rDetail" role="tab">子目换算调整</a>
                                     </li>
                                     <li class="nav-item">
                                         <a class="nav-link px-3" id="linkAZZJ" data-toggle="tab" href="#rDetail" role="tab">安装增加费</a>

+ 1 - 1
web/building_saas/complementary_ration_lib/html/fuzhu.html

@@ -35,7 +35,7 @@
                       <a class="nav-link px-3" id="drirect-dinge" href="javascript:void(0);">定额</a>
                   </li>
                   <li class="nav-item">
-                      <a class="nav-link px-3" id="gongliao" href="javascript:void(0);">工料机</a>
+                      <a class="nav-link px-3" id="gongliao" href="javascript:void(0);">人材机</a>
                   </li>
                   <li class="nav-item">
                       <a class="nav-link active px-3">附注条件</a>

+ 3 - 3
web/building_saas/complementary_ration_lib/html/gongliao.html

@@ -38,7 +38,7 @@
                       <a class="nav-link px-3" id="drirect-dinge" href="/complementaryRation/ration">定额</a>
                   </li>
                   <li class="nav-item">
-                      <a class="nav-link active px-3">工料机</a>
+                      <a class="nav-link active px-3">人材机</a>
                   </li>
                   <li class="nav-item">
                       <a class="nav-link px-3" id="fuzhu" href="javascript:void(0);">附注条件</a>
@@ -69,7 +69,7 @@
         <div class="modal-dialog" role="document">
             <div class="modal-content">
                 <div class="modal-header">
-                  <h5 class="modal-title">添加工料机</h5>
+                  <h5 class="modal-title">添加人材机</h5>
                   <button type="button" class="close" data-dismiss="modal" aria-label="Close">
                     <span aria-hidden="true">×</span>
                   </button>
@@ -115,7 +115,7 @@
         <div class="modal-dialog" role="document">
             <div class="modal-content">
                 <div class="modal-header">
-                  <h5 class="modal-title">编辑工料机</h5>
+                  <h5 class="modal-title">编辑人材机</h5>
                   <button type="button" class="close" data-dismiss="modal" aria-label="Close">
                     <span aria-hidden="true">×</span>
                   </button>

+ 1 - 1
web/building_saas/complementary_ration_lib/js/coe.js

@@ -151,7 +151,7 @@ let gljAdjOprObj = {
     setting: {
         header: [
             {headerName:"调整类型", headerWidth:100, dataCode:"coeType", dataType: "String", hAlign: "center", vAlign: "center", readOnly: false},
-            {headerName:"工料机编码", headerWidth:100, dataCode:"gljCode", dataType: "String", formatter: '@', hAlign: "center", vAlign: "center", readOnly: false},
+            {headerName:"人材机编码", headerWidth:100, dataCode:"gljCode", dataType: "String", formatter: '@', hAlign: "center", vAlign: "center", readOnly: false},
             {headerName:"名称", headerWidth:100, dataCode:"gljName", dataType: "String", hAlign: "center", vAlign: "center", readOnly: true},
             {headerName:"操作符", headerWidth:60, dataCode:"operator", dataType: "String", hAlign: "center", vAlign: "center", readOnly: false},
             {headerName:"数量", headerWidth:80, dataCode:"amount", dataType: "String", hAlign: "center", vAlign: "center" , readOnly: false},

+ 2 - 0
web/building_saas/complementary_ration_lib/js/installation.js

@@ -257,6 +257,8 @@ let feeRuleObj = {
     buildSheet: function () {
         if(!this.isDef(this.workBook)){
             this.workBook = sheetCommonObj.buildSheet($('#instFeeRuleSpread')[0], this.setting, 10);
+            console.log(`this.workBook`);
+            console.log(this.workBook);
             this.sheet = this.workBook.getActiveSheet();
             this.setOptions(this.workBook, this.setting.options);
             this.bindEvents(this.sheet);

+ 4 - 4
web/building_saas/complementary_ration_lib/js/repository_glj.js

@@ -248,15 +248,15 @@ repositoryGljObj = {
                 let focusToCol;
                 function getFocusToCol (me){
                     if(!me.addGljObj[me.setting.header[0].dataCode]){
-                        $('#alertGljTxt').text('编号不能为空,是否取消增加工料机?');
+                        $('#alertGljTxt').text('编号不能为空,是否取消增加人材机?');
                         return 0;
                     }
                     else if(!me.addGljObj[me.setting.header[1].dataCode]){
-                        $('#alertGljTxt').text('名称不能为空,是否取消增加工料机?');
+                        $('#alertGljTxt').text('名称不能为空,是否取消增加人材机?');
                         return 1;
                     }
                     else if(!me.addGljObj[me.setting.header[5].dataCode]){
-                        $('#alertGljTxt').text('类型不能为空,是否取消增加工料机?');
+                        $('#alertGljTxt').text('类型不能为空,是否取消增加人材机?');
                         return 5;
                     }
                     else {
@@ -455,7 +455,7 @@ repositoryGljObj = {
                 if(refGljCodes.length > 0){
                     let alertText;
                     if(refGljCodes.length > 3){
-                        alertText = "编号: " + refGljCodes[0]+" 、" + refGljCodes[1] + " 、" + refGljCodes[2] + "...等工料机已有定额引用,删除失败!";
+                        alertText = "编号: " + refGljCodes[0]+" 、" + refGljCodes[1] + " 、" + refGljCodes[2] + "...等人材机已有定额引用,删除失败!";
                     }
                     else {
                         let alertCode = " ";

+ 5 - 0
web/building_saas/css/custom.css

@@ -32,4 +32,9 @@ legend.legend{
 
 .li_sub {
     margin-left: 14px;
+}
+
+.filterType{
+    padding-left: .75rem;
+    padding-right:0px;
 }

+ 5 - 5
web/building_saas/glj/html/project_glj.html

@@ -12,16 +12,16 @@
 </div>
 <div class="container-fluid">
     <div class="row">
-        <div class="gl-side col-lg-1" id='filterType'>
-            <ul class="list-unstyled ml-3 mt-2 mb-2">
-                <li><a href="javascript:void(0)" id="ALL">所有工料机</a></li>
+        <div class="gl-side col-lg-1 filterType" id='filterType'>
+            <ul class="list-unstyled mt-2 mb-2">
+                <li><a href="javascript:void(0)" id="ALL">所有人材机</a></li>
                 <li class="mb-2 li_sub"><a href="javascript:void(0)" id="LABOUR">人工</a></li>
                 <li class="mb-2 li_sub"><a href="javascript:void(0)" id="GENERAL_MATERIAL">材料</a></li>
                 <li class="mb-2 li_sub"><a href="javascript:void(0)" id="GENERAL_MACHINE">机械</a></li>
                 <li class="mb-2 li_sub"><a href="javascript:void(0)" id="MAIN_MATERIAL">主材</a></li>
                 <li class="mb-2 li_sub"><a href="javascript:void(0)" id="EQUIPMENT">设备</a></li>
-                <li class="mb-2"><a href="javascript:void(0)" id="FBFX">分部分项工料机</a></li>
-                <li class="mb-2"><a href="javascript:void(0)" id="TECH">措施分项工料机</a></li>
+                <li class="mb-2"><a href="javascript:void(0)" id="FBFX">分部分项人材机</a></li>
+                <li class="mb-2"><a href="javascript:void(0)" id="TECH">措施分项人材机</a></li>
                 <li class="mb-2"><a href="javascript:void(0)" id="JGCL">甲供材料</a></li>
                 <li class="mb-2"><a href="javascript:void(0)" id="ZGCL">暂估材料</a></li>
                 <li class="mb-2"><a href="javascript:void(0)" id="SCHZ">三材汇总</a></li>

+ 1 - 1
web/building_saas/glj/js/project_glj_spread.js

@@ -154,7 +154,7 @@ ProjectGLJSpread.prototype.init = function () {
         // 如果类型为混凝土、砂浆、配合比、机械,则提示
         if (field === 'unit_price.market_price' && canNotChangeTypeId.indexOf(type) >= 0) {
             if(ratioData&&ratioData.length>0){
-                alert('当前工料机的市场单价由组成物计算得出,不可直接修改');
+                alert('当前人材机的市场单价由组成物计算得出,不可直接修改');
             }
         }
     });

+ 11 - 11
web/building_saas/main/html/main.html

@@ -44,7 +44,7 @@
         <div class="main-nav">
             <ul class="nav nav-tabs flex-column" role="tablist">
                 <li class="nav-item"><a class="active" data-toggle="tab" href="#zaojiashu" id="tab_zaojiashu" role="tab">造价书</a></li>
-                <li class="nav-item"><a data-toggle="tab" href="#project_glj" id="tab_project_glj" data-name="tab_project_glj" role="tab">工料机</a></li>
+                <li class="nav-item"><a data-toggle="tab" href="#project_glj" id="tab_project_glj" data-name="tab_project_glj" role="tab">人材机</a></li>
                 <li class="nav-item"><a data-toggle="tab" href="#fee_rates" id="tab_fee_rate" role="tab" >费率</a></li>
                 <li class="nav-item"><a data-toggle="tab" href="#calc_program_manage" id="tab_calc_program_manage" role="tab">计算程序</a></li>
                 <li class="nav-item"><a data-toggle="tab" href="#reports" role="tab" id="tab_report" onclick="rptTplObj.iniPage();">报表</a></li>
@@ -56,9 +56,9 @@
               <!--造价书-->
               <div class="toolsbar px-1 d-flex justify-content-between">
                   <div class="tools-btn btn-group align-top">
-                    <a href="javascript:void(0)" class="btn btn-sm" title="复制" ><i class="fa fa-files-o" aria-hidden="true"></i></a>
+                    <!--<a href="javascript:void(0)" class="btn btn-sm" title="复制" ><i class="fa fa-files-o" aria-hidden="true"></i></a>
                     <a href="javascript:void(0)" class="btn btn-sm" title="剪切"><i class="fa fa-scissors" aria-hidden="true"></i></a>
-                    <a href="javascript:void(0)" class="btn btn-sm" title="粘贴"><i class="fa fa-clipboard" aria-hidden="true"></i></a>
+                    <a href="javascript:void(0)" class="btn btn-sm" title="粘贴"><i class="fa fa-clipboard" aria-hidden="true"></i></a>-->
                  <!--   <a href="javascript:void(0)" class="btn btn-sm" id="insert" title="插入"><i class="fa fa-sign-in" aria-hidden="true"></i></a>-->
                     <a href="javascript:void(0)" class="btn btn-sm" id="delete" title="删除"><i class="fa fa-remove" aria-hidden="true"></i></a>
                     <a href="javascript:void(0)" class="btn btn-sm" id="upLevel" title="升级"><i class="fa fa-arrow-left" aria-hidden="true"></i></a>
@@ -109,10 +109,10 @@
                           <div class="bottom-content">
                               <ul class="nav nav-tabs" role="tablist">
                                   <li class="nav-item">
-                                      <a class="nav-link active" id="linkGLJ" data-toggle="tab" href="#subSpread" role="tab">工料机</a>
+                                      <a class="nav-link active" id="linkGLJ" data-toggle="tab" href="#subSpread" role="tab">人材机</a>
                                   </li>
                                   <li class="nav-item">
-                                      <a class="nav-link" id="linkFZTJ" data-toggle="tab" href="#subSpread" role="tab">附注条件</a>
+                                      <a class="nav-link" id="linkFZTJ" data-toggle="tab" href="#subSpread" role="tab">子目换算</a>
                                   </li>
                                   <li class="nav-item">
                                       <a class="nav-link" id="linkFZDE" data-toggle="tab" href="#subSpread" role="tab">辅助定额</a>
@@ -423,7 +423,7 @@
                                             <div class="form-check">
                                                 <label class="form-check-label">
                                                     <input class="form-check-input" type="checkbox" id="calc_add">
-                                                    新增工料机计取价差
+                                                    新增人材机计取价差
                                                 </label>
                                             </div>
                                             <div class="form-check">
@@ -480,7 +480,7 @@
                                                     </div>
                                                 </div>
                                             </div>
-                                            <h5 class="mt-3">工料机</h5>
+                                            <h5 class="mt-3">人材机</h5>
                                             <div class="row m-0">
                                                 <div class="col-sm-3">
                                                     <div class="input-group input-group-sm mb-2">
@@ -643,7 +643,7 @@
         <div class="modal-dialog modal-lg" role="document" id="modalCon">
             <div class="modal-content" style="width: 1020px; left:50%; transform: translate(-50%,0%);">
                 <div class="modal-header">
-                    <h5 class="modal-title">请选择工料机</h5>
+                    <h5 class="modal-title">请选择人材机</h5>
                     <button type="button" class="close" data-dismiss="modal" aria-label="Close">
                         <span aria-hidden="true">&times;</span>
                     </button>
@@ -664,9 +664,9 @@
                                 <div class="col-12" id="gljRadios">
                                     <div class="row">
                                         <div class="col-7" style="margin-top: 5px;">
-                                            <input type="radio" class="glj-radio" name="glj" value="allGljs" checked>所有工料机&nbsp;&nbsp;
-                                            <input type="radio" class="glj-radio" name="glj" value="stdGLJ">标准工料机&nbsp;&nbsp;
-                                            <input type="radio" class="glj-radio" name="glj" value="complementaryGLJs">补充工料机&nbsp;&nbsp;
+                                            <input type="radio" class="glj-radio" name="glj" value="allGljs" checked>所有人材机&nbsp;&nbsp;
+                                            <input type="radio" class="glj-radio" name="glj" value="stdGLJ">标准人材机&nbsp;&nbsp;
+                                            <input type="radio" class="glj-radio" name="glj" value="complementaryGLJs">补充人材机&nbsp;&nbsp;
                                         </div>
                                         <div class="input-group col-5" style="margin-bottom: 5px;">
                                             <input type="text" class="form-control form-control-sm" placeholder="请输入筛选编码或名称" value="" id="gljSearchKeyword">

+ 12 - 3
web/building_saas/main/js/controllers/block_controller.js

@@ -34,12 +34,21 @@ let BlockController = {
             if(MainTreeCol.readOnly.billsParent(selected)){
                 return true;
             }
+            if(this.haveCalcBase(selected)){//有使用基数计算,disable
+                return true;
+            }
         }
         if(blockData.firstNodeType != blockType.RATION && selected.sourceType == ModuleNames.ration){
             return true;
         }
         return false;
     },
+    haveCalcBase : function (node) {
+        if(node.data.calcBase ==null||node.data.calcBase ==undefined|| node.data.calcBase == ""){
+            return false;
+        }
+        return true;
+    },
     isDXFYorMainEq:function (node) {//焦点行是大项费用或定额下的主材设备
         if(node.sourceType == ModuleNames.bills && node.data.type == billType.DXFY){//焦点行是大项费用则无效;
             return true;
@@ -121,7 +130,7 @@ let BlockController = {
                 return "next";
             }
             if(isFXorBX(selected)||(selected.sourceType === Bills.getSourceType()&& selected.source.children.length == 0)){//焦点行是分项/叶子清单,且无基数计算,则粘贴到分项/叶子清单下
-                if(selected.data.calcBase ==null||selected.data.calcBase ==undefined|| selected.data.calcBase == ""){//无基数计算
+                if(!this.haveCalcBase(selected)){//无基数计算
                     return "sub";
                 }
             }
@@ -150,7 +159,7 @@ let BlockController = {
         }else {//焦点行不属于“分部分项工程”
             if(blockData.firstNodeType == blockType.BILL &&selected.sourceType == Bills.getSourceType()){//如果剪切板中是从“分部分项工程”以外复制的清单块
                 if(selected.children.length==0 || selected.children[0].sourceType == Bills.getSourceType()){//焦点行没有子项,或者子项是清单,判断是否有基数计算
-                    if(selected.data.calcBase && selected.data.calcBase!=""){//如果焦点行有基数计算,则子项灰显不可选。
+                    if(this.haveCalcBase(selected)){//如果焦点行有基数计算,则子项灰显不可选。
                         setRadioProp('sub_node',{checked:false,disabled:true});
                     }else{//如果焦点行没有基数计算,则子项可选。
                         setRadioProp('sub_node',{checked:false,disabled:false});
@@ -179,7 +188,7 @@ let BlockController = {
             return false;
        }
        function blockIsFXorBX(type) {
-           return type == blockType.FX||blockType.BX;
+           return type == blockType.FX||type == blockType.BX;
        }
 
     },

+ 1 - 1
web/building_saas/main/js/models/project_glj.js

@@ -38,7 +38,7 @@ ProjectGLJ.prototype.loadData = function (callback = null) {
         success: function (response) {
             self.isLoading = false;
             if (response.err === 1) {
-                let msg = response.msg !== undefined && response.msg !== '' ? response.msg : '读取工料机数据失败!';
+                let msg = response.msg !== undefined && response.msg !== '' ? response.msg : '读取人材机数据失败!';
                 alert(msg);
                 return false;
             }

+ 2 - 2
web/building_saas/main/js/models/ration.js

@@ -400,7 +400,7 @@ var Ration = {
                 if(engineering==engineeringType.BUILD_IN) {//如果是安装工程,要看需不需要生成安装增加费
                     needInstall = project.Bills.isFBFX(r.node);
                 }
-                r.value = r.value.replace(/[\s\r\n]/g, "");//去掉空格回车换行等字符
+                r.value===null||r.value===undefined?"":r.value = r.value.replace(/[\s\r\n]/g, "");//去掉空格回车换行等字符
                 nodeInfo.push({ID:r.node.data.ID,billsItemID:r.node.data.billsItemID,newCode:r.value,needInstall:needInstall});
                 refershNodes.push(r.node);
             }
@@ -432,7 +432,7 @@ var Ration = {
                     $.bootstrapLoading.end();
                 });
 
-                if(data.length<recodes.length){//说明有部分定额编号没找到记录
+                if(data.length<recodes.length&&recodes[data.length].value!=null){//说明有部分定额编号没找到记录
                     alert('当前库中找不到定额"' + recodes[data.length].value + '"');
                 }
             })

+ 0 - 12
web/building_saas/main/js/models/ration_glj.js

@@ -570,18 +570,6 @@ var ration_glj = {
                         }
                     }
                 }
-              /*  let newNode=null;
-                for (let r_glj of data) {
-                    r_glj.marketUnitFee = r_glj.marketPrice;
-                    r_glj.quantity = r_glj.quantity + "";
-                    project.Ration.datas.push(r_glj);
-                    newNode = project.mainTree.insert(parentNodeID, nextNodeID, r_glj.ID);
-                    newNode.source = r_glj;
-                    newNode.sourceType = project.Ration.getSourceType();
-                    newNode.data = r_glj;
-                    ProjectController.syncDisplayNewNode(projectObj.mainController, newNode);
-                }*/
-                //this.nodes[this.prefix + parentID];
                 callback(parentNodeID,nextNodeID,data);
             }, function () {
                 $.bootstrapLoading.end();

+ 1 - 2
web/building_saas/main/js/views/glj_view.js

@@ -275,8 +275,7 @@ var gljOprObj = {
         sheet.bind(GC.Spread.Sheets.Events.EditStarting, function (sender, args) {
             if (args.row>=me.sheetData.length){
                 args.cancel = true;
-            }
-            if (me.sheetData[args.row].isMixRatio) {
+            }else if (me.sheetData[args.row].isMixRatio) {
                 args.cancel = true;
             }
         });

+ 6 - 6
web/building_saas/main/js/views/glj_view_contextMenu.js

@@ -12,7 +12,7 @@ var gljContextMenu = {
             build: this.onbuild,
             items: {
                 "delete_glj": {
-                    name: '删除工料机',
+                    name: '删除人材机',
                     icon: 'fa-remove',
                     disabled: function () {
                         var sheetData = gljOprObj.sheetData;
@@ -36,7 +36,7 @@ var gljContextMenu = {
                     }
                 },
                 "add_glj": {
-                    name: '添加工料机',
+                    name: '添加人材机',
                     icon: 'fa-sign-in',
                     disabled: function () {
                         var selected = projectObj.project.mainTree.selected;
@@ -63,7 +63,7 @@ var gljContextMenu = {
                     }
                 },
                 "replace_glj": {
-                    name: '替换工料机',
+                    name: '替换人材机',
                     icon: 'fa-sign-in',
                     disabled: function () {
                         var sheetData = gljOprObj.sheetData;
@@ -85,7 +85,7 @@ var gljContextMenu = {
                     }
                 },
                 "m_replace_glj": {
-                    name: '批量替换工料机',
+                    name: '批量替换人材机',
                     icon: 'fa-sign-in',
                     disabled: function () {
                         var sheetData = gljOprObj.sheetData;
@@ -108,7 +108,7 @@ var gljContextMenu = {
                     }
                 },
                 "add_to_lib": {
-                    name: '保存到我的工料机库',
+                    name: '保存到我的人材机库',
                     icon: 'fa-sign-in',
                     disabled: function () {
                         var sheetData = gljOprObj.sheetData;
@@ -354,7 +354,7 @@ function getGLJData(actionType) {
 function showGLJClassTree(record) {
     CommonAjax.post('/rationGlj/getGLJClass',record, function (data) {
         if(data.exist==true){
-            alert("当前工料机已存在。");
+            alert("当前人材机已存在。");
         }else {
             gljOprObj.selectedGLJClass = record;
             $("#glj_class_div").modal({show:true});

+ 13 - 3
web/building_saas/main/js/views/project_glj_view.js

@@ -23,7 +23,7 @@ projectGljObject={
             {headerName: "供货方式", headerWidth: 80, dataCode: "supply", hAlign: "center", dataType: "String",cellType:'comboBox',editorValueType:true,options:supplyComboMap},
             {headerName: "甲供数量", headerWidth: 100, dataCode: "supply_quantity", hAlign: "right", dataType: "Number",validator:"number"},
             {headerName: "三材类别", headerWidth: 80, dataCode: "materialType", hAlign: "center", dataType: "String",cellType:'comboBox',editorValueType:true,options:materialComboMap},
-            {headerName: "三材系数", headerWidth: 100, dataCode: "materialCoe", hAlign: "right", dataType: "Number",decimalField:'material',validator:"number"},
+            {headerName: "三材系数", headerWidth: 100, dataCode: "materialCoe", hAlign: "right", dataType: "Number",validator:"number"},//,decimalField:'material'
             {headerName: "交货方式", headerWidth: 90, dataCode: "delivery", hAlign: "left", dataType: "String"},
             {headerName: "送达地点", headerWidth: 100, dataCode: "delivery_address", hAlign: "left", dataType: "String"},
             {headerName: "不调价", headerWidth: 55, dataCode: "is_adjust_price", dataType: "String",cellType: "checkBox"}
@@ -68,7 +68,7 @@ projectGljObject={
             {headerName: "定额价", headerWidth: 70, dataCode: "basePrice", hAlign: "right", dataType: "Number",decimalField:'glj.unitPrice',validator:"number"},
             {headerName: "市场价", headerWidth: 70, dataCode: "marketPrice", hAlign: "right", dataType: "Number",decimalField:"glj.unitPrice",validator:"number"},
             {headerName: "总消耗量", headerWidth: 100, dataCode: "quantity", hAlign: "right", dataType: "Number",decimalField:'glj.quantity'},
-            {headerName: "三材系数", headerWidth: 100, dataCode: "materialCoe", hAlign: "right", dataType: "Number",decimalField:'material',validator:"number"},
+            {headerName: "三材系数", headerWidth: 100, dataCode: "materialCoe", hAlign: "right", dataType: "Number",validator:"number"},//,decimalField:'material'
             {headerName: "三材量", headerWidth: 100, dataCode: "materialQuantity", hAlign: "right", dataType: "Number",decimalField:'glj.quantity'},
             {headerName: "三材类别", headerWidth: 80, dataCode: "materialType", hAlign: "center", dataType: "String",cellType:'comboBox',editorValueType:true,options:materialComboMap}
         ],
@@ -464,7 +464,8 @@ projectGljObject={
             bgColour:'white'
         };
         if(glj.materialCoe){
-            data.materialCoe = scMathUtil.roundToString(glj.materialCoe,m_decimal);
+            data.materialCoe = scMathUtil.roundForObj(glj.materialCoe,m_decimal);
+            //data.materialCoe = scMathUtil.roundToString(glj.materialCoe,m_decimal);
             data.materialQuantity = scMathUtil.roundForObj(glj.materialCoe * glj.quantity,q_decimal);//还要做汇总,汇总完再转成string
         }
         gljOprObj.setGLJPrice(data,glj);
@@ -537,6 +538,9 @@ projectGljObject={
         if (materialIdList.indexOf(glj.type) >= 0) {
             data.is_evaluate = glj.is_evaluate;
         }
+        if(glj.materialCoe !== null && glj.materialCoe !==undefined){
+            data.materialCoe =  scMathUtil.roundForObj(glj.materialCoe,getDecimal("material"));
+        }
         //bgColour
         if(data.basePrice == data.marketPrice){//如果定额价等于市场价时,改底色。 优先度低于有组成物时的底色
             data.bgColour = "#C4CAFB";
@@ -739,6 +743,12 @@ projectGljObject={
                     value = 0;
                 }
             }
+            if(dataCode === 'materialType' && value == null){//删除三材类别时,清空三材系数
+                extend.materialCoe = null;
+            }
+            if(dataCode == 'materialCoe'){
+                value = scMathUtil.roundForObj(value,getDecimal("material"));
+            }
             extend = Object.keys(extend).length > 0 ?  JSON.stringify(extend) : '';
             let updateData = {id: recode.id, field: dataCode, value: value, extend: extend};
             projectGLJ.pGljUpdate(updateData,callback);

+ 2 - 3
web/building_saas/main/js/views/project_view.js

@@ -520,7 +520,7 @@ var projectObj = {
         let fieldName = projectObj.mainController.setting.cols[info.col].data.field;
         if(fieldName == 'marketUnitFee'){
             if(gljOprObj.hasComposition(node.data,true)){
-                alert("当前工料机的市场价由组成物计算得出,不可直接修改。");
+                alert("当前人材机的市场价由组成物计算得出,不可直接修改。");
                 return;
             }
         }
@@ -863,7 +863,7 @@ var projectObj = {
                     }
                 },
                 "insertGLJ": {
-                    name: "插入工料机",
+                    name: "插入人材机",
                     icon: 'fa-sign-in',
                     disabled: function () {
                         var selected = project.mainTree.selected;
@@ -1262,7 +1262,6 @@ var projectObj = {
             for(let node of nodes){
                 if(node && node.serialNo()!= -1){
                     sheet.getRange(node.serialNo(), -1, 1, -1).backColor(me.getNodeColorStyle(sheet, node).backColor);
-                    //sheet.setStyle(node.serialNo(), -1, me.getNodeColorStyle(sheet, node));
                 }
             }
         });

+ 1 - 1
web/common/html/header.html

@@ -13,7 +13,7 @@
                 <!--<a class="dropdown-item" href="/complementaryRation/main">定额库编辑器</a>-->
                 <a class="dropdown-item" href="javascript:void(0);" aria-expanded="false" data-toggle="modal" data-target="#opts-set"><i class="fa fa-sliders"></i> 选项</a>
                 <a class="dropdown-item" href="javascript:void(0);" data-toggle="modal" data-target="#comple-ration">定额库编辑器</a>
-                <a class="dropdown-item" href="/complementaryGlj">工料机库编辑器</a>
+                <a class="dropdown-item" href="/complementaryGlj">人材机库编辑器</a>
             </div>
         </li>
         <li class="nav-item dropdown">