فهرست منبع

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

zhongzewei 6 سال پیش
والد
کامیت
f169e37de0

+ 2 - 2
modules/all_models/ration_glj.js

@@ -5,10 +5,10 @@ var mongoose = require('mongoose'),
     Schema = mongoose.Schema;
 
 var ration_glj = new Schema({
-    ID:String,
+    ID:{type: String, index: true},
     GLJID:Number,
     repositoryId:Number,
-    projectID: Number,
+    projectID: {type: Number, index: true},
     rationID:String,
     projectGLJID:Number,
     name:String,

+ 0 - 1
modules/main/facade/ration_facade.js

@@ -485,7 +485,6 @@ async function updateCoeAdjust(data,compilation) {
             replace.push(await  ration_glj_facade.replaceGLJByData(r,compilation)) ;
         }
     }
-
     let cal_result = await glj_calculate_facade.calculateQuantity({projectID:data.projectID,rationID:data.rationID},null,true);
     let coe = {
         query:{ID:data.ID,projectID:data.projectID},

+ 11 - 5
modules/ration_glj/facade/glj_calculate_facade.js

@@ -87,10 +87,10 @@ async function calculateQuantity(query,noNeedCal=null,refreshRationName = false)
         gljList = gljUtil.sortRationGLJ(gljList);
         for(let i =0;i<gljList.length;i++ ){
             let r = await calculateQuantityPerGLJ(gljList[i],gljList,coeList,assList,adjustState,mixRatioMap,noNeedCal);
-            result.glj_result.push(r);
+            if(quantityUpdateCheck(gljList[i],r) == true) result.glj_result.push(r);
         }
          if(noNeedCal==null){
-            await ration_glj.bulkWrite(generateUpdateTasks(result.glj_result));
+             await ration_glj.bulkWrite(generateUpdateTasks(result.glj_result));
          }
          adjustState= _.sortByOrder(adjustState, ['index'], ['asc']);
          adjustState=_.map(adjustState, _.property('content'));
@@ -110,6 +110,13 @@ async function calculateQuantity(query,noNeedCal=null,refreshRationName = false)
     }
 }
 
+function quantityUpdateCheck(glj,r) {//检查,有改变的才更新
+    for(let key in r.doc){
+        if(glj._doc[key] != r.doc[key]) return true
+    }
+    return false
+}
+
 function generateRationName(ration,gljList) {
     let caption = ration.caption ? ration.caption:ration.name;
     let replaceList = [];
@@ -158,7 +165,7 @@ function generateUpdateTasks(result) {
                 filter: result[i].query,
                 update: result[i].doc
             }
-        }
+        };
         tasks.push(task);
     }
     return tasks;
@@ -179,8 +186,7 @@ async function calculateQuantityPerGLJ(glj,gljList,coeList,assList,adjustState,m
     let quantity =  scMathUtil.roundTo(parseFloat(glj.quantity),-decimal);
     let result={
         query:{
-            ID:glj.ID,
-            projectID:glj.projectID
+            ID:glj.ID
         },
         doc:{
             quantity: quantity

+ 5 - 1
web/building_saas/pm/js/pm_newMain.js

@@ -3646,7 +3646,11 @@ $("#confirm-import").click(function() {
 
             },
             error: function(){
-
+                setTimeout(function () {
+                    self.text('确定导入');
+                    $.bootstrapLoading.progressEnd();
+                    alert("导入失败,请检查文件!");
+                },1000)
             }
         });
     } catch(error) {

+ 3 - 2
web/over_write/js/chongqing_2018.js

@@ -315,7 +315,7 @@ if(typeof module !== 'undefined'){
 }
 
 function getCusCoeContent() {
-    return '人工×1,材料×1,施工机具×1,主材×1'
+    return '人工×1,材料×1,施工机具×1,主材×1,设备×1'//2019-07-08 bug 添加自定义系数添加设备
 }
 
 function getCustomerCoeData() {
@@ -324,6 +324,7 @@ function getCustomerCoeData() {
         { amount:1, operator:'*', gljCode:null, coeType:'人工'},
         { amount:1, operator:'*', gljCode:null, coeType:'材料'},
         { amount:1, operator:'*', gljCode:null, coeType:'施工机具'},
-        { amount:1, operator:'*', gljCode:null, coeType:'主材'}
+        { amount:1, operator:'*', gljCode:null, coeType:'主材'},
+        { amount:1, operator:'*', gljCode:null, coeType:'设备'}
     ]
 }