|
@@ -806,12 +806,15 @@ var projectObj = {
|
|
|
};
|
|
|
},
|
|
|
mainSpreadEditEnded: function (sender, info) {
|
|
|
- console.log('enterEDEnd');
|
|
|
let project = projectObj.project;
|
|
|
let node = project.mainTree.items[info.row];
|
|
|
project.withinBillsLocked(node);
|
|
|
let colSetting = projectObj.mainController.setting.cols[info.col];
|
|
|
let fieldName = projectObj.mainController.setting.cols[info.col].data.field;
|
|
|
+ //提前处理
|
|
|
+ if (fieldName === 'code' || fieldName === 'name' || fieldName === 'unit') {
|
|
|
+ info.editingText = info.editingText ? info.editingText.toString().replace(new RegExp(/[\r,\n]/g), '') : info.editingText;
|
|
|
+ }
|
|
|
// 检查输入类型等
|
|
|
let value = projectObj.checkSpreadEditingText(info.editingText, colSetting);
|
|
|
projectObj.updateCellValue(node, value, colSetting,info.editingText);
|
|
@@ -901,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");
|
|
@@ -973,11 +977,10 @@ var projectObj = {
|
|
|
that.mainSpread.bind(GC.Spread.Sheets.Events.CellDoubleClick, that.onCellDoubleClick);
|
|
|
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}`);
|
|
@@ -1157,6 +1160,7 @@ var projectObj = {
|
|
|
selector: '#billsSpread',
|
|
|
selectableSubMenu: true,
|
|
|
build: function ($trigger, e) {
|
|
|
+ projectObj.cusRationCombCheck(spread.getActiveSheet());
|
|
|
var target = SheetDataHelper.safeRightClickSelection($trigger, e, spread);
|
|
|
controller.setTreeSelected(controller.tree.items[target.row]);
|
|
|
return target.hitTestType === GC.Spread.Sheets.SheetArea.viewport || target.hitTestType === GC.Spread.Sheets.SheetArea.rowHeader;
|
|
@@ -1166,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) {
|
|
@@ -1180,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){
|
|
@@ -1211,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){//焦点行是分项,有效显示
|
|
@@ -1249,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
|
|
@@ -1278,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
|
|
@@ -1296,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);
|
|
@@ -1348,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);
|
|
@@ -1373,6 +1395,9 @@ var projectObj = {
|
|
|
name: "计取安装费用",
|
|
|
icon: 'fa-sign-in',
|
|
|
disabled: function () {
|
|
|
+ if (projectReadOnly) {
|
|
|
+ return true;
|
|
|
+ }
|
|
|
return false;
|
|
|
},
|
|
|
callback: function (key, opt) {
|
|
@@ -1386,12 +1411,15 @@ var projectObj = {
|
|
|
name: '删除',
|
|
|
icon: 'fa-remove',
|
|
|
disabled: function () {
|
|
|
+ if (projectReadOnly) {
|
|
|
+ return true;
|
|
|
+ }
|
|
|
return !ifCanDelete();
|
|
|
},
|
|
|
callback: function () {
|
|
|
var selected = project.mainTree.selected;
|
|
|
if(selected.sourceType == project.Bills.getSourceType()&&selected.data.type==billType.FB&&selected.children.length<=0){//选中的是分部,并且没有子项,直接删除
|
|
|
- project.Bills.deleteSelectedNode();
|
|
|
+ project.Bills.deleteSelectedNodes();//project.Bills.deleteSelectedNode();
|
|
|
}else {
|
|
|
$("#delete_row").modal({show:true});//弹出删除提示框;
|
|
|
}
|
|
@@ -1403,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;
|
|
|
}
|
|
@@ -1412,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++){ //多选的时候判断所有与第一个节点同级的节点
|
|
@@ -1439,6 +1475,9 @@ var projectObj = {
|
|
|
name: '粘贴整块',
|
|
|
icon: 'fa-paste',
|
|
|
disabled: function (){
|
|
|
+ if (projectReadOnly) {
|
|
|
+ return true;
|
|
|
+ }
|
|
|
return BlockController.pasteBtnDisable(project.mainTree.selected);
|
|
|
},
|
|
|
callback: function () {
|
|
@@ -1448,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);//当焦点行是“专业工程暂估价”时,右键可见并有效。
|
|
@@ -1462,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);//当焦点行是“总承包服务费”时,右键可见并有效。
|
|
@@ -1476,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);//当焦点行是“签证及索赔计价”时,右键可见并有效。
|
|
@@ -1491,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//是分项、补项或叶子清单才有效;
|
|
|
},
|
|
@@ -1505,15 +1556,14 @@ 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;
|
|
|
},
|
|
|
- callback:function(){
|
|
|
- if (!$("#kmbk").is(":visible")){
|
|
|
- $('#blockLibTab').click()
|
|
|
- };
|
|
|
-
|
|
|
- $("#zujiamb").modal({show: true});
|
|
|
+ callback: function(){
|
|
|
+ blockLibObj.checkShow();
|
|
|
},
|
|
|
visible: function(key, opt){
|
|
|
return G_SHOW_BLOCK_LIB;
|
|
@@ -1993,6 +2043,12 @@ var projectObj = {
|
|
|
if(field != null) projectObj.mainController.sheet.setSelection(newNode.serialNo(), colSettingObj.getColByField(field), 1, 1); //自动定位到编号单元格
|
|
|
projectObj.mainSpread.focus();
|
|
|
}
|
|
|
+ },
|
|
|
+ cusRationCombCheck:function (sheet) {//检查自定义定额编号下拉框,右键的时候不自动消失,现手动结束编辑,并删除元素
|
|
|
+ if(sheet.isEditing()){
|
|
|
+ sheet.endEdit()
|
|
|
+ }
|
|
|
+ if($("#rationCheckBox").is(':visible')) $("#rationCheckBox").parent().parent().remove();
|
|
|
}
|
|
|
|
|
|
|
|
@@ -2156,6 +2212,27 @@ let displayLevel = function(nodes, depth, type){
|
|
|
TREE_SHEET_HELPER.refreshNodesVisible(refreshNodes, projectObj.mainSpread.getActiveSheet(), true)
|
|
|
});
|
|
|
};
|
|
|
+$('body').click(function () {
|
|
|
+ //点击完后隐藏子菜单
|
|
|
+ if ($('#subDisplay').is(':visible')) {
|
|
|
+ $('#subDisplay').removeClass('show');
|
|
|
+ }
|
|
|
+});
|
|
|
+let enterDisplayA = false;
|
|
|
+//鼠标移到显示至,自动弹出子菜单
|
|
|
+$('#displayA').mouseenter(function (e) {
|
|
|
+ enterDisplayA = true;
|
|
|
+ $('#subDisplay').addClass('show');
|
|
|
+});
|
|
|
+$('#displayA').mouseleave(function () {
|
|
|
+ enterDisplayA = false;
|
|
|
+});
|
|
|
+$('#moreMenu > a').mouseenter(function () {
|
|
|
+ if (!enterDisplayA) {
|
|
|
+ $('#subDisplay').removeClass('show');
|
|
|
+ }
|
|
|
+});
|
|
|
+
|
|
|
$('#displayDXFY').click(function () {
|
|
|
displayLevel(projectObj.project.mainTree.items, 0, 'DXFY')
|
|
|
});
|
|
@@ -2239,27 +2316,59 @@ $('#recColSetting').click(function () {
|
|
|
$('#recColSetting').removeClass('disabled');
|
|
|
});
|
|
|
});
|
|
|
-
|
|
|
//恢复默认系统设置
|
|
|
$('#property_default').click(function () {
|
|
|
let project = projectObj.project,
|
|
|
projectID = project.ID();
|
|
|
+ /*
|
|
|
+ * 清除窗口比例缓存
|
|
|
+ * */
|
|
|
//清单精灵/指引窗口比例
|
|
|
- removeLocalCache('farwidth:stdBillsGuidanceTab');
|
|
|
- removeLocalCache('nearwidth:stdBillsGuidanceTab');
|
|
|
- removeLocalCache('farheight:#zy');
|
|
|
- removeLocalCache('nearheight:#zy');
|
|
|
+ removeLocalCache('stdBillsGuidanceTabmainWidth');
|
|
|
+ removeLocalCache('stdBillsGuidanceTabmainSideWidth');
|
|
|
//定额库窗口比例
|
|
|
- removeLocalCache('farwidth:stdRationTab');
|
|
|
- removeLocalCache('nearwidth:stdRationTab');
|
|
|
- removeLocalCache('farheight:#de');
|
|
|
- removeLocalCache('nearheight:#de');
|
|
|
+ removeLocalCache('stdRationTabmainWidth');
|
|
|
+ removeLocalCache('stdRationTabmainSideWidth');
|
|
|
+ removeLocalCache('dedeTopDivHeight');
|
|
|
+ removeLocalCache('dedeBottomDivHeight');
|
|
|
+ //查找定位窗口比例
|
|
|
+ removeLocalCache('locateTabmainWidth');
|
|
|
+ removeLocalCache('locateTabmainSideWidth');
|
|
|
+ removeLocalCache('locatelocateTopDivHeight');
|
|
|
+ removeLocalCache('locatelocateBottomDivHeight');
|
|
|
+ //块模板库窗口比例
|
|
|
+ removeLocalCache('kmbkkmbkTopDivHeight');
|
|
|
+ removeLocalCache('kmbkkmbkMidDivHeight');
|
|
|
+ removeLocalCache('kmbkkmbkBottomDivHeight');
|
|
|
//主界面窗口比例
|
|
|
- removeLocalCache('farheight:#main');
|
|
|
- removeLocalCache('nearheight:#main');
|
|
|
+ removeLocalCache('mainVerticaltop_divHeight');
|
|
|
+ removeLocalCache('mainVerticalbottom_divHeight');
|
|
|
+ //造价书下方-人材机和项目特征文本
|
|
|
+ removeLocalCache('subRcjsubSpreadWidth');
|
|
|
+ removeLocalCache('subRcjitemTextDivWidth');
|
|
|
+ //造价书下方-子目换算下调整状态和辅助值
|
|
|
+ removeLocalCache('subRcjitemTextDivWidth');
|
|
|
+ removeLocalCache('subRcjitemTextDivWidth');
|
|
|
+ //造价书下方-特征及内容窗口比例
|
|
|
+ removeLocalCache('subZmhscoeSpreadWidth');
|
|
|
+ removeLocalCache('subZmhsassDivWidth');
|
|
|
//人材机汇总窗口比例
|
|
|
- removeLocalCache('farheight:#project-glj-main');
|
|
|
- removeLocalCache('nearheight:#project-glj-main');
|
|
|
+ removeLocalCache('projectGljprojectGljTopHeight');
|
|
|
+ removeLocalCache('projectGljprojectGljBottomHeight');
|
|
|
+ //补充人材机库
|
|
|
+ removeLocalCache('compleGLjleftContentWidth');
|
|
|
+ removeLocalCache('compleGLjmidContentWidth');
|
|
|
+ removeLocalCache('compleGLjrightContentWidth');
|
|
|
+ //补充定额库
|
|
|
+ removeLocalCache('compleRationleftContentWidth');
|
|
|
+ removeLocalCache('compleRationmainContentWidth');
|
|
|
+ removeLocalCache('compleRationzmhsContentWidth');
|
|
|
+ removeLocalCache('compleRationrationItemsSheetHeight');
|
|
|
+ removeLocalCache('compleRationsubContentHeight');
|
|
|
+ removeLocalCache('compleRationmainSpreadHeight');
|
|
|
+ removeLocalCache('compleRationcontentSpreadHeight');
|
|
|
+
|
|
|
+ //在后台恢复一些设置
|
|
|
CommonAjax.post('/pm/api/defaultSettings', {user_id: userID, projectID: projectID}, function (rstData) {
|
|
|
window.location.href = `/main?project=${projectID}`;
|
|
|
});
|
|
@@ -2474,6 +2583,8 @@ $('#delete_row').on('show.bs.modal', function (e) {//这里用show,在shown之
|
|
|
showN = true;
|
|
|
cancelText = "取消";
|
|
|
}
|
|
|
+ }else if(isSingleSelect()&&mbzm_obj.hasReferenceRation(selected)){//“有模板关联的定额”右键点击删除,弹窗提示“删除主子目时将删除对应的关联子目,是否继续? 是 否” (只有单选中一条定额并且是有模板关联的定额)
|
|
|
+ showinfo = "<label>删除主子目时将删除对应的关联子目,是否继续?</label>";
|
|
|
}
|
|
|
$('#delete_showinfo').html(showinfo);
|
|
|
showN==true? $('#deleteN').show():$('#deleteN').hide();
|
|
@@ -2874,13 +2985,13 @@ $(function () {
|
|
|
|
|
|
});
|
|
|
|
|
|
- $("#zujiamb").on('show.bs.modal', function(){
|
|
|
+ $("#div_createBlocks").on('show.bs.modal', function(){
|
|
|
function getBlockCategoriesHtml(Categories) {
|
|
|
let result = '';
|
|
|
if (Categories.length <= 0) return result;
|
|
|
|
|
|
for (let c of Categories){
|
|
|
- result += '<option value="'+ c.data.ID +'">'+ c.data.name +'</option>';
|
|
|
+ result += '<option value="'+ c.data.ID +'">'+ c.data.nodeName +'</option>';
|
|
|
};
|
|
|
return result;
|
|
|
};
|
|
@@ -2888,22 +2999,43 @@ $(function () {
|
|
|
let sHtml = getBlockCategoriesHtml(blockLibObj.getCategories());
|
|
|
$("#select_block_category").html(sHtml);
|
|
|
$("#select_block_category")[0].selectedIndex = 0;
|
|
|
+ $('#ckb_block_exist_cover').prop("checked", false);
|
|
|
});
|
|
|
|
|
|
- $("#btn_block_createBlocks").click(function () {
|
|
|
+ $("#div_cloneOptions").on('show.bs.modal', function(){
|
|
|
+ let s = '';
|
|
|
+ switch (blockLibObj.cloneType) {
|
|
|
+ case 1:
|
|
|
+ s = '一对一克隆';
|
|
|
+ break;
|
|
|
+ case 2:
|
|
|
+ s = '一对多克隆';
|
|
|
+ break;
|
|
|
+ case 3:
|
|
|
+ s = '多对多克隆';
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ s = `<span style='color:red;'>${s}</span>`;
|
|
|
+ $('#clone_option_title').html(`快速组价 (${s})`);
|
|
|
+ $('#clone_option_code').prop("checked", true);
|
|
|
+ $('#clone_option_name').prop("checked", false);
|
|
|
+ $('#clone_option_unit').prop("checked", true);
|
|
|
+ $('#clone_option_quantity').prop("checked", true);
|
|
|
+ $('#clone_option_noCover').prop("checked", true);
|
|
|
+ });
|
|
|
+
|
|
|
+ $("#btn_block_createBlocks").click(async function () {
|
|
|
if ($("#select_block_category")[0].options.length < 1) return;
|
|
|
let cID = $("#select_block_category").val();
|
|
|
let selected = projectObj.project.mainTree.selected;
|
|
|
-
|
|
|
- function createBlocks(aNode, categoryID){
|
|
|
- function createBlock(node) {
|
|
|
+ let cover = $('#ckb_block_exist_cover').prop("checked");
|
|
|
+ async function createBlocks(aNode, categoryID){
|
|
|
+ async function createBlock(node) {
|
|
|
if (node.data.name == undefined || node.data.name == '') return; // 清单名称为空,不生成块模板文件
|
|
|
- let name = node.data.code + ' ' + node.data.name + ' ' + node.data.unit;
|
|
|
- name = name.replace(/^\s+|\s+$/g, ""); // 只去两头空格
|
|
|
-
|
|
|
+ if (node.children.length == 0) return;
|
|
|
// 封装成伟城的块文件格式,直接调用伟城接口(定额这里的业务太多太庞杂,不要再重做一遍,尽量共用,维护代价小)
|
|
|
// 块文件要构建自己的树结构,所以也有自己的一部分数据。两种结构揉合在一起,显得有点杂乱,但利大于弊。
|
|
|
- let block_WC = {
|
|
|
+ let vBlock_WC = {
|
|
|
compilationID: projectInfoObj.projectInfo.compilation,
|
|
|
firstNodeType: node.data.type,
|
|
|
isFBFX: projectObj.project.Bills.isFBFX(node),
|
|
@@ -2911,11 +3043,20 @@ $(function () {
|
|
|
datas: []
|
|
|
};
|
|
|
let ration_glj_Map = _.groupBy(projectObj.project.ration_glj.datas, 'rationID');
|
|
|
- block_WC.datas.push(BlockController.getNodeDatas(node, ration_glj_Map));
|
|
|
- blockLibObj.newNode(2, name, categoryID, block_WC);
|
|
|
+ vBlock_WC.datas.push(BlockController.getNodeDatas(node, ration_glj_Map));
|
|
|
+ vBlock_WC = JSON.parse(JSON.stringify(vBlock_WC));
|
|
|
+ let fileName = node.data.code + ' ' + node.data.name + ' ' + node.data.unit;
|
|
|
+ fileName = fileName.replace(/^\s+|\s+$/g, ""); // 只去两头空格
|
|
|
+
|
|
|
+ let extN = blockLibObj.getSameNameNode(fileName);
|
|
|
+ if (extN){
|
|
|
+ if (cover) blockLibObj.assignData(extN, vBlock_WC);
|
|
|
+ }
|
|
|
+ else
|
|
|
+ await blockLibObj.newNode(2, fileName, categoryID, vBlock_WC);
|
|
|
};
|
|
|
|
|
|
- function createRecursion(node){
|
|
|
+ async function createRecursion(node){
|
|
|
if (!node) return;
|
|
|
|
|
|
if (calcTools.isLeafBill(node)) createBlock(node);
|
|
@@ -2925,14 +3066,48 @@ $(function () {
|
|
|
};
|
|
|
|
|
|
if (calcTools.isLeafBill(aNode))
|
|
|
- createBlock(aNode)
|
|
|
+ await createBlock(aNode)
|
|
|
else
|
|
|
- createRecursion(aNode.firstChild());
|
|
|
+ await createRecursion(aNode.firstChild());
|
|
|
};
|
|
|
|
|
|
- createBlocks(selected, cID);
|
|
|
+ await createBlocks(selected, cID);
|
|
|
blockLibObj.loadDetailDatas(blockLibObj.mainTree.selected);
|
|
|
- $("#zujiamb").modal("hide");
|
|
|
+ $("#div_createBlocks").modal("hide");
|
|
|
+ });
|
|
|
+
|
|
|
+ $("#btn_block_clone_ok").click(function () {
|
|
|
+ let projectNode = projectObj.project.mainTree.selected;
|
|
|
+ let block = blockLibObj.mainTree.selected;
|
|
|
+ let options = {};
|
|
|
+ if ($('#clone_option_code').prop("checked")) options.checkCode = true;
|
|
|
+ if ($('#clone_option_name').prop("checked")) options.checkName = true;
|
|
|
+ if ($('#clone_option_unit').prop("checked")) options.checkUnit = true;
|
|
|
+ if ($('#clone_option_zeroQuantity').prop("checked")) options.zeroQuantity = true;
|
|
|
+ if ($('#clone_option_cover').prop("checked")) options.overwriteRations = true;
|
|
|
+
|
|
|
+ switch (blockLibObj.cloneType) {
|
|
|
+ case 1:
|
|
|
+ blockLibObj.oneToOneClone(projectNode, block, options);
|
|
|
+ break;
|
|
|
+ case 2:
|
|
|
+ let bills = calcTools.getLeafBills(projectNode);
|
|
|
+ for (let bill of bills){
|
|
|
+ calcTools.forceSelect(bill);
|
|
|
+ blockLibObj.oneToOneClone(bill, block, options);
|
|
|
+ };
|
|
|
+ break;
|
|
|
+ case 3:
|
|
|
+ let mtmBills = calcTools.getLeafBills(projectNode);
|
|
|
+ let mtmBlocks = blockLibObj.mainTree.selected.children;
|
|
|
+ for (let mtmBill of mtmBills){
|
|
|
+ for (let mtmBlock of mtmBlocks){
|
|
|
+ calcTools.forceSelect(mtmBill);
|
|
|
+ blockLibObj.oneToOneClone(mtmBill, mtmBlock, options);
|
|
|
+ };
|
|
|
+ };
|
|
|
+ break;
|
|
|
+ }
|
|
|
});
|
|
|
|
|
|
|
|
@@ -2979,6 +3154,9 @@ function disableTools(){
|
|
|
//清单精灵
|
|
|
$('#elfInsertRation').addClass('disabled');
|
|
|
$('#elfInsertSingle').addClass('disabled');
|
|
|
+ //模板子目:应用、下一条
|
|
|
+ $('#apply_mbzm').addClass('disabled');
|
|
|
+ $('#next_mbzm').addClass('disabled');
|
|
|
//特征及内容
|
|
|
$('#add-rule').find('select').prop('disabled', 'disabled');
|
|
|
$('#use-to-current').addClass('disabled');
|
|
@@ -2993,9 +3171,9 @@ function disableTools(){
|
|
|
$('#compleRationLib').addClass('disabled');
|
|
|
$('#compleGljLib').addClass('disabled')
|
|
|
//库
|
|
|
- $('#stdBillsGuidanceTab').addClass('disabled');
|
|
|
+ //$('#stdBillsGuidanceTab').addClass('disabled');
|
|
|
$('#stdBillsTab').addClass('disabled');
|
|
|
- $('#stdRationTab').addClass('disabled');
|
|
|
+ //$('#stdRationTab').addClass('disabled');
|
|
|
$('#blockLibTab').addClass('disabled');
|
|
|
//人材机汇总,选择其他、另存使用
|
|
|
$('a[data-target="#change-unitFile"]').remove();
|