浏览代码

Merge branch 'master' of http://192.168.1.41:3000/SmartCost/YangHuCost

vian 5 年之前
父节点
当前提交
0ab3c4a8c9

+ 32 - 0
config/gulpConfig.js

@@ -282,6 +282,38 @@ module.exports = {
         'public/web/common_ajax.js',
         'web/building_saas/complementary_ration_lib/js/global.js',
         'web/building_saas/complementary_ration_lib/js/installation.js'
+    ],
+    unitPrice_css:[],
+    unitPrice_jspaths:[
+      "lib/popper/popper.min.js",
+      "lib/bootstrap/bootstrap.min.js",
+      "lib/bootstrap/bootstrap-submenu.js",
+      "web/building_saas/glj/js/socket.io.slim.js",
+      "public/web/socket/connection.js",
+      "web/building_saas/js/moment.min.js",
+      "web/building_saas/js/message.js",
+      "public/web/scMathUtil.js",
+      "public/web/gljUtil.js",
+      "public/web/PerfectLoad.js",
+      "lib/lodash/lodash.js",
+      "public/web/commonAlert.js",
+      "public/web/headerOpr.js",
+      "public/web/common_ajax.js",
+      "public/common_util.js",
+      "public/common_constants.js",
+      "public/web/treeDataHelper.js",
+      "public/web/ztree_common.js",
+      "web/building_saas/main/js/models/main_consts.js",
+      "lib/jquery-editable-select/jquery.editable-select.min.js",
+      "public/web/tree_sheet/tree_sheet_helper.js",
+      "public/web/sheet/sheet_data_helper.js",
+      "public/web/sheet/sheet_common.js",
+      "public/web/slideResize.js",
+      "web/building_saas/main/js/views/glj_view_contextMenu.js",
+      "web/building_saas/main/js/views/glj_view.js",
+      "web/building_saas/main/js/views/options_view.js",
+      'web/building_saas/main/js/views/project_glj_view.js',
+      "web/building_saas/unit_price_file/index.js",
     ]
 }
 

+ 32 - 10
gulpfile.js

@@ -26,6 +26,8 @@ let compleRation_coe_jspaths = config.compleRation_coe_jspaths;
 let compleRation_coe_csspaths = config.compleRation_coe_css;
 let compleRation_inst_csspaths = config.compleRation_inst_css;
 let compleRation_inst_jspaths = config.compleRation_inst_jspaths;
+let unitPrice_jspaths = config.unitPrice_jspaths;
+
 let version=config.version;
 let cssDest='web/dest/css';
 let scriptsDest='web/dest/scripts';
@@ -38,7 +40,7 @@ let commonOptions={
 
 let headerOptions={
     version:version,
-    scriptsDest:'web/dest/scripts',
+    scriptsDest:scriptsDest,
     concatName:'header.all.min',
     srcHtml:'web/src/html/common/header.html',
     htmlDest:'web/common/html',
@@ -48,7 +50,7 @@ let headerOptions={
 
 let loginOptions={
     version:version,
-    scriptsDest:'web/dest/scripts',
+    scriptsDest:scriptsDest,
     jspaths:login_jspaths,
     concatName:'login.all.min',
     srcHtml:'web/src/html/login/login.html',
@@ -61,7 +63,7 @@ let loginOptions={
 
 let pmOptions={
     version:version,
-    scriptsDest:'web/dest/scripts',
+    scriptsDest:scriptsDest,
     jspaths:pm_jspaths,
     csspaths:pm_csspaths,
     concatName:'pm.all.min',
@@ -75,7 +77,7 @@ let pmOptions={
 
 let mainOptions={
     version:version,
-    scriptsDest:'web/dest/scripts',
+    scriptsDest:scriptsDest,
     jspaths:main_jspaths,
     csspaths:main_csspaths,
     concatName:'main.all.min',
@@ -89,7 +91,7 @@ let mainOptions={
 
 let compleGljOptions = {
     version: version,
-    scriptsDest: 'web/dest/scripts',
+    scriptsDest: scriptsDest,
     jspaths: compleGlj_jspaths,
     csspaths: compleGlj_csspaths,
     concatName: 'compleGlj.all.min',
@@ -105,7 +107,7 @@ let compleGljOptions = {
 
 let compleRation_rationOptions = {
     version: version,
-    scriptsDest: 'web/dest/scripts',
+    scriptsDest: scriptsDest,
     jspaths: compleRation_ration_jspaths,
     csspaths: compleRation_ration_csspaths,
     concatName: 'compleRation_ration.all.min',
@@ -122,7 +124,7 @@ let compleRation_rationOptions = {
 
 let compleRation_gljOptions = {
     version: version,
-    scriptsDest: 'web/dest/scripts',
+    scriptsDest: scriptsDest,
     jspaths: compleRation_glj_jspaths,
     csspaths: compleRation_glj_csspaths,
     concatName: 'compleRation_glj.all.min',
@@ -139,7 +141,7 @@ let compleRation_gljOptions = {
 
 let compleRation_coeOptions = {
     version: version,
-    scriptsDest: 'web/dest/scripts',
+    scriptsDest: scriptsDest,
     jspaths: compleRation_coe_jspaths,
     csspaths: compleRation_coe_csspaths,
     concatName: 'compleRation_coe.all.min',
@@ -156,7 +158,7 @@ let compleRation_coeOptions = {
 
 let compleRation_instOptions = {
     version: version,
-    scriptsDest: 'web/dest/scripts',
+    scriptsDest: scriptsDest,
     jspaths: compleRation_inst_jspaths,
     csspaths: compleRation_inst_csspaths,
     concatName: 'compleRation_inst.all.min',
@@ -171,6 +173,16 @@ let compleRation_instOptions = {
     ]
 }
 
+let unitPriceOptions={
+  version:version,
+  scriptsDest:scriptsDest,
+  jspaths:unitPrice_jspaths,
+  concatName:'unitPrice.all.min',
+  htmlDest:'web/building_saas/unit_price_file',
+  htmlName:'index.html',
+  injectList:['web/dest/scripts/unitPrice.all.min.'+version+'.js']
+}
+
 function minify(options) {
     if(options.jspaths){
         return gulp.src(options.jspaths)
@@ -364,6 +376,16 @@ gulp.task('compleRation_inst', ['compleRation_inst_inject'], function () {
     return htmlmin(compleRation_instOptions);
 });
 
+gulp.task('unitPrice_minify', function (){
+  return minify(unitPriceOptions);
+});
 
+gulp.task('unitPrice_inject',['unitPrice_minify'],function (){
+  return inject(unitPriceOptions);
+})
+
+gulp.task('unit_price',['unitPrice_inject'], function (){
+  return htmlmin(unitPriceOptions);
+});
 
-gulp.task('build',['header','login','pm','main', 'compleGlj', 'compleRation_ration', 'compleRation_glj', 'compleRation_coe', 'compleRation_inst']);
+gulp.task('build',['header','login','pm','main', 'compleGlj', 'compleRation_ration', 'compleRation_glj', 'compleRation_coe', 'compleRation_inst','unit_price']);

+ 1 - 0
modules/unit_price_file/controllers/unit_price_controller.js

@@ -35,6 +35,7 @@ module.exports={
         {
           userAccount: req.session.userAccount,
           userID: req.session.sessionUser.id,
+          unitPriceFileID:unitPriceFileID,
           versionName: req.session.compilationVersion,
           unitFileName:unitPriceFile.name,
           rootProjectName:project.name,

+ 4 - 0
public/web/socket/connection.js

@@ -15,6 +15,10 @@ socketObject={
               me.roomInfo={
                   userID:userID
               };
+          }else if(from == 'unitPrice'){
+            me.roomInfo = {
+              unitFile:unitPriceFileID
+            }
           }else {
               me.roomInfo={
                   feeRate:me.getFeeRateRoomID(),

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

@@ -227,7 +227,7 @@ var FeeRate = {
                     calcProgramObj.refreshCalcProgram(node, 3);
                 }
             }
-            await project.projectGLJ.calcAllWhenFeeRateChange();
+            await project.projectGLJ.calcAllMaterialWhenChange();
             project.calcProgram.calcAllNodesAndSave(calcAllType.catAll,function () {
                 $.bootstrapLoading.start();
                 project.markUpdateProject({projectID:project.ID(),feeRateID:me.getActivateFeeRateFileID()},"feeRate",function () {

+ 36 - 82
web/building_saas/main/js/models/project_glj.js

@@ -336,7 +336,7 @@ ProjectGLJ.prototype.updateCalcMaterial =async function (projectGLJ,updateField,
     }
 };
 
-ProjectGLJ.prototype.calcAllMaterial = function (unitPriecs,isFromFeeRate) {//当材料发生改变时重算所有计算材料的价格
+ProjectGLJ.prototype.calcAllMaterial = function (unitPriecs,needReCalc) {//当材料发生改变时重算所有计算材料的价格
     let priceMap = {};
     for(let unitPrice of unitPriecs){
         if(unitPrice && gljUtil.isDef(unitPrice.doc.market_price)) priceMap[unitPrice.projectGLJID] = unitPrice.doc.market_price;
@@ -356,7 +356,7 @@ ProjectGLJ.prototype.calcAllMaterial = function (unitPriecs,isFromFeeRate) {//
                 let freightUpdateMap = {};
                 for(let f of freightListMap[tIndex]){
                     if(f.conveyance != "自办运输") continue;//不是自办运输的不用管
-                    let calf = ifNeedReCalc(f,priceMap);
+                    let calf = ifNeedReCalc(f,priceMap,needReCalc);
                     if(calf){
                         let f_task = this.calcEachFreightOrPrice(f,"freight",priceMap);
                         if(f_task){
@@ -371,7 +371,7 @@ ProjectGLJ.prototype.calcAllMaterial = function (unitPriecs,isFromFeeRate) {//
             if(originalListMap[tIndex]){ //运费重算
                 let originalUpdateMap = {};
                 for(let o of originalListMap[tIndex]){
-                    let calo = ifNeedReCalc(o,priceMap,isFromFeeRate);
+                    let calo = ifNeedReCalc(o,priceMap,needReCalc);
                     if(calo){
                         let o_task = this.calcEachFreightOrPrice(o,"price",priceMap);
                         if(o_task){
@@ -385,7 +385,7 @@ ProjectGLJ.prototype.calcAllMaterial = function (unitPriecs,isFromFeeRate) {//
             //判断映射表是否为空,如果为空则说明不用计算
             if(!_.isEmpty(fOrPDataMap)){
                 let t_unipPrice = this.materialCal(g.id,fOrPDataMap,g,freightListMap[tIndex],originalListMap[tIndex]);
-                if(t_unipPrice) unitPriecs.push(t_unipPrice);
+                if(t_unipPrice && !_.isEmpty(t_unipPrice.doc)) unitPriecs.push(t_unipPrice);
             }
         }
     }
@@ -402,9 +402,9 @@ ProjectGLJ.prototype.calcAllMaterial = function (unitPriecs,isFromFeeRate) {//
     return [unitPriecs,sumUpdateMap];
 
 
-    function ifNeedReCalc(obj,IDMap,isFromFeeRate = false) {
+    function ifNeedReCalc(obj,IDMap,needReCalc = false) {
         let calcf = false;
-        if(isFromFeeRate == true) return true;//如果是从费率过来的,默认自动计算
+        if(needReCalc == true) return true;//如果是通过修改费率等地方触发的,默认自动计算
         if(obj.ration_gljs){
             for(let rg of  obj.ration_gljs){
                 if(IDMap[rg.projectGLJID]){//判断是否关联了该项目工料机
@@ -608,6 +608,7 @@ ProjectGLJ.prototype.m_updateUnitPrice = function (datas,isFromFeeRate) {//批
     //socket推送更新信息
     projectGljObject.onUnitFileChange(isFromFeeRate?false:true);//如果是从更新费率过来的,不用在项目属性上做标记,费率那里已经自动计算所有节点了
 
+    return gljList
 
     function updateUnit(id,unitPrice) {
         let glj = _.find(me.datas.gljList,{'id':id});
@@ -740,15 +741,17 @@ ProjectGLJ.prototype.refreshEctrovalenceCache = function (updateMap) {
 
 
 ProjectGLJ.prototype.refreshMaterialCalcCache = function (updateMap,isFromFeeRate = false){//从费率计算过来的时候,费率那里已经做了自动计算所有节点了
-   if(updateMap["freight"]) updateList(this.datas.freightList,updateMap["freight"]);
+  let gljList = []; 
+  if(updateMap["freight"]) updateList(this.datas.freightList,updateMap["freight"]);
    if(updateMap["price"]) updateList(this.datas.originalList,updateMap["price"]);
    if(updateMap["unitPrice"]) {
       if(Array.isArray(updateMap["unitPrice"])){
-          this.m_updateUnitPrice(updateMap["unitPrice"],isFromFeeRate);
+        gljList =  this.m_updateUnitPrice(updateMap["unitPrice"],isFromFeeRate);
       }else {
-          this.m_updateUnitPrice([updateMap["unitPrice"]],isFromFeeRate);
+        gljList =  this.m_updateUnitPrice([updateMap["unitPrice"]],isFromFeeRate);
       }
    }
+   return gljList;
 
     function updateList(list,updateMap) {
        if(updateMap["update"]){
@@ -814,7 +817,7 @@ ProjectGLJ.prototype.changeAssistProductionFeeRate = async function (newFeeRate)
         await ajaxPost("/glj/changeAssistProductionFeeRate",{unitFileID:projectObj.project.property.unitPriceFile.id,assistProductionFeeRate:newFeeRate});
         this.datas.constData.assistProductionFeeRate = newFeeRate;
         //todo  调用材料计算方法,所有材料重算一遍
-        let [unitPrices,sumMap] = this.calcAllMaterial([]);
+        let [unitPrices,sumMap] = this.calcAllMaterial([],true);
         sumMap["unitPrice"] = unitPrices;
         let result = await ajaxPost('/glj/updateMaterialCalcTasks',sumMap);
         this.refreshMaterialCalcCache(sumMap);
@@ -826,18 +829,20 @@ ProjectGLJ.prototype.changeAssistProductionFeeRate = async function (newFeeRate)
     }
 };
 
-ProjectGLJ.prototype.calcAllWhenFeeRateChange = async function(){//当高原相关费率改变时,重新计算所有材料
+ProjectGLJ.prototype.calcAllMaterialWhenChange = async function(){//当费率单价等改变时,重新计算所有材料  返回价格有变化的项目工料机
+  let gljList = [];
   try {
     let [unitPrices,sumMap] = this.calcAllMaterial([],true);
     if(unitPrices.length > 0){
       sumMap["unitPrice"] = unitPrices;
       let result = await ajaxPost('/glj/updateMaterialCalcTasks',sumMap);
-      this.refreshMaterialCalcCache(sumMap,true);
-      materialCalcObj.showDatas();
+      gljList = this.refreshMaterialCalcCache(sumMap,true);
+      materialCalcObj.showDatas(); 
     }
-}catch (err){
-    console.log(err);
-}
+  }catch (err){
+      console.log(err);
+  }
+  return gljList
 }
 
 ProjectGLJ.prototype.loadFreightAndOriginalData = function(originalList,freightList){
@@ -947,9 +952,12 @@ ProjectGLJ.prototype.calcEachFreightOrPrice = function (temp,type,priceMap) {//
         }
         sum = scMathUtil.roundForObj(sum,decimal)+"";
         if(type == "freight"){
-          let exp = `((${expList.join("+")})+${temp.otherFee})x${temp.weightCoe}` 
-          return {ID:temp.ID,doc:{unitFreight:sum,heightFee:heightFee,exp:exp}};
-        } 
+          let exp = `((${expList.join("+")})+${temp.otherFee})x${temp.weightCoe}`
+          let ndoc = {};
+          if(temp.unitFreight != sum) ndoc['unitFreight'] = sum;
+          if(temp.exp != exp) ndoc['exp'] = exp;
+          if(!_.isEmpty(ndoc)) return {ID:temp.ID,doc:ndoc};
+        }
         if(type == "price" && temp.supplyPrice !=sum) return {ID:temp.ID,doc:{supplyPrice:sum,heightFee:heightFee}}
     }
     return null;
@@ -1114,7 +1122,7 @@ ProjectGLJ.prototype.updatePrice = function (recode, updateField, newval,from,cb
             let ext =electrovalenceObj.clacNewElecPrice(uobj);
             if(ext) data.ext = ext;
         }
-        let callback = function (result) {
+        let callback =async function (result) {
             if (updateField == 'base_price') {
                 glj.unit_price.base_price = newval;
                 me.setAdjustPrice(glj);
@@ -1129,6 +1137,9 @@ ProjectGLJ.prototype.updatePrice = function (recode, updateField, newval,from,cb
             //更新回传的父节点项目工料机价格
            let gljs = me.getProjectGLJs(result);
           //  me.refreshRationGLJPrice(glj);//刷新定额工料机列表的记录
+            let materialGljList  =await me.calcAllMaterialWhenChange()
+            gljs= gljs.concat(materialGljList);
+
             projectGljObject.refreshDataSheet();//更新工料机汇总缓存和显示
             //projectObj.project.projectGLJ.loadCacheData();
             gljOprObj.showRationGLJSheetData();
@@ -1137,7 +1148,7 @@ ProjectGLJ.prototype.updatePrice = function (recode, updateField, newval,from,cb
             if(elec_glj) gljs.push(elec_glj);
             let nodes = me.getImpactRationNodes(gljs);//取到因为改变工料机价格而受影响的定额
             projectObj.project.calcProgram.calcNodesAndSave(nodes);//触发计算程序
-            projectGljObject.onUnitFileChange(result);
+            if(materialGljList.length==0)projectGljObject.onUnitFileChange(result);
             if(cb){
                 cb(gljs);
             }
@@ -1226,7 +1237,7 @@ ProjectGLJ.prototype.batchUpdatePrice = function (changeInfo,sheetName,callback)
     }
     if(updateData.length > 0){
         $.bootstrapLoading.start();
-        CommonAjax.post("/glj/batchUpdatePrices", updateData, function (result) {
+        CommonAjax.post("/glj/batchUpdatePrices", updateData,async function (result) {
             let parentData = [];
             //更新缓存
             for(let g of gljs){
@@ -1244,10 +1255,12 @@ ProjectGLJ.prototype.batchUpdatePrice = function (changeInfo,sheetName,callback)
             }
             let pgljs = me.getProjectGLJs(parentData);
             gljs = gljs.concat(pgljs);
+            let materialGljList  = await me.calcAllMaterialWhenChange();
+            gljs = gljs.concat(materialGljList);
             let nodes = me.getImpactRationNodes(gljs);//取到因为改变工料机价格而受影响的定额
             projectObj.project.calcProgram.calcNodesAndSave(nodes);//触发计算程序
             gljOprObj.showRationGLJSheetData();
-            projectGljObject.onUnitFileChange(gljs);
+            if(materialGljList.length == 0) projectGljObject.onUnitFileChange(gljs);
             if(callback){
                 callback(gljs);
             }
@@ -1379,65 +1392,6 @@ ProjectGLJ.prototype.changeVvTaxFile = async function (newVvTaxFileID,callback)
     }
 };
 
-
-ProjectGLJ.prototype.addMixRatio = function(selections,callback){
-    let gljList = [],allGLJ = gljOprObj.AllRecode;
-    if(selections.length == 0) {
-        return;
-    }
-    for(let glj of allGLJ){
-        let i_key = gljOprObj.getIndex(glj, gljLibKeyArray);
-        if(_.includes(selections,i_key)){
-            let pglj = {
-                project_id: projectObj.project.ID(),
-                glj_id: glj.ID,
-                name: glj.name,
-                code: glj.code,
-                original_code: glj.code,
-                unit: glj.unit,
-                specs: glj.specs,
-                base_price: glj.basePrice,
-                market_price: glj.basePrice,
-                shortName: glj.shortName,
-                type: glj.gljType,
-                model:glj.model,
-                adjCoe: glj.adjCoe,
-                from:'std',
-                repositoryId:glj.repositoryId,
-                materialType:glj.materialType,
-                materialCoe:glj.materialCoe,
-                grossWeightCoe:glj.grossWeightCoe,
-                purchaseStorageRate:glj.purchaseStorageRate,
-                offSiteTransportLossRate:glj.offSiteTransportLossRate,
-                handlingLossRate:glj.handlingLossRate
-            };
-            if (glj.hasOwnProperty("compilationId")) {
-                pglj.from = "cpt";
-                if (glj.code.indexOf('-') != -1) {//这条工料机是用户通过修改名称、规格、型号等保存到补充工料机库的
-                    pglj.original_code = glj.code.split('-')[0];//取-前的编号作为原始编号
-                }
-            }
-            gljList.push(pglj);
-        }
-    }
-    gljList = _.sortByAll(gljList, ['type', 'code']);
-    if(gljList.length == 0) return;
-    let praentInfo = {
-        unit_price_file_id:projectObj.project.property.unitPriceFile.id,
-        connect_key:gljOprObj.getIndex(projectGljObject.selectedProjectGLJ,gljKeyArray)
-    };
-    $.bootstrapLoading.start();
-    CommonAjax.post("/glj/add-ratio", {gljList:gljList,parentInfo:praentInfo}, function (data) {
-        $.bootstrapLoading.end();
-        if(callback){
-            callback(data);
-        }
-    }, function () {
-        $.bootstrapLoading.end();
-    });
-
-}
-
 ProjectGLJ.prototype.checkUnitFileName = function(newVal,callback){
     let property = projectObj.project.projectInfo.property;
     let data = {

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

@@ -598,10 +598,11 @@ projectGljObject={
         }
 
        // updateData.push({type:'parent',connect_key:parentKey,base_price:parentBasePrice,market_price:parentMarketPrice,unit_price_file_id:unit_price_file_id});
-        projectGLJ.batchUpdateConsumption(updateData,updateMap,function () {
+        projectGLJ.batchUpdateConsumption(updateData,updateMap,async function () {
             //更新人材机汇总表
             me.refreshDataSheet();
-            me.onUnitFileChange(true);
+            let materialGljList  = await projectGLJ.calcAllMaterialWhenChange();
+            if(materialGljList.length == 0)me.onUnitFileChange(true);
             gljOprObj.refreshView();
         });
 

+ 3 - 2
web/building_saas/unit_price_file/index.html

@@ -37,6 +37,7 @@
 
 </head>
 <script type="text/javascript">
+  let unitPriceFileID = parseInt('<%- unitPriceFileID %>');
   let unitPriceList = JSON.parse(`<%- unitpriceList %>`);
   let gljTypeMap = JSON.parse(`<%- gljTypeMap %>`);
   let mixRatioMap = JSON.parse(`<%- mixRatioMap %>`);
@@ -196,6 +197,8 @@
     <script src="/lib/popper/popper.min.js"></script>
     <script src="/lib/bootstrap/bootstrap.min.js"></script>
     <script src="/lib/bootstrap/bootstrap-submenu.js"></script>
+    <script src="/web/building_saas/glj/js/socket.io.slim.js"></script>
+    <script src="/public/web/socket/connection.js"></script>
     <script type="text/javascript" src="/web/building_saas/js/moment.min.js"></script>
     <script type="text/javascript" src="/web/building_saas/js/message.js"></script>
     <script type="text/javascript" src="/public/web/scMathUtil.js"></script>
@@ -219,8 +222,6 @@
     <script type="text/javascript" src="/web/building_saas/main/js/views/glj_view.js"></script>
     <script type="text/javascript" src="/web/building_saas/main/js/views/options_view.js"></script>
     <script type="text/javascript" src='/web/building_saas/main/js/views/project_glj_view.js'></script>
-
-
     <script type="text/javascript" src="/web/building_saas/unit_price_file/index.js"></script>
     <!-- endinject -->
 

+ 9 - 1
web/building_saas/unit_price_file/index.js

@@ -557,9 +557,16 @@ let unitPriceObj = {
     me.onUnitPriceChange();
   },
 
-  onUnitPriceChange:function(){
+  onUnitPriceChange:async function(){
     unitPriceObj.showMainDatas();
     unitPriceObj.showSubDatas();
+    try {
+      await ajaxPost("/project/markUpdateProject",{updateInfo:{unitFileID:unitPriceFileID,isInclude:true},type:"unitFile"});
+      socket.emit('unitFileChangeNotify', {'unitFileID':unitPriceFileID});
+    } catch (error) {
+      console.log(error)
+      alert(error)
+    }
   }, 
   getGLJLibData : function (url, cb) {
     //let property = projectObj.project.projectInfo.property;
@@ -594,6 +601,7 @@ function initPage(){
   unitPriceObj.initSubSpread();
   unitPriceObj.showMainDatas();
   unitPriceObj.showSubDatas();
+  socketObject.connect("unitPrice");
 }
 
 unitPriceObj.setUntiPriceMap();

+ 0 - 1
web/over_write/js/zhejiang_2005.js

@@ -319,7 +319,6 @@ if (typeof projectObj !== 'undefined') {
     projectObj.isInsertEquipmentVisable = function (selected) {
         return false;   //浙江不管是预算或者工程量清单,都是隐藏   
     }
-
 }