/** * Created by chen on 2017/7/25. */ var gljContextMenu = { selectedRow :null, selectedCol:null, clipboard:null, loadGLJSpreadContextMenu: function () { $.contextMenu({ selector: '#subSpread', build: this.onbuild, items: { "replace_glj": { name: '替换', icon: 'fa-sign-in', disabled: function () { var sheetData = gljOprObj.sheetData; if(gljOprObj.isInstallationNode(projectObj.project.mainTree.selected)){ return true; } if(subSpread.getActiveSheetIndex()==0&&sheetData!=null&&sheetData.length>0&&gljContextMenu.selectedRow0&&gljContextMenu.selectedRow0&&gljContextMenu.selectedRow0&&gljContextMenu.selectedRow0&&gljContextMenu.selectedRowsheetData.length; } }, callback: function () { projectObj.project.quantity_detail.insertQuantityDetail(gljContextMenu.selectedRow); }, visible: function(key, opt){ return subSpread.getActiveSheet().name()=='quantity_detail'; } }, "delete_detail": { name: '删除行', icon: 'fa-remove', disabled: function () { var sheetData = gljOprObj.detailData; return gljContextMenu.selectedRow>sheetData.length-1; }, callback:function () { projectObj.project.quantity_detail.deleteQuantityDetail(gljContextMenu.selectedRow); }, visible: function(key, opt){ return subSpread.getActiveSheet().name()=='quantity_detail'; } }, "move_up": { name: '上移', icon: 'fa-arrow-up', disabled: function () { var sheetData = gljOprObj.detailData; return gljContextMenu.selectedRow==0||gljContextMenu.selectedRow>sheetData.length-1; }, callback: function () { projectObj.project.quantity_detail.moveUp(gljContextMenu.selectedRow); }, visible: function(key, opt){ return subSpread.getActiveSheet().name()=='quantity_detail'; } }, "move_down": { name: '下移', icon: 'fa-arrow-down', disabled: function () { var sheetData = gljOprObj.detailData; return gljContextMenu.selectedRow>sheetData.length-2; }, callback: function () { projectObj.project.quantity_detail.moveDown(gljContextMenu.selectedRow); }, visible: function(key, opt){ return subSpread.getActiveSheet().name()=='quantity_detail'; } }, "copy": { name: '复制', icon: 'fa-files-o', disabled: function () { var sheet = subSpread.getActiveSheet(); var sheetData = gljOprObj.detailData; var value = sheet.getCell(gljContextMenu.selectedRow,gljContextMenu.selectedCol).value(); return gljContextMenu.selectedRow>sheetData.length-1||value==null; }, callback: function () { gljContextMenu.clipboard={ row:gljContextMenu.selectedRow, col:gljContextMenu.selectedCol }; }, visible: function(key, opt){ return subSpread.getActiveSheet().name()=='quantity_detail'; } }, "paste": { name: '粘贴', icon: 'fa-clipboard', disabled: function () { var sheetData = gljOprObj.detailData; return gljContextMenu.selectedRow>sheetData.length||gljContextMenu.clipboard==null; }, callback: function () { var sheet = subSpread.getActiveSheet(); var c=gljContextMenu.clipboard; console.log(sheet.getCell(c.row,c.col).value()); var args={ 'row':gljContextMenu.selectedRow, 'col':gljContextMenu.selectedCol, 'editingText':sheet.getCell(c.row,c.col).value() } gljOprObj.onEditDetailSheet(args); }, visible: function(key, opt){ return subSpread.getActiveSheet().name()=='quantity_detail'; } }, "modify_rule": { name: '修改规则', icon: 'fa-sign-in', disabled: function () {//当选中空行或者ruleID为空的情况下,灰显 let sheetData = installationFeeObj.rationInstallData; if(gljContextMenu.selectedRow>sheetData.length-1){ return true } let ri = sheetData[gljContextMenu.selectedRow]; if(!ri.ruleId||ri.ruleId==''){ return true; } return false; }, callback: function () { $("#modify_feeRule").modal({show:true}); }, visible: function(key, opt){ return subSpread.getActiveSheet().name()=='rationInstallSheet'; } }, "apply_to_FX": { name: '应用到当前分项', icon: 'fa-sign-in', disabled: function () { let sheetData = installationFeeObj.rationInstallData; if(gljContextMenu.selectedRow>sheetData.length-1){ return true; } if(sheetData[gljContextMenu.selectedRow].unifiedSetting == 1){ return true; } return false; }, callback: function () { installationFeeObj.applyRuleTo('FX',gljContextMenu.selectedRow); }, visible: function(key, opt){ return subSpread.getActiveSheet().name()=='rationInstallSheet'; } }, "apply_to_FB": { name: '应用到当前分部', icon: 'fa-sign-in', disabled: function () { let sheetData = installationFeeObj.rationInstallData; if(gljContextMenu.selectedRow>sheetData.length-1){ return true; } if(sheetData[gljContextMenu.selectedRow].unifiedSetting == 1){ return true; } return false; }, callback: function () { installationFeeObj.applyRuleTo('FB',gljContextMenu.selectedRow); }, visible: function(key, opt){ return subSpread.getActiveSheet().name()=='rationInstallSheet'; } }, "apply_to_PRO": { name: '应用到当前项目', icon: 'fa-sign-in', disabled: function () { let sheetData = installationFeeObj.rationInstallData; if(gljContextMenu.selectedRow>sheetData.length-1){ return true; } if(sheetData[gljContextMenu.selectedRow].unifiedSetting == 1){ return true; } return false; }, callback: function () { installationFeeObj.applyRuleTo('PJ',gljContextMenu.selectedRow); }, visible: function(key, opt){ return subSpread.getActiveSheet().name()=='rationInstallSheet'; } } } }); }, onbuild:function ($trigger, e) { var target = SheetDataHelper.safeRightClickSelection($trigger, e, subSpread); gljContextMenu.selectedRow = target.row; gljContextMenu.selectedCol = target.col; //controller.setTreeSelected(controller.tree.items[target.row]); return target.hitTestType === GC.Spread.Sheets.SheetArea.viewport || target.hitTestType === GC.Spread.Sheets.SheetArea.rowHeader; } } function getGLJData(actionType) { $('#actionType').val(actionType); $.bootstrapLoading.start(); projectObj.project.ration_glj.getGLJData(function (result) { console.log(+new Date()); zTreeHelper.createTree(result.datas.treeData, gljOprObj.gljTreeSetting, "gljTree", gljOprObj); gljOprObj.stdGLJ=result.datas.stdGLJ; gljOprObj.complementaryGLJs=result.datas.complementaryGLJs; for(let compleGlj of gljOprObj.complementaryGLJs){ //是否新增 compleGlj.isComplementary = true; } gljOprObj.AllRecode=gljOprObj.stdGLJ.concat(gljOprObj.complementaryGLJs); gljOprObj.distTypeTree=gljOprObj.getComboData(result.datas.distTypeTree); $('#modalCon').width($(window).width()*0.5); $("input[name='glj']").get(0).checked=true; $.bootstrapLoading.end(); $("#glj_tree_div").modal({show:true}); setTimeout(function(){ gljOprObj.gljLibSpresd?gljOprObj.gljLibSpresd.refresh():''; }, 200); }) } function showGLJClassTree(record) { CommonAjax.post('/rationGlj/getGLJClass',record, function (data) { if(data.exist==true){ alert("当前人材机已存在。"); }else { gljOprObj.selectedGLJClass = record; $("#glj_class_div").modal({show:true}); zTreeHelper.createTree(data.items, gljOprObj.gljTreeSetting, "classTree", gljOprObj); } }) }