|
@@ -21,6 +21,20 @@ var projectObj = {
|
|
},
|
|
},
|
|
treeSelectedChanged: function (node) {
|
|
treeSelectedChanged: function (node) {
|
|
let project = projectObj.project;
|
|
let project = projectObj.project;
|
|
|
|
+ //设置选中行底色和恢复前选中行底色
|
|
|
|
+ let refreshNodes = [node];
|
|
|
|
+ if(!project.mainTree.preSelected){
|
|
|
|
+ refreshNodes.push(project.mainTree.items[0]);
|
|
|
|
+ }
|
|
|
|
+ else {
|
|
|
|
+ refreshNodes.push(project.mainTree.preSelected);
|
|
|
|
+ }
|
|
|
|
+ project.mainTree.preSelected = node;
|
|
|
|
+ projectObj.setNodesStyle(projectObj.mainController.sheet, refreshNodes);
|
|
|
|
+ /* TREE_SHEET_HELPER.massOperationSheet(projectObj.mainController.sheet, function () {
|
|
|
|
+ TREE_SHEET_HELPER.refreshTreeNodeData(projectObj.mainController.setting, projectObj.mainController.sheet, refreshNodes, false);
|
|
|
|
+ });*/
|
|
|
|
+
|
|
subViewObj.loadComments(node);
|
|
subViewObj.loadComments(node);
|
|
gljOprObj.showDataIfRationSelect(node);
|
|
gljOprObj.showDataIfRationSelect(node);
|
|
if (activeSubSheetIs(subSheetIndex.ssiCalcProgram)) {
|
|
if (activeSubSheetIs(subSheetIndex.ssiCalcProgram)) {
|
|
@@ -36,7 +50,6 @@ var projectObj = {
|
|
pageCCOprObj.clearData();
|
|
pageCCOprObj.clearData();
|
|
}
|
|
}
|
|
}
|
|
}
|
|
-
|
|
|
|
// for test interface. CSLAAAAA
|
|
// for test interface. CSLAAAAA
|
|
// projectObj.testDisplay('前四项累计值排除当前选中项' + projectObj.project.calcProgram.getBeforeTaxTotalFee([node]));
|
|
// projectObj.testDisplay('前四项累计值排除当前选中项' + projectObj.project.calcProgram.getBeforeTaxTotalFee([node]));
|
|
|
|
|
|
@@ -442,6 +455,35 @@ var projectObj = {
|
|
projectObj.mainController.refreshTreeNode([node], false);
|
|
projectObj.mainController.refreshTreeNode([node], false);
|
|
}
|
|
}
|
|
},
|
|
},
|
|
|
|
+ mainSpreadSlectionChanging: function (sender, info) {
|
|
|
|
+ console.log('bbbb');
|
|
|
|
+ let oldSel = info.oldSelections[0], newSel = info.newSelections[0];
|
|
|
|
+ let project = projectObj.project;
|
|
|
|
+ //设置选中行底色和恢复前选中行底色
|
|
|
|
+ let refreshNodes = [];
|
|
|
|
+ if(oldSel){
|
|
|
|
+ oldSel.row === -1 ? 0 : oldSel.row;
|
|
|
|
+ for(let i = 0; i < oldSel.rowCount; i++){
|
|
|
|
+ if(project.mainTree.items[i + oldSel.row]){
|
|
|
|
+ refreshNodes.push(project.mainTree.items[i + oldSel.row]);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ if(newSel){
|
|
|
|
+ newSel.row === -1 ? 0 : newSel.row;
|
|
|
|
+ for(let i = 0; i < newSel.rowCount; i++){
|
|
|
|
+ if(project.mainTree.items[i + newSel.row]){
|
|
|
|
+ refreshNodes.push(project.mainTree.items[i + newSel.row]);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ if(refreshNodes.length > 0){
|
|
|
|
+ projectObj.setNodesStyle(projectObj.mainController.sheet, refreshNodes, newSel);
|
|
|
|
+ /* TREE_SHEET_HELPER.massOperationSheet(projectObj.mainController.sheet, function () {
|
|
|
|
+ TREE_SHEET_HELPER.refreshTreeNodeData(projectObj.mainController.setting, projectObj.mainController.sheet, refreshNodes, false, true);
|
|
|
|
+ });*/
|
|
|
|
+ }
|
|
|
|
+ },
|
|
mainSpreadLeaveCell: function (sender, info) {
|
|
mainSpreadLeaveCell: function (sender, info) {
|
|
let colSetting = projectObj.mainController.setting.cols[info.col];
|
|
let colSetting = projectObj.mainController.setting.cols[info.col];
|
|
projectObj.lastCol = colSetting;
|
|
projectObj.lastCol = colSetting;
|
|
@@ -917,7 +959,10 @@ var projectObj = {
|
|
if(row == null || col == null){
|
|
if(row == null || col == null){
|
|
row = 0;
|
|
row = 0;
|
|
col = 0;
|
|
col = 0;
|
|
- }
|
|
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ }
|
|
row = parseInt(row);
|
|
row = parseInt(row);
|
|
col = parseInt(col);
|
|
col = parseInt(col);
|
|
const sheet = this.mainSpread.getActiveSheet();
|
|
const sheet = this.mainSpread.getActiveSheet();
|
|
@@ -1010,9 +1055,9 @@ var projectObj = {
|
|
},
|
|
},
|
|
|
|
|
|
//根据节点获取行style(颜色、字体加粗)
|
|
//根据节点获取行style(颜色、字体加粗)
|
|
- getNodeColorStyle: function (node, colSetting) {
|
|
|
|
|
|
+ getNodeColorStyle: function (sheet, node, colSetting) {
|
|
let colorSetting = optionsOprObj.getOption(optionsOprObj.optionsTypes.COLOROPTS);
|
|
let colorSetting = optionsOprObj.getOption(optionsOprObj.optionsTypes.COLOROPTS);
|
|
- let mapping = {DEFAULT: 'DEFAULT', DXFY: 'DXFY', FB: 'FB', UNLEAFBILL: 'UNLEAFBILL',
|
|
|
|
|
|
+ let mapping = {DEFAULT: 'DEFAULT', SELECTED: 'SELECTED', DXFY: 'DXFY', FB: 'FB', UNLEAFBILL: 'UNLEAFBILL',
|
|
FX: 'FX', BX: 'BX', UNCBBILL: 'UNCBBILL', CBBILL: 'CBBILL', ZCSB: 'ZCSB'};
|
|
FX: 'FX', BX: 'BX', UNCBBILL: 'UNCBBILL', CBBILL: 'CBBILL', ZCSB: 'ZCSB'};
|
|
let styleMap = null;
|
|
let styleMap = null;
|
|
//中文字段名,由于同一节点中,中文字体大小和数字字体大小不同
|
|
//中文字段名,由于同一节点中,中文字体大小和数字字体大小不同
|
|
@@ -1034,47 +1079,53 @@ var projectObj = {
|
|
if(!isDef(node)){
|
|
if(!isDef(node)){
|
|
return null;
|
|
return null;
|
|
}
|
|
}
|
|
- //清单大类
|
|
|
|
- if(node.sourceType === this.project.Bills.getSourceType()){
|
|
|
|
- //大项费用
|
|
|
|
- //大项费用
|
|
|
|
- if(node.data.type === billType.DXFY){
|
|
|
|
- styleMap = mapping.DXFY;
|
|
|
|
- }
|
|
|
|
- //分部
|
|
|
|
- if(node.data.type === billType.FB){
|
|
|
|
- styleMap = mapping.FB;
|
|
|
|
- }
|
|
|
|
- //分项
|
|
|
|
- else if(node.data.type === billType.FX){
|
|
|
|
- styleMap = mapping.FX;
|
|
|
|
- }
|
|
|
|
- //补项
|
|
|
|
- else if(node.data.type === billType.BX){
|
|
|
|
- styleMap = mapping.BX;
|
|
|
|
- }
|
|
|
|
- //清单
|
|
|
|
- else if(node.data.type === billType.BILL){
|
|
|
|
- //非叶子节点的清单
|
|
|
|
- if(node.source.children.length > 0){
|
|
|
|
- styleMap = mapping.UNLEAFBILL;
|
|
|
|
|
|
+ //选中行
|
|
|
|
+ if(node === this.project.mainTree.selected){
|
|
|
|
+ styleMap = mapping.SELECTED;
|
|
|
|
+ }
|
|
|
|
+ //非选中行
|
|
|
|
+ else {
|
|
|
|
+ //清单大类
|
|
|
|
+ if(node.sourceType === this.project.Bills.getSourceType()){
|
|
|
|
+ //大项费用
|
|
|
|
+ if(node.data.type === billType.DXFY){
|
|
|
|
+ styleMap = mapping.DXFY;
|
|
}
|
|
}
|
|
- //未使用基数计算的叶子节点的清单
|
|
|
|
- else if(node.source.children.length === 0 && (!isDef(node.data.calcBase) || node.data.calcBase === '')){
|
|
|
|
- styleMap = mapping.UNCBBILL;
|
|
|
|
|
|
+ //分部
|
|
|
|
+ if(node.data.type === billType.FB){
|
|
|
|
+ styleMap = mapping.FB;
|
|
}
|
|
}
|
|
- //使用基数计算的叶子节点的清单
|
|
|
|
- else if(node.source.children.length === 0 && isDef(node.data.calcBase && node.data.calcBaseValue !== '')){
|
|
|
|
- styleMap = mapping.CBBILL;
|
|
|
|
|
|
+ //分项
|
|
|
|
+ else if(node.data.type === billType.FX){
|
|
|
|
+ styleMap = mapping.FX;
|
|
|
|
+ }
|
|
|
|
+ //补项
|
|
|
|
+ else if(node.data.type === billType.BX){
|
|
|
|
+ styleMap = mapping.BX;
|
|
|
|
+ }
|
|
|
|
+ //清单
|
|
|
|
+ else if(node.data.type === billType.BILL){
|
|
|
|
+ //非叶子节点的清单
|
|
|
|
+ if(node.source.children.length > 0){
|
|
|
|
+ styleMap = mapping.UNLEAFBILL;
|
|
|
|
+ }
|
|
|
|
+ //未使用基数计算的叶子节点的清单
|
|
|
|
+ else if(node.source.children.length === 0 && (!isDef(node.data.calcBase) || node.data.calcBase === '')){
|
|
|
|
+ styleMap = mapping.UNCBBILL;
|
|
|
|
+ }
|
|
|
|
+ //使用基数计算的叶子节点的清单
|
|
|
|
+ else if(node.source.children.length === 0 && isDef(node.data.calcBase && node.data.calcBaseValue !== '')){
|
|
|
|
+ styleMap = mapping.CBBILL;
|
|
|
|
+ }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- }
|
|
|
|
- //定额下的主材、设备
|
|
|
|
- else if(node.sourceType === this.project.ration_glj.getSourceType()){
|
|
|
|
- styleMap = mapping.ZCSB;
|
|
|
|
- }
|
|
|
|
- else {
|
|
|
|
- styleMap = mapping.DEFAULT;
|
|
|
|
|
|
+ //定额下的主材、设备
|
|
|
|
+ else if(node.sourceType === this.project.ration_glj.getSourceType()){
|
|
|
|
+ styleMap = mapping.ZCSB;
|
|
|
|
+ }
|
|
|
|
+ else {
|
|
|
|
+ styleMap = mapping.DEFAULT;
|
|
|
|
+ }
|
|
}
|
|
}
|
|
let styleSetting = colorSetting[styleMap];
|
|
let styleSetting = colorSetting[styleMap];
|
|
let defaultSetting = colorSetting[mapping.DEFAULT];
|
|
let defaultSetting = colorSetting[mapping.DEFAULT];
|
|
@@ -1131,6 +1182,16 @@ var projectObj = {
|
|
}
|
|
}
|
|
return style;
|
|
return style;
|
|
},
|
|
},
|
|
|
|
+ //设置节点style
|
|
|
|
+ setNodesStyle: function (sheet, nodes) {
|
|
|
|
+ let me = this;
|
|
|
|
+ TREE_SHEET_HELPER.massOperationSheet(sheet, function () {
|
|
|
|
+ for(let node of nodes){
|
|
|
|
+ sheet.setStyle(node.serialNo(), -1, me.getNodeColorStyle(sheet, node));
|
|
|
|
+ }
|
|
|
|
+ });
|
|
|
|
+
|
|
|
|
+},
|
|
loadLockBillsButton:function () {
|
|
loadLockBillsButton:function () {
|
|
if(projectInfoObj.projectInfo.property.lockBills == true){
|
|
if(projectInfoObj.projectInfo.property.lockBills == true){
|
|
$("a[name='lockBills']").prop("title","解锁清单");
|
|
$("a[name='lockBills']").prop("title","解锁清单");
|
|
@@ -1141,7 +1202,6 @@ var projectObj = {
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
-
|
|
|
|
};
|
|
};
|
|
// 点击合计框中的复制
|
|
// 点击合计框中的复制
|
|
$("body").on("click", "#total-tips a", function() {
|
|
$("body").on("click", "#total-tips a", function() {
|