zhangweicheng пре 6 година
родитељ
комит
a2430b687b
1 измењених фајлова са 39 додато и 5 уклоњено
  1. 39 5
      web/building_saas/main/js/views/material_adjust_view.js

+ 39 - 5
web/building_saas/main/js/views/material_adjust_view.js

@@ -14,10 +14,10 @@ let materialAdjustObj = {
             {headerName: "规格型号", headerWidth: 120, dataCode: "specs", hAlign: "left", dataType: "String",cellType:'tipsCell'},
             {headerName: "单位", headerWidth: 45, dataCode: "unit", hAlign: "center", dataType: "String"},
             {headerName: "数量", headerWidth: 90, dataCode: "quantity", hAlign: "right", dataType: "Number",decimalField:'glj.quantity'},
-            {headerName: "风险系数%", headerWidth: 90, dataCode: "riskCoe", hAlign: "right", dataType: "Number",validator:"number"},
+            {headerName: "风险系数%", headerWidth: 60, dataCode: "riskCoe", hAlign: "right", dataType: "Number",validator:"number"},
             {headerName: "基准单价", headerWidth: 70, dataCode: "standardPrice", hAlign: "right", dataType: "Number",validator:"number"},
             {headerName: "投标单价", headerWidth: 70, dataCode: "marketPrice", hAlign: "right", dataType: "Number",validator:"number"},
-            {headerName: "合价", headerWidth: 70, dataCode: "totalPrice", hAlign: "right", dataType: "Number",validator:"number",decimalField:'bills.totalPrice'},
+            {headerName: "合价", headerWidth: 90, dataCode: "totalPrice", hAlign: "right", dataType: "Number",validator:"number",decimalField:'bills.totalPrice'},
             {headerName: "产地", headerWidth: 80, dataCode: "originPlace", hAlign: "left", dataType: "String"},
             {headerName: "厂家", headerWidth: 80, dataCode: "vender", hAlign: "left", dataType: "String"},
             {headerName: "供货方式", headerWidth: 70, dataCode: "supply", hAlign: "center", dataType: "String",cellType:'comboBox',editorValueType:true,options:supplyComboMap},
@@ -32,11 +32,11 @@ let materialAdjustObj = {
             {headerName: "规格型号", headerWidth: 120, dataCode: "specs", hAlign: "left", dataType: "String",cellType:'tipsCell'},
             {headerName: "单位", headerWidth: 45, dataCode: "unit", hAlign: "center", dataType: "String"},
             {headerName: "变值权重B", headerWidth: 90, dataCode: "varWeight", hAlign: "right", dataType: "Number",validator:"number"},
-            {headerName: "基本价格指数FO", headerWidth: 70, dataCode: "FO", hAlign: "right", dataType: "Number",validator:"number"},
-            {headerName: "现行价格指数FI", headerWidth: 70, dataCode: "FI", hAlign: "right", dataType: "Number",validator:"number"},
+            {headerName: "基本价格指数F0", headerWidth: 70, dataCode: "FO", hAlign: "right", dataType: "Number",validator:"number"},
+            {headerName: "现行价格指数Ft", headerWidth: 70, dataCode: "FI", hAlign: "right", dataType: "Number",validator:"number"},
             {headerName: "数量", headerWidth: 90, dataCode: "quantity", hAlign: "right", dataType: "Number",decimalField:'glj.quantity'},
             {headerName: "单价", headerWidth: 70, dataCode: "marketPrice", hAlign: "right", dataType: "Number",validator:"number"},
-            {headerName: "合价", headerWidth: 70, dataCode: "totalPrice", hAlign: "right", dataType: "Number",validator:"number",decimalField:'bills.totalPrice'},
+            {headerName: "合价", headerWidth: 90, dataCode: "totalPrice", hAlign: "right", dataType: "Number",validator:"number",decimalField:'bills.totalPrice'},
             {headerName: "产地", headerWidth: 80, dataCode: "originPlace", hAlign: "left", dataType: "String"},
             {headerName: "厂家", headerWidth: 80, dataCode: "vender", hAlign: "left", dataType: "String"},
             {headerName: "供货方式", headerWidth: 70, dataCode: "supply", hAlign: "center", dataType: "String",cellType:'comboBox',editorValueType:true,options:supplyComboMap},
@@ -73,6 +73,7 @@ let materialAdjustObj = {
         this.priceInfoSheet = this.spread.getSheet(0);
         sheetCommonObj.initSheet(this.priceInfoSheet,this.priceInfoSetting,30);
         this.priceInfoSheet.bind(GC.Spread.Sheets.Events.ValueChanged, this.onSheetValueChange);
+        this.priceInfoSheet.bind(GC.Spread.Sheets.Events.RangeChanged, this.onSheetRangeChange);
         this.priceInfoSheet.name('priceInfoSheet');
         this.priceInfoSheet.setRowHeight(0, 36, 1);
     },
@@ -80,9 +81,42 @@ let materialAdjustObj = {
         this.priceCoeSheet = this.spread.getSheet(1);
         sheetCommonObj.initSheet(this.priceCoeSheet,this.priceCoeSetting,30);
         this.priceCoeSheet.bind(GC.Spread.Sheets.Events.ValueChanged, this.onSheetValueChange);
+        this.priceCoeSheet.bind(GC.Spread.Sheets.Events.RangeChanged, this.onSheetRangeChange);
         this.priceCoeSheet.name('priceCoeSheet');
         this.priceCoeSheet.setRowHeight(0, 36, 1);
     },
+    onSheetRangeChange:function (a,args) {
+        let me = materialAdjustObj,updateMap = {};
+        let projectGLJ = projectObj.project.projectGLJ;
+        let setting = $("#adjustType").val() == "priceInfo"?me.priceInfoSetting:me.priceCoeSetting;
+        let datas = $("#adjustType").val() == "priceInfo"?me.priceInfoDatas:me.priceCoeDatas;
+        for(let c of args.changedCells){
+            let dataCode = setting.header[c.col].dataCode;
+            let value= args.sheet.getCell(c.row, c.col).text();
+            if (value&&!sheetCommonObj.checkData(c.col,setting,value)) {
+                alert('输入的数据类型不对,请重新输入!');
+                me.refreshSheetDatas();
+                return ;
+            }
+            let recode = datas[c.row];
+            if(dataCode=='marketPrice'){
+                let editField ="market_price";
+                projectGLJ.updatePrice(recode,editField,value,'pg',me.refreshSheetDatas);
+            }else {
+                let tem = {};
+                if(value) value = scMathUtil.roundForObj(value,getDecimal("process"));
+                if(value == recode[dataCode]) continue;
+                tem[dataCode] = value;
+                updateMap[recode.id] = tem;
+            }
+        }
+        if( _.isEmpty(updateMap)) return;
+        projectGLJ.batchUpdateGLJProperty(updateMap,function () {
+            me.refreshSheetDatas();
+        });
+
+    },
+
     onSheetValueChange:function (a,args) {
         let me = materialAdjustObj,row = args.row, col = args.col;
         let projectGLJ = projectObj.project.projectGLJ;