|
@@ -271,6 +271,7 @@ let installationFeeObj={
|
|
me.showFeeDetailData();
|
|
me.showFeeDetailData();
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+ me.feeItemSheet.repaint();
|
|
},
|
|
},
|
|
onFeeDetailSelectionChange:function (e,info) {
|
|
onFeeDetailSelectionChange:function (e,info) {
|
|
console.log('detail selection change');
|
|
console.log('detail selection change');
|
|
@@ -326,6 +327,24 @@ let installationFeeObj={
|
|
info.newValue = newval;
|
|
info.newValue = newval;
|
|
me.onFeeItemValueChange(e,info);
|
|
me.onFeeItemValueChange(e,info);
|
|
},
|
|
},
|
|
|
|
+ refreshView:function () {
|
|
|
|
+ if(this.feeItemSpread == null){
|
|
|
|
+ this.initInstallationFeeSpread();
|
|
|
|
+ }else {
|
|
|
|
+ let sel_f = this.feeItemSheet.getSelections()[0];
|
|
|
|
+ let sel_d = this.feeDetailSheet.getSelections()[0];
|
|
|
|
+ this.showFeeItemData();
|
|
|
|
+ this.feeItemSheet.setSelection(sel_f.row ==-1?0:sel_f.row,sel_f.col,sel_f.rowCount,sel_f.colCount);
|
|
|
|
+ let oldData = sel_f.row<this.feeItemData.length?this.feeItemData[sel_f.row]:null;
|
|
|
|
+ if(oldData){
|
|
|
|
+ this.showFeeDetailData(oldData.libID,oldData.ID);
|
|
|
|
+ }else {
|
|
|
|
+ this.showFeeDetailData();
|
|
|
|
+ }
|
|
|
|
+ this.feeDetailSheet.setSelection(sel_d.row ==-1?0:sel_d.row,sel_d.col,sel_d.rowCount,sel_d.colCount);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ },
|
|
showFeeItemData:function () {
|
|
showFeeItemData:function () {
|
|
this.feeItemData = this.getFeeItemData(projectObj.project.installation_fee.datas);
|
|
this.feeItemData = this.getFeeItemData(projectObj.project.installation_fee.datas);
|
|
this.feeItemSheet.setRowCount(0);
|
|
this.feeItemSheet.setRowCount(0);
|
|
@@ -338,6 +357,7 @@ let installationFeeObj={
|
|
this.feeItemSheet.getRange(i,-1, 1, -1, GC.Spread.Sheets.SheetArea.viewport).locked(true);//this.feeItemSheet.getCell(i, 2).locked(true);
|
|
this.feeItemSheet.getRange(i,-1, 1, -1, GC.Spread.Sheets.SheetArea.viewport).locked(true);//this.feeItemSheet.getCell(i, 2).locked(true);
|
|
this.feeItemSheet.getRange(i,2,1,2).cellType(new GC.Spread.Sheets.CellTypes.Text());//费用类型、记取位置两列替换成普通的单元格;
|
|
this.feeItemSheet.getRange(i,2,1,2).cellType(new GC.Spread.Sheets.CellTypes.Text());//费用类型、记取位置两列替换成普通的单元格;
|
|
}
|
|
}
|
|
|
|
+ this.positionButtonChecking(i,data);
|
|
}
|
|
}
|
|
|
|
|
|
},
|
|
},
|
|
@@ -716,8 +736,11 @@ let installationFeeObj={
|
|
}else if(selectedItem.feeType=='分项费用'){
|
|
}else if(selectedItem.feeType=='分项费用'){
|
|
rootNode = project.Bills.getFBFXNode(controller);
|
|
rootNode = project.Bills.getFBFXNode(controller);
|
|
}
|
|
}
|
|
- allNodes.push(rootNode);
|
|
|
|
- controller.tree.getAllSubNode(rootNode.source,allNodes);
|
|
|
|
|
|
+ if(rootNode){
|
|
|
|
+ allNodes.push(rootNode);
|
|
|
|
+ controller.tree.getAllSubNode(rootNode.source,allNodes);
|
|
|
|
+ }
|
|
|
|
+
|
|
for(let n of allNodes){
|
|
for(let n of allNodes){
|
|
let temData = {
|
|
let temData = {
|
|
ID:n.data.ID,
|
|
ID:n.data.ID,
|
|
@@ -925,13 +948,15 @@ let installationFeeObj={
|
|
let dataArray = [];
|
|
let dataArray = [];
|
|
let impacRules = projectObj.project.installation_fee.getFeeRuleByFeeItem(feeItem);
|
|
let impacRules = projectObj.project.installation_fee.getFeeRuleByFeeItem(feeItem);
|
|
for(let ir of impacRules){
|
|
for(let ir of impacRules){
|
|
- let tem_data = {
|
|
|
|
- ID:feeItem.installFeeID,
|
|
|
|
- itemID:ir.ID,
|
|
|
|
- type:'feeRule',
|
|
|
|
- doc:{position: recode.code, billID:recode.ID}
|
|
|
|
- };
|
|
|
|
- dataArray.push(tem_data);
|
|
|
|
|
|
+ if(ir.position !=recode.code || ir.billID != recode.ID){
|
|
|
|
+ let tem_data = {
|
|
|
|
+ ID:feeItem.installFeeID,
|
|
|
|
+ itemID:ir.ID,
|
|
|
|
+ type:'feeRule',
|
|
|
|
+ doc:{position: recode.code, billID:recode.ID}
|
|
|
|
+ };
|
|
|
|
+ dataArray.push(tem_data);
|
|
|
|
+ }
|
|
}
|
|
}
|
|
return [dataArray,impacRules]
|
|
return [dataArray,impacRules]
|
|
},
|
|
},
|
|
@@ -962,12 +987,36 @@ let installationFeeObj={
|
|
}
|
|
}
|
|
projectObj.project.installation_fee.updateFeeItem(doc,feeItem.libID,feeItem.ID,cleanPosition,function () {
|
|
projectObj.project.installation_fee.updateFeeItem(doc,feeItem.libID,feeItem.ID,cleanPosition,function () {
|
|
me.feeItemSheet.getCell(info.row, info.col).value(info.newValue);
|
|
me.feeItemSheet.getCell(info.row, info.col).value(info.newValue);
|
|
|
|
+ me.positionButtonChecking(info.row,feeItem);
|
|
if(cleanPosition==true){
|
|
if(cleanPosition==true){
|
|
me.feeItemSheet.getCell(info.row, info.col+1).value("");
|
|
me.feeItemSheet.getCell(info.row, info.col+1).value("");
|
|
me.showFeeDetailData(feeItem.libID,feeItem.ID);
|
|
me.showFeeDetailData(feeItem.libID,feeItem.ID);
|
|
}
|
|
}
|
|
});
|
|
});
|
|
},
|
|
},
|
|
|
|
+ cleanPositionIfNeed:function (settingVal) {
|
|
|
|
+ let me = this;
|
|
|
|
+ let updateData = [];
|
|
|
|
+ let installation_fee = projectObj.project.installation_fee;
|
|
|
|
+ if(settingVal == 1){//分项费用选为“每个分部单独计取”时,分项费用类型的记取位置应自动清空。
|
|
|
|
+ for(let item of me.feeItemData){
|
|
|
|
+ if(item.feeType == '分项费用'){
|
|
|
|
+ if((item.position&&item.position!='')||(item.billID&&item.billID!='')){
|
|
|
|
+ updateData.push(installation_fee.getFeeItemUpdateData(item.libID,item.ID,{position:'', billID:''}));
|
|
|
|
+ }
|
|
|
|
+ let [dataArray,impacRules] = me.getFeeRuleUpdateDataByFeeItem(item,{code: "",ID:''});
|
|
|
|
+ dataArray.length >0? updateData = updateData.concat(dataArray):'';
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ console.log(updateData);
|
|
|
|
+ if(updateData.length > 0){
|
|
|
|
+ installation_fee.updateInstallation(updateData,function () {
|
|
|
|
+ me.refreshView();
|
|
|
|
+ })
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ },
|
|
onRationInstallValueChange:function (e,info) {
|
|
onRationInstallValueChange:function (e,info) {
|
|
let me = installationFeeObj;
|
|
let me = installationFeeObj;
|
|
let installation_fee = projectObj.project.installation_fee
|
|
let installation_fee = projectObj.project.installation_fee
|
|
@@ -1303,20 +1352,12 @@ let installationFeeObj={
|
|
});
|
|
});
|
|
})
|
|
})
|
|
},
|
|
},
|
|
- getRationByParentID:function () {
|
|
|
|
-
|
|
|
|
- }
|
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
|
|
$(function () {
|
|
$(function () {
|
|
$('#calc_installation_fee').on('shown.bs.modal',function () {
|
|
$('#calc_installation_fee').on('shown.bs.modal',function () {
|
|
- if(installationFeeObj.feeItemSpread == null){//初始化显示
|
|
|
|
- installationFeeObj.initInstallationFeeSpread();
|
|
|
|
- }else {
|
|
|
|
- installationFeeObj.showFeeItemData();
|
|
|
|
- installationFeeObj.showFeeDetailData();
|
|
|
|
- }
|
|
|
|
|
|
+ installationFeeObj.refreshView();
|
|
//radio 值设置
|
|
//radio 值设置
|
|
installationFeeObj.initSettingRadio();
|
|
installationFeeObj.initSettingRadio();
|
|
|
|
|
|
@@ -1375,8 +1416,7 @@ $(function () {
|
|
});
|
|
});
|
|
$('#btn_reset_to_default').click(function (){
|
|
$('#btn_reset_to_default').click(function (){
|
|
let ifModel = projectObj.project.installation_fee;
|
|
let ifModel = projectObj.project.installation_fee;
|
|
- let c = confirm("确定恢复系统默认值吗?");
|
|
|
|
- if(c){
|
|
|
|
|
|
+ hintBox.infoBox('操作确认', '确定恢复系统默认值吗?', 2, function () {
|
|
ifModel.resetToDefault(function () {
|
|
ifModel.resetToDefault(function () {
|
|
installationFeeObj.showFeeItemData();
|
|
installationFeeObj.showFeeItemData();
|
|
installationFeeObj.showFeeDetailData();
|
|
installationFeeObj.showFeeDetailData();
|
|
@@ -1384,9 +1424,9 @@ $(function () {
|
|
ifModel.updateInstallSetting("0",function () {
|
|
ifModel.updateInstallSetting("0",function () {
|
|
installationFeeObj.initSettingRadio();
|
|
installationFeeObj.initSettingRadio();
|
|
});
|
|
});
|
|
- }
|
|
|
|
- /* installationFeeObj.showFeeItemData();
|
|
|
|
- installationFeeObj.showFeeDetailData();*/
|
|
|
|
|
|
+ }, function () {
|
|
|
|
+
|
|
|
|
+ },['确定','取消']);
|
|
});
|
|
});
|
|
|
|
|
|
$("input[name='install_setting_radios']").each(function(){
|
|
$("input[name='install_setting_radios']").each(function(){
|
|
@@ -1397,6 +1437,7 @@ $(function () {
|
|
return;
|
|
return;
|
|
}
|
|
}
|
|
projectObj.project.installation_fee.updateInstallSetting(settingVal);
|
|
projectObj.project.installation_fee.updateInstallSetting(settingVal);
|
|
|
|
+ installationFeeObj.cleanPositionIfNeed(settingVal);
|
|
});
|
|
});
|
|
});
|
|
});
|
|
|
|
|