Browse Source

billsQuanDecimal debug

zhongzewei 7 years ago
parent
commit
dd61a552c3

+ 17 - 7
web/building_saas/main/js/views/project_property_bills_quantity_decimal.js

@@ -61,7 +61,7 @@ let billsDecimalView = {
     },
     
     setComboBox: function (sheet, items) {
-        let combo = new GC.Spread.Sheets.CellTypes.ComboBox();
+        let combo = sheetCommonObj.getDynamicCombo();
         combo.items(items);
         combo.editable(true);
         sheet.getRange(-1, 1, -1, 1).cellType(combo);
@@ -94,10 +94,12 @@ let billsDecimalView = {
     bindEvent: function (workBook) {
         const _events = GC.Spread.Sheets.Events;
         let sheet = workBook.getActiveSheet();
-        sheet.bind(_events.EditStarting, this.onEditStarting);
-        sheet.bind(_events.EditEnded, this.onEditEnded);
-        sheet.bind(_events.ClipboardPasting, this.onClipboardPasting);
-        sheet.bind(_events.ClipboardPasted, this.onClipboardPasted);
+        let me = billsDecimalView;
+        sheet.bind(_events.EnterCell, me.onEnterCell);
+        sheet.bind(_events.EditStarting, me.onEditStarting);
+        sheet.bind(_events.EditEnded, me.onEditEnded);
+        sheet.bind(_events.ClipboardPasting, me.onClipboardPasting);
+        sheet.bind(_events.ClipboardPasted, me.onClipboardPasted);
     },
 
     showData(datas){
@@ -116,6 +118,10 @@ let billsDecimalView = {
         this.renderSheetFuc(sheet, fuc);
     },
 
+    onEnterCell: function (sender, args) {
+        args.sheet.repaint();
+    },
+
     onEditStarting: function (sender, args) {
         if(args.col === 0 && args.row === 0){//其他未列单位不可编辑
             args.cancel = true;
@@ -123,13 +129,16 @@ let billsDecimalView = {
     },
 
     onEditEnded: function (sender, args) {
+        console.log('enter');
         let me = billsDecimalView;
-        let v =  args.editingText ? args.editingText.toString().trim() : '';
+        console.log(args);
+        let v =  args.editingText !== undefined && args.editingText !== null ? args.editingText.toString().trim() : '';
+        console.log(v);
         if(v.length === 0){
             return;
         }
         if(args.col === 0){
-            if(me.hasUnit(me.cache, v)){
+            if(v !== me.cache[args.row].unit && me.hasUnit(me.cache, v)){
                 alert('已存在此计量单位');
                 args.sheet.setValue(args.row, args.col, me.isDef(me.cache[args.row]) ? me.cache[args.row].unit : '');
             }
@@ -150,6 +159,7 @@ let billsDecimalView = {
                 me.cache[args.row].decimal = v;
             }
         }
+        console.log(me.cache[args.row]);
     },
 
     onClipboardPasting: function (sender, args) {

+ 0 - 3
web/building_saas/main/js/views/project_view.js

@@ -751,10 +751,7 @@ $('#property_ok').click(function () {
     }
     //清单工程量精度
     let newBillsDecimalDatas = billsDecimalView.toBillsDecimalDatas(billsDecimalView.cache);
-    console.log(newBillsDecimalDatas);
-    console.log(billsQuanDecimal.datas);
     if(billsDecimalView.toUpdate(billsQuanDecimal.datas, newBillsDecimalDatas)){
-        console.log(newBillsDecimalDatas);
         reCalcBills = true;
         properties['property.billsQuantityDecimal'] = newBillsDecimalDatas;
     }