|
@@ -21,7 +21,6 @@ let pageOprObj = {
|
|
|
repositoryGljObj.getGljTree(stdGljLibId, function () {
|
|
|
repositoryGljObj.getGljItems(me.stdGljLibId, me.userId, me.compilationId);
|
|
|
});
|
|
|
- sheetOpr.shieldAllCells(repositoryGljObj.workBook.getSheet(0), repositoryGljObj.setting);
|
|
|
});
|
|
|
}
|
|
|
};
|
|
@@ -101,9 +100,6 @@ let repositoryGljObj = {
|
|
|
if(!result.error && callback){
|
|
|
me.distTypeTree = me.getComboData(result.data);
|
|
|
console.log(me.distTypeTree);
|
|
|
- /* let combo = new GC.Spread.Sheets.CellTypes.ComboBox();
|
|
|
- combo.items(me.distTypeTree.comboDatas).editorValueType(GC.Spread.Sheets.CellTypes.EditorValueType.text);
|
|
|
- me.workBook.getSheet(0).getCell(-1, 5, GC.Spread.Sheets.SheetArea.viewport).cellType(combo).value(me.distTypeTree.comboDatas[0].text);*/
|
|
|
callback();
|
|
|
}
|
|
|
}
|
|
@@ -195,6 +191,7 @@ let repositoryGljObj = {
|
|
|
me.workBook.getSheet(0).bind(GC.Spread.Sheets.Events.EditEnded, me.onCellEditEnd);
|
|
|
me.workBook.getSheet(0).bind(GC.Spread.Sheets.Events.EnterCell, me.onEnterCell);
|
|
|
me.workBook.getSheet(0).bind(GC.Spread.Sheets.Events.SelectionChanged, me.onSelectionChanged);
|
|
|
+ me.workBook.bind(GC.Spread.Sheets.Events.ButtonClicked, me.onButtonClicked);//复选框点击事件
|
|
|
},
|
|
|
getCurrentComponent: function (gljComponent) {
|
|
|
let me = repositoryGljObj, rst = [];
|
|
@@ -285,11 +282,7 @@ let repositoryGljObj = {
|
|
|
//混凝土202、砂浆203、配合比204、机械3
|
|
|
if(typeof info.oldSelections || info.oldSelections.length === 0 && info.newSelections.length > 0 || info.oldSelections[0].row !== info.newSelections[0].row){
|
|
|
let row = info.newSelections[0].row;
|
|
|
- sheetOpr.lockCells(that.workBook.getSheet(0), that.setting);
|
|
|
- that.workBook.getSheet(0).getRange(-1, 0 , -1, 1, GC.Spread.Sheets.SheetArea.viewport).locked(true);
|
|
|
- that.workBook.getSheet(0).getRange(-1, 4 , -1, 1, GC.Spread.Sheets.SheetArea.viewport).locked(true);
|
|
|
that.isLocked = true;
|
|
|
- //that.workBook.getSheet(0).options.isProtected = true;
|
|
|
sheetOpr.cleanSheet(that.workBook.getSheet(0), that.setting, -1);
|
|
|
me.workBook.focus(true);
|
|
|
me.currentComponent = [];
|
|
@@ -298,8 +291,6 @@ let repositoryGljObj = {
|
|
|
//标记当前工料机
|
|
|
me.currentGlj = me.currentCache[row];
|
|
|
if(me.allowComponent.indexOf(me.currentCache[row].gljType) !== -1){
|
|
|
- //that.workBook.getSheet(0).getRange(-1, 0 , -1, 1, GC.Spread.Sheets.SheetArea.viewport).locked(false);
|
|
|
- that.workBook.getSheet(0).getRange(-1, 4 , -1, 1, GC.Spread.Sheets.SheetArea.viewport).locked(false);
|
|
|
that.isLocked = false;
|
|
|
//展示数据
|
|
|
if(me.currentGlj.component.length > 0){
|
|
@@ -359,24 +350,13 @@ let repositoryGljObj = {
|
|
|
}
|
|
|
else {
|
|
|
$('#gljAlertBtn').click();
|
|
|
- //me.workBook.getSheet(0).options.isProtected = true;
|
|
|
- sheetOpr.lockAllCells(args.sheet);
|
|
|
$('#aleConfBtn').click(function () {
|
|
|
- // me.workBook.getSheet(0).options.isProtected = false;
|
|
|
- sheetOpr.unLockAllCells(args.sheet);
|
|
|
- sheetOpr.reLockSomeCodes(args.sheet, 0, repositoryGljObj.currentCache.length);
|
|
|
me.workBook.getSheet(0).setActiveCell(me.editingRowIdx, focusToCol);
|
|
|
});
|
|
|
$('#gljAleClose').click(function () {
|
|
|
- // me.workBook.getSheet(0).options.isProtected = false;
|
|
|
- sheetOpr.unLockAllCells(args.sheet);
|
|
|
- sheetOpr.reLockSomeCodes(args.sheet, 0, repositoryGljObj.currentCache.length);
|
|
|
me.workBook.getSheet(0).setActiveCell(me.editingRowIdx, focusToCol);
|
|
|
});
|
|
|
$('#aleCanceBtn').click(function () {
|
|
|
- // me.workBook.getSheet(0).options.isProtected = false;
|
|
|
- sheetOpr.unLockAllCells(args.sheet);
|
|
|
- sheetOpr.reLockSomeCodes(args.sheet, 0, repositoryGljObj.currentCache.length);
|
|
|
me.addGljObj = null;
|
|
|
me.workBook.getSheet(0).suspendPaint();
|
|
|
me.workBook.getSheet(0).suspendEvent();
|
|
@@ -394,21 +374,31 @@ let repositoryGljObj = {
|
|
|
}
|
|
|
}
|
|
|
},
|
|
|
+ onButtonClicked: function (sender, args) {
|
|
|
+ let me = repositoryGljObj;
|
|
|
+ if(args.col === 6 && args.row < me.currentCache.length){
|
|
|
+ args.sheet.setValue(args.row, args.col, true);
|
|
|
+ }
|
|
|
+ },
|
|
|
onCellEditStart: function(sender, args) {
|
|
|
let me = repositoryGljObj;
|
|
|
let rObj = sheetOpr.combineRowData(me.workBook.getSheet(0), me.setting, args.row);
|
|
|
me.currentEditingGlj = rObj;
|
|
|
me.orgCode = me.workBook.getSheet(0).getValue(args.row, 0);
|
|
|
- let cacheSection = me.complementaryGljList;
|
|
|
- if (cacheSection) {
|
|
|
- for (let j = 0; j < cacheSection.length; j++) {
|
|
|
- if (cacheSection[j][me.setting.header[0].dataCode] && cacheSection[j][me.setting.header[0].dataCode] == rObj[me.setting.header[0].dataCode]) {
|
|
|
- rObj["ID"] = cacheSection[j]["ID"];
|
|
|
- rObj.gljClass = cacheSection[j].gljClass;
|
|
|
- break;
|
|
|
- }
|
|
|
+ if(args.row < me.currentCache.length){
|
|
|
+ me.currentGlj = me.currentCache[args.row];
|
|
|
+ if(args.col === 0 || (args.col === 4 && me.allowComponent.indexOf(me.currentGlj.gljType) !== -1)
|
|
|
+ || args.col === 6){
|
|
|
+ args.cancel = true;
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ rObj.ID = me.currentGlj.ID;
|
|
|
+ rObj.gljClass = me.currentGlj.gljClass;
|
|
|
}
|
|
|
}
|
|
|
+ else {
|
|
|
+ me.currentGlj = null;
|
|
|
+ }
|
|
|
},
|
|
|
onCellEditEnd: function(sender, args) {
|
|
|
let me = repositoryGljObj, that = gljComponentOprObj,
|
|
@@ -531,7 +521,6 @@ let repositoryGljObj = {
|
|
|
}
|
|
|
if(updateArr.length >0 || addArr.length >0){
|
|
|
me.currentEditingGlj = null;
|
|
|
- //me.workBook.getSheet(0).setValue(11, 5, "人工");
|
|
|
me.mixUpdateRequest(updateArr, addArr, []);
|
|
|
}
|
|
|
},
|
|
@@ -605,12 +594,9 @@ let repositoryGljObj = {
|
|
|
}
|
|
|
$('#alertText').text(text + "不可为空!");
|
|
|
$('#codeAlertBtn').click();
|
|
|
- sheet.options.isProtected = true;
|
|
|
$('#codAleConfBtn').click(function () {
|
|
|
- sheetOpr.lockSomeCodes(sheet, 0, cacheSection.length);
|
|
|
});
|
|
|
$('#codAleClose').click(function () {
|
|
|
- sheetOpr.lockSomeCodes(sheet, 0, cacheSection.length);
|
|
|
});
|
|
|
}
|
|
|
}
|
|
@@ -780,11 +766,39 @@ let repositoryGljObj = {
|
|
|
pasteObj.gljClass = me.gljCurTypeId;
|
|
|
return true;
|
|
|
},
|
|
|
+ canPasted: function (info) {
|
|
|
+ let rst = true;
|
|
|
+ let me = repositoryGljObj;
|
|
|
+ if(me.gljCurTypeId < 0){
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ if(info.cellRange.col + info.cellRange.colCount - 1 > me.setting.header.length - 2){
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ if(info.cellRange.row < me.currentCache.length){
|
|
|
+ if(info.cellRange.col === 0){
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ else if(info.cellRange.col <= 4 && info.cellRange.col + info.cellRange.colCount - 1 >= 4){
|
|
|
+ for(let i = 0, len = info.cellRange.rowCount; i < len; i++){
|
|
|
+ let row = i + info.cellRange.row;
|
|
|
+ if(row < me.currentCache.length){
|
|
|
+ if(me.allowComponent.indexOf(me.currentCache[row].gljType) !== -1){
|
|
|
+ rst = false;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return rst;
|
|
|
+ },
|
|
|
onClipboardPasting: function(sender, args) {
|
|
|
let me = repositoryGljObj;
|
|
|
let maxCol = args.cellRange.col + args.cellRange.colCount - 1;
|
|
|
- //复制的列数超过正确的列数,不可复制
|
|
|
- if (me.gljCurTypeId < 0 || maxCol >= me.setting.header.length -1) {
|
|
|
+ if (!me.canPasted(args)) {
|
|
|
args.cancel = true;
|
|
|
}
|
|
|
},
|
|
@@ -955,9 +969,6 @@ let repositoryGljObj = {
|
|
|
}
|
|
|
else{
|
|
|
me.currentCache = me.getCache();
|
|
|
- //sheetOpr.unLockAllCells(me.workBook.getSheet(0));
|
|
|
- sheetOpr.reLockSomeCodes(me.workBook.getSheet(0), 0, me.currentCache.length);
|
|
|
- //sheetOpr.lockSomeCodes(me.workBook.getSheet(0), 0, me.currentCache.length);
|
|
|
}
|
|
|
me.showGljItems(me.complementaryGljList, me.gljCurTypeId);
|
|
|
}
|
|
@@ -1050,20 +1061,13 @@ let gljTypeTreeOprObj = {
|
|
|
me.addGljObj = null;
|
|
|
//me.currentCache = me.getCache();
|
|
|
sheetOpr.cleanData(that.workBook.getSheet(0), that.setting, 5);
|
|
|
- that.workBook.getSheet(0).getRange(-1, 0 , -1, 1, GC.Spread.Sheets.SheetArea.viewport).locked(true);
|
|
|
- that.workBook.getSheet(0).getRange(-1, 4 , -1, 1, GC.Spread.Sheets.SheetArea.viewport).locked(true);
|
|
|
- me.workBook.getSheet(0).getRange(-1, 6 , -1, 1, GC.Spread.Sheets.SheetArea.viewport).locked(true);
|
|
|
- //that.workBook.getSheet(0).options.isProtected = true;
|
|
|
if (me.parentNodeIds["_pNodeId_" + treeNode.ID]) {
|
|
|
me.currentOprParent = 1;
|
|
|
me.currentCache = me.getParentCache(me.parentNodeIds["_pNodeId_" + treeNode.ID]);
|
|
|
- sheetOpr.lockCodeCells(me.workBook.getSheet(0), me.currentCache.length);
|
|
|
me.workBook.getSheet(0).setRowCount(me.currentCache.length);
|
|
|
} else {
|
|
|
me.currentOprParent = 0;
|
|
|
me.currentCache = me.getCache();
|
|
|
- sheetOpr.unLockAllCells(me.workBook.getSheet(0));
|
|
|
- sheetOpr.reLockSomeCodes(me.workBook.getSheet(0), 0, me.currentCache.length);
|
|
|
}
|
|
|
me.showGljItems(me.complementaryGljList, gljTypeId);
|
|
|
}
|