Browse Source

优化操作相关

zhongzewei 7 years ago
parent
commit
84716e4444

+ 10 - 0
public/web/sheet/sheet_common.js

@@ -8,6 +8,7 @@ var sheetCommonObj = {
         var me = this;
         var spreadBook = new GC.Spread.Sheets.Workbook(container, { sheetCount: SheetCount });
         spreadBook.options.allowCopyPasteExcelStyle = false;
+        spreadBook.options.allowExtendPasteRange = true;
         spreadBook.options.tabStripVisible = false;
         //spreadBook.options.showHorizontalScrollbar = false;
         spreadBook.options.allowUserDragDrop = false;
@@ -356,6 +357,15 @@ var sheetCommonObj = {
         sheet.resumePaint();
         sheet.resumeEvent();
     },
+    setLockCol: function (sheet, col, isLocked) {
+        sheet.suspendPaint();
+        sheet.suspendEvent();
+        for(let row = 0, len = sheet.getRowCount(); row < len; row++){
+            sheet.getCell(row, col).locked(isLocked);
+        }
+        sheet.resumePaint();
+        sheet.resumeEvent();
+    },
     chkIfEmpty: function(rObj, setting) {
         var rst = true;
         if (rObj) {

+ 3 - 13
web/maintain/ration_repository/js/ration.js

@@ -50,7 +50,6 @@ var rationOprObj = {
             window.location.href = "/rationRepository/main";
         }
         me.workBook = sheetCommonObj.buildSheet(container, me.setting, 30);
-        me.workBook.options.showHorizontalScrollbar = true;
         me.getRationsCodes(rationRepId);
         me.rationDelOpr();
         me.workBook.getSheet(0).bind(GC.Spread.Sheets.Events.ClipboardPasting, me.onClipboardPasting);
@@ -451,15 +450,6 @@ var rationOprObj = {
         }
         return rst;
     },
-    setLockCol: function (sheet, col, isLocked) {
-        sheet.suspendPaint();
-        sheet.suspendEvent();
-        for(let row = 0, len = sheet.getRowCount(); row < len; row++){
-            sheet.getCell(row, col).locked(isLocked);
-        }
-        sheet.resumePaint();
-        sheet.resumeEvent();
-    },
     getRationsCodes: function (repId) {
         let me = rationOprObj;
         $.ajax({
@@ -476,7 +466,7 @@ var rationOprObj = {
     },
     mixUpdateRequest: function(updateArr, addArr, removeIds) {
         var me = rationOprObj;
-        me.setLockCol(me.workBook.getSheet(0), 0, true);
+        sheetCommonObj.setLockCol(me.workBook.getSheet(0), 0, true);
         $.ajax({
             type:"POST",
             url:"api/mixUpdateRationItems",
@@ -505,7 +495,7 @@ var rationOprObj = {
                     me.mixUpdate = 0;
                    // me.workBook.getSheet(0).setActiveCell(me.activeCell.row, me.activeCell.col);
                 }
-                me.setLockCol(me.workBook.getSheet(0), 0, false);
+                sheetCommonObj.setLockCol(me.workBook.getSheet(0), 0, false);
             },
             error:function(){
             }
@@ -581,7 +571,7 @@ var rationOprObj = {
                 //sheetCommonObj.cleanSheet(me.workBook.getSheet(0), me.setting, -1);
                 sheetCommonObj.cleanData(me.workBook.getSheet(0), me.setting, -1);
                 sheetCommonObj.showData(me.workBook.getSheet(0), me.setting, cacheSection);
-                me.setLockCol(me.workBook.getSheet(0), 4, true);
+                sheetCommonObj.setLockCol(me.workBook.getSheet(0), 4, true);
                 //combo
                 me.setCombo(me.workBook.getActiveSheet(), rationUnits);
                 if(me.mixUpdate === 1){

+ 6 - 3
web/maintain/ration_repository/js/ration_glj.js

@@ -167,9 +167,9 @@ var rationGLJOprObj = {
     },
     onClipboardPasting: function(sender, args) {
         var me = rationGLJOprObj;
-        /*if (args.cellRange.colCount != 1 || args.cellRange.col != 0 || !(me.currentRationItem)) {
+        if (!(args.cellRange.col === 0 || args.cellRange.col === 5) || !(me.currentRationItem)) {
             args.cancel = true;
-        }*/
+        }
     },
     onClipboardPasted: function(e, info) {
         var me = rationGLJOprObj, repId = storageUtil.getSessionCache("RationGrp","repositoryID");
@@ -326,6 +326,7 @@ var rationGLJOprObj = {
 
     addGljItems: function(codes, repId, args) {
         var me = this;
+        sheetCommonObj.setLockCol(me.sheet, 0, true);
         $.ajax({
             type:"POST",
             url:"api/getGljItemsByCodes",
@@ -337,7 +338,8 @@ var rationGLJOprObj = {
                 //sheetCommonObj.cleanSheet(me.sheet, me.setting, -1);
                 if (result) {
                     if(result.data.length > 0){
-                        sheetCommonObj.cleanSheet(me.sheet, me.setting, -1);
+                        //sheetCommonObj.cleanSheet(me.sheet, me.setting, -1);
+                        sheetCommonObj.cleanData(me.sheet, me.setting, -1);
                         var rstArr = [], dummyR = {gljId: 0, consumeAmt:0}, newAddArr = [];
                         for (var i = 0; i < result.data.length; i++) {
                             dummyR.gljId = result.data[i].ID;
@@ -387,6 +389,7 @@ var rationGLJOprObj = {
                     }
                 }
                 sheetCommonObj.lockCells(me.sheet, me.setting);
+                sheetCommonObj.setLockCol(me.sheet, 0, false);
             },
             error:function(err){
                 alert(err);