|
@@ -904,6 +904,7 @@ var projectObj = {
|
|
|
// that.project.initCalcFields();
|
|
|
let str = JSON.stringify(that.project.projSetting.main_tree_col);
|
|
|
that.project.projSetting.mainGridSetting = JSON.parse(str);
|
|
|
+ console.log(that.project.projSetting.mainGridSetting);
|
|
|
that.project.projSetting.mainGridSetting.frozenCols = 4;
|
|
|
TREE_SHEET_HELPER.initSetting($('#billsSpread')[0], that.project.projSetting.mainGridSetting);
|
|
|
that.project.projSetting.mainGridSetting.setAutoFitRow = MainTreeCol.getEvent("setAutoFitRow");
|
|
@@ -977,9 +978,9 @@ var projectObj = {
|
|
|
that.mainSpread.bind(GC.Spread.Sheets.Events.ColumnWidthChanged, that.onColumnWidthChanged);
|
|
|
that.mainSpread.bind(GC.Spread.Sheets.Events.ClipboardPasting, that.onClipboardPasting);
|
|
|
//let loadOtherStartTime = +new Date();
|
|
|
- if(!projectReadOnly){
|
|
|
+ //if(!projectReadOnly){
|
|
|
that.loadMainSpreadContextMenu();
|
|
|
- }
|
|
|
+ //}
|
|
|
socketObject.connect();//连接socket服务器
|
|
|
let endTime = +new Date();
|
|
|
console.log(`其它时间——${endTime - endShowTime}`);
|
|
@@ -1169,7 +1170,7 @@ var projectObj = {
|
|
|
name: "插入大项费用",
|
|
|
icon: 'fa-sign-in',
|
|
|
disabled: function () {
|
|
|
- return projectObj.project.isBillsLocked() && project.withinBillsLocked(project.mainTree.selected);
|
|
|
+ return projectReadOnly || (projectObj.project.isBillsLocked() && project.withinBillsLocked(project.mainTree.selected));
|
|
|
//return project.mainTree.selected ? project.mainTree.selected.sourceType !== project.Bills.getSourceType() : false;
|
|
|
},
|
|
|
callback: function (key, opt) {
|
|
@@ -1183,6 +1184,9 @@ var projectObj = {
|
|
|
name: "插入分部",
|
|
|
icon: 'fa-sign-in',
|
|
|
disabled: function () {
|
|
|
+ if (projectReadOnly) {
|
|
|
+ return true;
|
|
|
+ }
|
|
|
let selected = project.mainTree.selected;
|
|
|
if(projectObj.project.isBillsLocked()== false&&selected&&selected.sourceType==project.Bills.getSourceType()){
|
|
|
if(selected.data.type==billType.FB){
|
|
@@ -1214,6 +1218,9 @@ var projectObj = {
|
|
|
name: "插入分项",
|
|
|
icon: 'fa-sign-in',
|
|
|
disabled: function () {
|
|
|
+ if (projectReadOnly) {
|
|
|
+ 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){//焦点行是分项,有效显示
|
|
@@ -1252,6 +1259,9 @@ var projectObj = {
|
|
|
name: "插入清单",
|
|
|
icon: 'fa-sign-in',
|
|
|
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()){
|
|
|
return false
|
|
@@ -1281,6 +1291,9 @@ var projectObj = {
|
|
|
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
|
|
|
// 工具栏要加按钮,且不能隐藏。菜单可以隐藏,两者又必须统一,所以启用新规则。怕以后又要改回来,所以保留。 CSL, 2018-01-02
|
|
@@ -1299,6 +1312,9 @@ var projectObj = {
|
|
|
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);
|
|
@@ -1351,6 +1367,9 @@ var projectObj = {
|
|
|
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);
|
|
@@ -1376,6 +1395,9 @@ var projectObj = {
|
|
|
name: "计取安装费用",
|
|
|
icon: 'fa-sign-in',
|
|
|
disabled: function () {
|
|
|
+ if (projectReadOnly) {
|
|
|
+ return true;
|
|
|
+ }
|
|
|
return false;
|
|
|
},
|
|
|
callback: function (key, opt) {
|
|
@@ -1389,6 +1411,9 @@ var projectObj = {
|
|
|
name: '删除',
|
|
|
icon: 'fa-remove',
|
|
|
disabled: function () {
|
|
|
+ if (projectReadOnly) {
|
|
|
+ return true;
|
|
|
+ }
|
|
|
return !ifCanDelete();
|
|
|
},
|
|
|
callback: function () {
|
|
@@ -1406,6 +1431,11 @@ var projectObj = {
|
|
|
callback: function () {
|
|
|
project.calcProgram.calcAllNodesAndSave();
|
|
|
},
|
|
|
+ disabled: function () {
|
|
|
+ if (projectReadOnly) {
|
|
|
+ return true;
|
|
|
+ }
|
|
|
+ },
|
|
|
visible:function(key, opt){//2018-11-15 新需求隐藏右键“造价计算”。
|
|
|
return false;
|
|
|
}
|
|
@@ -1415,6 +1445,9 @@ var projectObj = {
|
|
|
name: '复制整块',
|
|
|
icon: 'fa-copy',
|
|
|
disabled: function () {
|
|
|
+ if (projectReadOnly) {
|
|
|
+ return true;
|
|
|
+ }
|
|
|
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++){ //多选的时候判断所有与第一个节点同级的节点
|
|
@@ -1442,6 +1475,9 @@ var projectObj = {
|
|
|
name: '粘贴整块',
|
|
|
icon: 'fa-paste',
|
|
|
disabled: function (){
|
|
|
+ if (projectReadOnly) {
|
|
|
+ return true;
|
|
|
+ }
|
|
|
return BlockController.pasteBtnDisable(project.mainTree.selected);
|
|
|
},
|
|
|
callback: function () {
|
|
@@ -1451,6 +1487,9 @@ var projectObj = {
|
|
|
"editEngineer": {
|
|
|
name: '编辑工程内容',
|
|
|
icon: 'fa-edit',
|
|
|
+ disabled: function () {
|
|
|
+ return projectReadOnly;
|
|
|
+ },
|
|
|
visible: function(key, opt){
|
|
|
let selected = project.mainTree.selected;
|
|
|
return selected.sourceType==ModuleNames.bills&&project.Bills.isEngineerEst(selected);//当焦点行是“专业工程暂估价”时,右键可见并有效。
|
|
@@ -1465,6 +1504,9 @@ var projectObj = {
|
|
|
"editService": {
|
|
|
name: '编辑服务内容',
|
|
|
icon: 'fa-edit',
|
|
|
+ disabled: function () {
|
|
|
+ return projectReadOnly;
|
|
|
+ },
|
|
|
visible: function(key, opt){
|
|
|
let selected = project.mainTree.selected;
|
|
|
return selected.sourceType==ModuleNames.bills&&project.Bills.isTotalService(selected);//当焦点行是“总承包服务费”时,右键可见并有效。
|
|
@@ -1479,6 +1521,9 @@ var projectObj = {
|
|
|
"editAccording": {
|
|
|
name: '编辑签证及索赔依据',
|
|
|
icon: 'fa-edit',
|
|
|
+ disabled: function () {
|
|
|
+ return projectReadOnly;
|
|
|
+ },
|
|
|
visible: function(key, opt){
|
|
|
let selected = project.mainTree.selected;
|
|
|
return selected.sourceType==ModuleNames.bills&&project.Bills.isClaimVisa(selected);//当焦点行是“签证及索赔计价”时,右键可见并有效。
|
|
@@ -1494,6 +1539,9 @@ var projectObj = {
|
|
|
name:'智能材料替换',
|
|
|
icon: 'fa-edit',
|
|
|
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//是分项、补项或叶子清单才有效;
|
|
|
},
|
|
@@ -1508,6 +1556,9 @@ var projectObj = {
|
|
|
name:'生成组价模板',
|
|
|
icon: 'fa-puzzle-piece',
|
|
|
disabled:function (key,opt) {
|
|
|
+ if (projectReadOnly) {
|
|
|
+ return true;
|
|
|
+ }
|
|
|
let selected = project.mainTree.selected;
|
|
|
return selected.sourceType != ModuleNames.bills;
|
|
|
},
|