|
|
@@ -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;
|