|
|
@@ -1164,11 +1164,68 @@ var projectObj = {
|
|
|
}
|
|
|
return true
|
|
|
},
|
|
|
-
|
|
|
+ // 注册自定义插入清单数量
|
|
|
+ registerFlexibleInsertBillMenu: function (name) {
|
|
|
+ const project = projectObj.project;
|
|
|
+ const insertBillsHtml = `<span>${name} <input id='insert-bills-number' class="menu-input" type="text" value="1" onfocus="this.select()"> 行</span>`;
|
|
|
+ return sheetCommonObj.registerInputContextMenuItem('insertBills', insertBillsHtml, 'fa-sign-in', async function () {
|
|
|
+ if (project.mainTree.selected.data.type == billType.DXFY) {
|
|
|
+ if (project.mainTree.selected.data.calcBase && project.mainTree.selected.data.calcBase != "") {
|
|
|
+ alert("当前有基数计算,不能插入子项。");
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ try {
|
|
|
+ const number = +$('#insert-bills-number').val();
|
|
|
+ if (!number) {
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ $.bootstrapLoading.start();
|
|
|
+ const postData = ProjectController.getBillsPostData(number);
|
|
|
+ const newNodes = await ProjectController.addBillsByData(postData, true);
|
|
|
+ projectObj.mainController.setTreeSelected(newNodes[0]);
|
|
|
+ projectObj.selectColAndFocus(project.mainTree.selected);
|
|
|
+ } catch (err) {
|
|
|
+ console.log(err);
|
|
|
+ if (!$('hintBox_form').is(':visible')) {
|
|
|
+ alert(err);
|
|
|
+ }
|
|
|
+ } finally {
|
|
|
+ $.bootstrapLoading.end();
|
|
|
+ }
|
|
|
+ });
|
|
|
+ },
|
|
|
+ // 注册自定义插入定额数量
|
|
|
+ registerFlexibleInsertRatoinMenu: function () {
|
|
|
+ const project = projectObj.project;
|
|
|
+ const insertRationHtml = `<span>插入定额 <input id='insert-ration-number' class="menu-input" type="text" value="1" onfocus="this.select()"> 行</span>`;
|
|
|
+ return sheetCommonObj.registerInputContextMenuItem('insertRation', insertRationHtml, 'fa-sign-in', async function () {
|
|
|
+ try {
|
|
|
+ const number = +$('#insert-ration-number').val();
|
|
|
+ if (!number) {
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ $.bootstrapLoading.start();
|
|
|
+ const newData = [];
|
|
|
+ for (let i = 0; i < number; i++) {
|
|
|
+ newData.push({ itemQuery: null, rationType: rationType.ration });
|
|
|
+ }
|
|
|
+ await project.Ration.addMultiRation(newData);
|
|
|
+ projectObj.setActiveCell('quantity', true);
|
|
|
+ } catch (err) {
|
|
|
+ console.log(err);
|
|
|
+ if (!$('hintBox_form').is(':visible')) {
|
|
|
+ alert(err);
|
|
|
+ }
|
|
|
+ } finally {
|
|
|
+ $.bootstrapLoading.end();
|
|
|
+ }
|
|
|
+ });
|
|
|
+ },
|
|
|
loadMainSpreadContextMenu: function () {
|
|
|
var project = this.project, spread = this.mainSpread, controller = this.mainController;
|
|
|
let insertBillsName = project.projectInfo.property && project.projectInfo.property.valuationType == commonConstants.ValuationType.BUDGET?"插入项目节":"插入清单";//右键“插入清单”改文字为“插入项目节”,工程量清单中保持不变。
|
|
|
- $.contextMenu({
|
|
|
+ $.contextMenu({
|
|
|
selector: '#billsSpread',
|
|
|
selectableSubMenu: true,
|
|
|
build: function ($trigger, e) {
|
|
|
@@ -1188,8 +1245,8 @@ var projectObj = {
|
|
|
callback: function (key, opt) {
|
|
|
ProjectController.addRootBill(project, controller);
|
|
|
},
|
|
|
- visible: function(key, opt){
|
|
|
- return project.mainTree.selected&&project.mainTree.selected.parent==null;
|
|
|
+ visible: function (key, opt) {
|
|
|
+ return project.mainTree.selected && project.mainTree.selected.parent == null;
|
|
|
}
|
|
|
},
|
|
|
"insertFB": {
|
|
|
@@ -1200,14 +1257,14 @@ var projectObj = {
|
|
|
return true;
|
|
|
}
|
|
|
let selected = project.mainTree.selected;
|
|
|
- if(projectObj.project.isBillsLocked()== false&&selected&&selected.sourceType==project.Bills.getSourceType()){
|
|
|
- if(selected.data.type==billType.FB){
|
|
|
+ if (projectObj.project.isBillsLocked() == false && selected && selected.sourceType == project.Bills.getSourceType()) {
|
|
|
+ if (selected.data.type == billType.FB) {
|
|
|
return false;
|
|
|
}
|
|
|
- if(isFlag(selected.data)&&selected.data.flagsIndex.fixed.flag==fixedFlag.SUB_ENGINERRING){//焦点行是分部分项工程
|
|
|
- if(selected.children.length>0){
|
|
|
- return selected.children[0].data.type==billType.FX ||selected.children[0].data.type==billType.BX;//焦点行是分部分项工程,且子项是分项或补项
|
|
|
- }else {
|
|
|
+ if (isFlag(selected.data) && selected.data.flagsIndex.fixed.flag == fixedFlag.SUB_ENGINERRING) {//焦点行是分部分项工程
|
|
|
+ if (selected.children.length > 0) {
|
|
|
+ return selected.children[0].data.type == billType.FX || selected.children[0].data.type == billType.BX;//焦点行是分部分项工程,且子项是分项或补项
|
|
|
+ } else {
|
|
|
return false
|
|
|
}
|
|
|
}
|
|
|
@@ -1218,10 +1275,10 @@ var projectObj = {
|
|
|
ProjectController.addFB(project, controller);
|
|
|
projectObj.selectColAndFocus(project.mainTree.selected);
|
|
|
},
|
|
|
- visible: function(key, opt){
|
|
|
- if(project.mainTree.selected){
|
|
|
- return project.Bills.isFBFX(project.mainTree.selected );//不属于分部分项的话隐藏
|
|
|
- }else {
|
|
|
+ visible: function (key, opt) {
|
|
|
+ if (project.mainTree.selected) {
|
|
|
+ return project.Bills.isFBFX(project.mainTree.selected);//不属于分部分项的话隐藏
|
|
|
+ } else {
|
|
|
return false;
|
|
|
}
|
|
|
}
|
|
|
@@ -1234,21 +1291,21 @@ var projectObj = {
|
|
|
return true;
|
|
|
}
|
|
|
let selected = project.mainTree.selected;
|
|
|
- if(projectObj.project.isBillsLocked()== false&& selected&&selected.sourceType==project.Bills.getSourceType()){
|
|
|
- if(selected.data.type==billType.FX||selected.data.type==billType.BX){//焦点行是分项,有效显示
|
|
|
+ if (projectObj.project.isBillsLocked() == false && selected && selected.sourceType == project.Bills.getSourceType()) {
|
|
|
+ if (selected.data.type == billType.FX || selected.data.type == billType.BX) {//焦点行是分项,有效显示
|
|
|
return false
|
|
|
}
|
|
|
- if(selected.data.type==billType.FB){//点行是分部,
|
|
|
- if(selected.children.length>0){//且有子项,子项是分部,灰显。
|
|
|
+ if (selected.data.type == billType.FB) {//点行是分部,
|
|
|
+ if (selected.children.length > 0) {//且有子项,子项是分部,灰显。
|
|
|
return selected.children[0].data.type == billType.FB
|
|
|
- }else {
|
|
|
+ } else {
|
|
|
return false;
|
|
|
}
|
|
|
}
|
|
|
- if(isFlag(selected.data)&&selected.data.flagsIndex.fixed.flag==fixedFlag.SUB_ENGINERRING){//焦点行是分部分项工程
|
|
|
- if(selected.children.length>0){
|
|
|
- return selected.children[0].data.type==billType.FB;//焦点行是分部分项工程,且子项是分部时灰显
|
|
|
- }else {
|
|
|
+ if (isFlag(selected.data) && selected.data.flagsIndex.fixed.flag == fixedFlag.SUB_ENGINERRING) {//焦点行是分部分项工程
|
|
|
+ if (selected.children.length > 0) {
|
|
|
+ return selected.children[0].data.type == billType.FB;//焦点行是分部分项工程,且子项是分部时灰显
|
|
|
+ } else {
|
|
|
return false
|
|
|
}
|
|
|
}
|
|
|
@@ -1259,49 +1316,37 @@ var projectObj = {
|
|
|
ProjectController.addFX(project, controller);
|
|
|
projectObj.selectColAndFocus(project.mainTree.selected);
|
|
|
},
|
|
|
- visible: function(key, opt){
|
|
|
- if(project.mainTree.selected){
|
|
|
- return project.Bills.isFBFX(project.mainTree.selected );//不属于分部分项的话隐藏
|
|
|
- }else {
|
|
|
+ visible: function (key, opt) {
|
|
|
+ if (project.mainTree.selected) {
|
|
|
+ return project.Bills.isFBFX(project.mainTree.selected);//不属于分部分项的话隐藏
|
|
|
+ } else {
|
|
|
return false;
|
|
|
}
|
|
|
}
|
|
|
},
|
|
|
"insertBills": {
|
|
|
- name: insertBillsName,
|
|
|
- icon: 'fa-sign-in',
|
|
|
+ type: projectObj.registerFlexibleInsertBillMenu(insertBillsName),
|
|
|
disabled: function () {
|
|
|
if (projectReadOnly) {
|
|
|
return true;
|
|
|
}
|
|
|
let selected = project.mainTree.selected;
|
|
|
- if(!(projectObj.project.isBillsLocked()== true && project.withinBillsLocked(selected)) && selected && selected.sourceType === project.Bills.getSourceType()){
|
|
|
+ if (!(projectObj.project.isBillsLocked() == true && project.withinBillsLocked(selected)) && selected && selected.sourceType === project.Bills.getSourceType()) {
|
|
|
return false
|
|
|
}
|
|
|
return true;
|
|
|
},
|
|
|
- callback: function (key, opt) {
|
|
|
- if(project.mainTree.selected.data.type == billType.DXFY){
|
|
|
- if(project.mainTree.selected.data.calcBase&&project.mainTree.selected.data.calcBase!=""){
|
|
|
- alert("当前有基数计算,不能插入子项。");
|
|
|
- return;
|
|
|
- }
|
|
|
+ visible: function (key, opt) {
|
|
|
+ if (project.mainTree.selected) {
|
|
|
+ return project.Bills.isFBFX(project.mainTree.selected) == true ? false : true;
|
|
|
+ } else {
|
|
|
+ return false;
|
|
|
}
|
|
|
- ProjectController.addBills(project, controller);
|
|
|
- projectObj.selectColAndFocus(project.mainTree.selected);
|
|
|
- },
|
|
|
- visible: function(key, opt){
|
|
|
- if(project.mainTree.selected){
|
|
|
- return project.Bills.isFBFX(project.mainTree.selected)==true?false:true;
|
|
|
- }else {
|
|
|
- return false;
|
|
|
- }
|
|
|
- }
|
|
|
+ }
|
|
|
},
|
|
|
"spr1": '--------',
|
|
|
"insertRation": {
|
|
|
- name: "插入定额",
|
|
|
- icon: 'fa-sign-in',
|
|
|
+ type: projectObj.registerFlexibleInsertRatoinMenu(),
|
|
|
disabled: function () {
|
|
|
if (projectReadOnly) {
|
|
|
return true;
|
|
|
@@ -1311,37 +1356,29 @@ var projectObj = {
|
|
|
// 工具栏要加按钮,且不能隐藏。菜单可以隐藏,两者又必须统一,所以启用新规则。怕以后又要改回来,所以保留。 CSL, 2018-01-02
|
|
|
return !project.Ration.canAdd(project.mainTree.selected);
|
|
|
},
|
|
|
- callback: function (key, opt) {
|
|
|
- project.Ration.addNewRation(null,rationType.ration,projectObj.selectColAndFocus,false);
|
|
|
- // ProjectController.addRation(project, controller, rationType.ration);
|
|
|
- }/*,
|
|
|
- visible: function(key, opt){
|
|
|
- var selected = project.mainTree.selected;
|
|
|
- return canInsertRationNode(selected);
|
|
|
- }*/
|
|
|
},
|
|
|
"insertGLJ": {
|
|
|
- name: "插入工料机",
|
|
|
- icon: 'fa-sign-in',
|
|
|
- disabled: function () {
|
|
|
- if (projectReadOnly) {
|
|
|
- return true;
|
|
|
- }
|
|
|
- // var selected = project.mainTree.selected;
|
|
|
- // return project.Ration.addRationChecking(selected); // Vincent, 2018-01-02
|
|
|
- return !project.Ration.canAdd(project.mainTree.selected);
|
|
|
- },
|
|
|
- callback: function (key, opt) {
|
|
|
- let selected = project.mainTree.selected;
|
|
|
- if(selected.data.calcBase&&selected.data.calcBase!=""){
|
|
|
- alert("当前有基数计算,不能插入定额/量价/工料机。");
|
|
|
- return;
|
|
|
+ name: "插入工料机",
|
|
|
+ icon: 'fa-sign-in',
|
|
|
+ disabled: function () {
|
|
|
+ if (projectReadOnly) {
|
|
|
+ return true;
|
|
|
+ }
|
|
|
+ // var selected = project.mainTree.selected;
|
|
|
+ // return project.Ration.addRationChecking(selected); // Vincent, 2018-01-02
|
|
|
+ return !project.Ration.canAdd(project.mainTree.selected);
|
|
|
+ },
|
|
|
+ callback: function (key, opt) {
|
|
|
+ let selected = project.mainTree.selected;
|
|
|
+ if (selected.data.calcBase && selected.data.calcBase != "") {
|
|
|
+ alert("当前有基数计算,不能插入定额/量价/工料机。");
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ getGLJData('insert');// ProjectController.addRation(project, controller, rationType.volumePrice);
|
|
|
+ },
|
|
|
+ visible: function (key, opt) {
|
|
|
+ return false
|
|
|
}
|
|
|
- getGLJData('insert');// ProjectController.addRation(project, controller, rationType.volumePrice);
|
|
|
- },
|
|
|
- visible: function(key, opt){
|
|
|
- return false
|
|
|
- }
|
|
|
},
|
|
|
"insertLJ": {
|
|
|
name: "插入量价",//插入量价不需要自动定位到编号列
|
|
|
@@ -1353,29 +1390,29 @@ var projectObj = {
|
|
|
return !project.Ration.canAdd(project.mainTree.selected);
|
|
|
},
|
|
|
callback: function (key, opt) {
|
|
|
- /* project.Ration.addNewRation(null,rationType.volumePrice,function (newNode) {
|
|
|
- projectObj.selectColAndFocus(newNode,null);
|
|
|
- },true);*/
|
|
|
+ /* project.Ration.addNewRation(null,rationType.volumePrice,function (newNode) {
|
|
|
+ projectObj.selectColAndFocus(newNode,null);
|
|
|
+ },true);*/
|
|
|
},
|
|
|
- items:{
|
|
|
- insertLabour:{
|
|
|
+ items: {
|
|
|
+ insertLabour: {
|
|
|
name: "人工",
|
|
|
icon: 'fa-sign-in',
|
|
|
- callback:function(key){
|
|
|
+ callback: function (key) {
|
|
|
project.Ration.insertVolumePrice(gljType.LABOUR);
|
|
|
}
|
|
|
},
|
|
|
- insertMaterial:{
|
|
|
- name:"材料" ,
|
|
|
+ insertMaterial: {
|
|
|
+ name: "材料",
|
|
|
icon: 'fa-sign-in',
|
|
|
- callback:function(key){
|
|
|
+ callback: function (key) {
|
|
|
project.Ration.insertVolumePrice(gljType.GENERAL_MATERIAL);
|
|
|
}
|
|
|
},
|
|
|
- insertMachine:{
|
|
|
- name:"机械" ,
|
|
|
+ insertMachine: {
|
|
|
+ name: "机械",
|
|
|
icon: 'fa-sign-in',
|
|
|
- callback:function(key){
|
|
|
+ callback: function (key) {
|
|
|
project.Ration.insertVolumePrice(gljType.GENERAL_MACHINE);
|
|
|
}
|
|
|
}
|
|
|
@@ -1392,13 +1429,13 @@ var projectObj = {
|
|
|
},
|
|
|
callback: function (key, opt) {
|
|
|
let selected = project.mainTree.selected;
|
|
|
- if(selected.data.calcBase&&selected.data.calcBase!=""){
|
|
|
+ if (selected.data.calcBase && selected.data.calcBase != "") {
|
|
|
alert("当前有基数计算,不能插入定额/量价/工料机。");
|
|
|
return;
|
|
|
}
|
|
|
getGLJData('insertEquipment');// ProjectController.addRation(project, controller, rationType.volumePrice);
|
|
|
},
|
|
|
- visible: function(key, opt){//2018-11-08 新需求,这个按钮先隐藏,有需要再放开
|
|
|
+ visible: function (key, opt) {//2018-11-08 新需求,这个按钮先隐藏,有需要再放开
|
|
|
let selected = project.mainTree.selected;
|
|
|
return projectObj.isInsertEquipmentVisable(selected);
|
|
|
}
|
|
|
@@ -1416,18 +1453,18 @@ var projectObj = {
|
|
|
callback: function (key, opt) {
|
|
|
installationFeeObj.showCalcInstallSettingDiv();
|
|
|
},
|
|
|
- visible: function(key, opt){
|
|
|
+ visible: function (key, opt) {
|
|
|
return projectObj.project.isInstall();
|
|
|
}
|
|
|
},
|
|
|
- "cleanzmhs":{
|
|
|
- name:'清空定额调整',
|
|
|
+ "cleanzmhs": {
|
|
|
+ name: '清空定额调整',
|
|
|
icon: 'fa-remove',
|
|
|
callback: function (key, opt) {
|
|
|
let selected = project.mainTree.selected;
|
|
|
- projectObj.project.Ration.updateRationCodes([{'node':selected, value:selected.data.code}],true);
|
|
|
+ projectObj.project.Ration.updateRationCodes([{ 'node': selected, value: selected.data.code }], true);
|
|
|
},
|
|
|
- visible: function(key, opt){
|
|
|
+ visible: function (key, opt) {
|
|
|
let selected = project.mainTree.selected;
|
|
|
if (selected && selected.sourceType == ModuleNames.ration) {
|
|
|
return true;
|
|
|
@@ -1439,7 +1476,7 @@ var projectObj = {
|
|
|
if (projectReadOnly) {
|
|
|
return true;
|
|
|
}
|
|
|
- if(selected && selected.data.type != rationType.ration){
|
|
|
+ if (selected && selected.data.type != rationType.ration) {
|
|
|
return true;
|
|
|
}
|
|
|
return false;
|
|
|
@@ -1539,10 +1576,10 @@ var projectObj = {
|
|
|
},
|
|
|
callback: function () {
|
|
|
var selected = project.mainTree.selected;
|
|
|
- if(selected.sourceType == project.Bills.getSourceType()&&selected.data.type==billType.FB&&selected.children.length<=0){//选中的是分部,并且没有子项,直接删除
|
|
|
+ if (selected.sourceType == project.Bills.getSourceType() && selected.data.type == billType.FB && selected.children.length <= 0) {//选中的是分部,并且没有子项,直接删除
|
|
|
project.Bills.deleteSelectedNodes();//project.Bills.deleteSelectedNode();
|
|
|
- }else {
|
|
|
- $("#delete_row").modal({show:true});//弹出删除提示框;
|
|
|
+ } else {
|
|
|
+ $("#delete_row").modal({ show: true });//弹出删除提示框;
|
|
|
}
|
|
|
}
|
|
|
},
|
|
|
@@ -1557,11 +1594,11 @@ var projectObj = {
|
|
|
return true;
|
|
|
}
|
|
|
},
|
|
|
- visible:function(key, opt){//2019-11-11 新需求重新开放右键“造价计算”。
|
|
|
+ visible: function (key, opt) {//2019-11-11 新需求重新开放右键“造价计算”。
|
|
|
return true;
|
|
|
}
|
|
|
},
|
|
|
- "spr4":'--------',
|
|
|
+ "spr4": '--------',
|
|
|
"copyBlock": {
|
|
|
name: '复制整块',
|
|
|
icon: 'fa-copy',
|
|
|
@@ -1571,10 +1608,10 @@ var projectObj = {
|
|
|
}
|
|
|
let selection = projectObj.mainSpread.getActiveSheet().getSelections()[0];
|
|
|
let firstNode = projectObj.project.mainTree.items[selection.row];//当多选的情况,用mainTree.selected判断不正确,要用第一个选中的节点
|
|
|
- for(let i = 0;i< selection.rowCount;i++){ //多选的时候判断所有与第一个节点同级的节点
|
|
|
+ for (let i = 0; i < selection.rowCount; i++) { //多选的时候判断所有与第一个节点同级的节点
|
|
|
let temNode = projectObj.project.mainTree.items[selection.row + i];
|
|
|
- if(firstNode.getParentID() == temNode.getParentID()){
|
|
|
- if(BlockController.copyBtnDisable(temNode) == true){
|
|
|
+ if (firstNode.getParentID() == temNode.getParentID()) {
|
|
|
+ if (BlockController.copyBtnDisable(temNode) == true) {
|
|
|
return true;
|
|
|
}
|
|
|
}
|
|
|
@@ -1588,14 +1625,14 @@ var projectObj = {
|
|
|
setTimeout(function () {
|
|
|
BlockController.copyBlock(selections[0]);
|
|
|
$.bootstrapLoading.end();
|
|
|
- },100)
|
|
|
+ }, 100)
|
|
|
|
|
|
}
|
|
|
},
|
|
|
"pasteBlock": {
|
|
|
name: '粘贴整块',
|
|
|
icon: 'fa-paste',
|
|
|
- disabled: function (){
|
|
|
+ disabled: function () {
|
|
|
if (projectReadOnly) {
|
|
|
return true;
|
|
|
}
|
|
|
@@ -1608,7 +1645,7 @@ var projectObj = {
|
|
|
"recoverDeletedNodes": {
|
|
|
name: '恢复删除节点',
|
|
|
icon: 'fa-undo',
|
|
|
- disabled: function (){
|
|
|
+ disabled: function () {
|
|
|
return BlockController.recoverBlockDisabled();
|
|
|
},
|
|
|
callback: function () {
|
|
|
@@ -1621,14 +1658,14 @@ var projectObj = {
|
|
|
disabled: function () {
|
|
|
return projectReadOnly;
|
|
|
},
|
|
|
- visible: function(key, opt){
|
|
|
- let selected = project.mainTree.selected;
|
|
|
- return selected.sourceType==ModuleNames.bills&&project.Bills.isEngineerEst(selected);//当焦点行是“专业工程暂估价”时,右键可见并有效。
|
|
|
+ visible: function (key, opt) {
|
|
|
+ let selected = project.mainTree.selected;
|
|
|
+ return selected.sourceType == ModuleNames.bills && project.Bills.isEngineerEst(selected);//当焦点行是“专业工程暂估价”时,右键可见并有效。
|
|
|
},
|
|
|
callback: function () {
|
|
|
let node = project.mainTree.selected;//project.Bills.getNodeByFlag(project.mainTree.selected,fixedFlag.ENGINEERING_ESITIMATE);
|
|
|
- if(node){
|
|
|
- projectObj.editContent(node,'engineeringContent');
|
|
|
+ if (node) {
|
|
|
+ projectObj.editContent(node, 'engineeringContent');
|
|
|
}
|
|
|
}
|
|
|
},
|
|
|
@@ -1638,14 +1675,14 @@ var projectObj = {
|
|
|
disabled: function () {
|
|
|
return projectReadOnly;
|
|
|
},
|
|
|
- visible: function(key, opt){
|
|
|
- let selected = project.mainTree.selected;
|
|
|
- return selected.sourceType==ModuleNames.bills&&project.Bills.isTotalService(selected);//当焦点行是“总承包服务费”时,右键可见并有效。
|
|
|
+ visible: function (key, opt) {
|
|
|
+ let selected = project.mainTree.selected;
|
|
|
+ return selected.sourceType == ModuleNames.bills && project.Bills.isTotalService(selected);//当焦点行是“总承包服务费”时,右键可见并有效。
|
|
|
},
|
|
|
callback: function () {
|
|
|
let node = project.mainTree.selected;//project.Bills.getNodeByFlag(project.mainTree.selected,fixedFlag.TURN_KEY_CONTRACT);
|
|
|
- if(node){
|
|
|
- projectObj.editContent(node,'serviceContent');
|
|
|
+ if (node) {
|
|
|
+ projectObj.editContent(node, 'serviceContent');
|
|
|
}
|
|
|
}
|
|
|
},
|
|
|
@@ -1655,48 +1692,48 @@ var projectObj = {
|
|
|
disabled: function () {
|
|
|
return projectReadOnly;
|
|
|
},
|
|
|
- visible: function(key, opt){
|
|
|
- let selected = project.mainTree.selected;
|
|
|
- return selected.sourceType==ModuleNames.bills&&project.Bills.isClaimVisa(selected);//当焦点行是“签证及索赔计价”时,右键可见并有效。
|
|
|
+ visible: function (key, opt) {
|
|
|
+ let selected = project.mainTree.selected;
|
|
|
+ return selected.sourceType == ModuleNames.bills && project.Bills.isClaimVisa(selected);//当焦点行是“签证及索赔计价”时,右键可见并有效。
|
|
|
},
|
|
|
callback: function () {
|
|
|
let node = project.mainTree.selected;//project.Bills.getNodeByFlag(project.mainTree.selected,fixedFlag.CLAIM_VISA);
|
|
|
- if(node){
|
|
|
- projectObj.editContent(node,'claimVisa');
|
|
|
+ if (node) {
|
|
|
+ projectObj.editContent(node, 'claimVisa');
|
|
|
}
|
|
|
}
|
|
|
},
|
|
|
- "replaceMaterial":{
|
|
|
- name:'智能材料替换',
|
|
|
+ "replaceMaterial": {
|
|
|
+ name: '智能材料替换',
|
|
|
icon: 'fa-edit',
|
|
|
- disabled:function (key,opt) {
|
|
|
+ disabled: function (key, opt) {
|
|
|
if (projectReadOnly) {
|
|
|
return true;
|
|
|
}
|
|
|
- let selected = project.mainTree.selected;
|
|
|
- return selected.sourceType==ModuleNames.bills ?!(project.Bills.isFXorBX(selected)||selected.source.children.length ==0):true//是分项、补项或叶子清单才有效;
|
|
|
+ let selected = project.mainTree.selected;
|
|
|
+ return selected.sourceType == ModuleNames.bills ? !(project.Bills.isFXorBX(selected) || selected.source.children.length == 0) : true//是分项、补项或叶子清单才有效;
|
|
|
},
|
|
|
- callback:function(){
|
|
|
+ callback: function () {
|
|
|
MaterialController.replaceMaterial([project.mainTree.selected]);
|
|
|
},
|
|
|
- visible: function(key, opt){//2018-11-15 暂时隐藏
|
|
|
+ visible: function (key, opt) {//2018-11-15 暂时隐藏
|
|
|
return false
|
|
|
}
|
|
|
},
|
|
|
- "createBlocks":{
|
|
|
- name:'生成组价模板',
|
|
|
+ "createBlocks": {
|
|
|
+ name: '生成组价模板',
|
|
|
icon: 'fa-puzzle-piece',
|
|
|
- disabled:function (key,opt) {
|
|
|
+ disabled: function (key, opt) {
|
|
|
if (projectReadOnly) {
|
|
|
return true;
|
|
|
}
|
|
|
let selected = project.mainTree.selected;
|
|
|
return selected.sourceType != ModuleNames.bills;
|
|
|
},
|
|
|
- callback: function(){
|
|
|
+ callback: function () {
|
|
|
blockLibObj.checkShow();
|
|
|
},
|
|
|
- visible: function(key, opt){
|
|
|
+ visible: function (key, opt) {
|
|
|
return G_SHOW_BLOCK_LIB;
|
|
|
}
|
|
|
}
|