ソースを参照

修复数字换行bug

laiguoran 5 年 前
コミット
f17a24d527
1 ファイル変更95 行追加92 行削除
  1. 95 92
      app/public/js/material.js

+ 95 - 92
app/public/js/material.js

@@ -242,7 +242,9 @@ $(document).ready(() => {
                 const select = SpreadJsObj.getSelectObject(info.sheet);
                 const col = info.sheet.zh_setting.cols[info.col];
                 // 未改变值则不提交
-                const validText = !isNaN(info.editingText) ? info.editingText : (info.editingText ? trimInvalidChar(info.editingText) : null);
+                console.log(!isNaN(info.editingText));
+                const validText = !isNaN(info.editingText) ? parseFloat(info.editingText) : (info.editingText ? trimInvalidChar(info.editingText) : null);
+                console.log(validText);
                 const orgValue = select[col.field];
                 if (orgValue == validText || ((!orgValue || orgValue === '') && (validText === ''))) {
                     SpreadJsObj.reLoadRowData(info.sheet, info.row);
@@ -325,103 +327,104 @@ $(document).ready(() => {
                 });
             }
         },
-        // clipboardPasted(e, info) {
-        //     console.log(info)
-        //     if (info.sheet.zh_setting) {
-        //         const select = SpreadJsObj.getSelectObject(info.sheet);
-        //         const col = info.sheet.zh_setting.cols[info.col];
-        //         // 未改变值则不提交
-        //         const validText = info.editingText ? trimInvalidChar(info.editingText) : null;
-        //         console.log(validText);
-        //         const orgValue = select[col.field];
-        //         if (orgValue == validText || ((!orgValue || orgValue === '') && (validText === ''))) {
-        //             SpreadJsObj.reLoadRowData(info.sheet, info.row);
-        //             return;
-        //         }
-        //         // 判断部分值是否输入的是数字判断和数据计算
-        //         if (col.field === 'basic_price') {
-        //             if (isNaN(validText)) {
-        //                 toastr.error('不能输入其它非数字类型字符');
-        //                 SpreadJsObj.reLoadRowData(info.sheet, info.row);
-        //                 return;
-        //             }
-        //             const num = parseFloat(validText);
-        //             if (num < 0 || !/^\d+(\.\d{1,3})?$/.test(num)) {
-        //                 toastr.error('请输入大于0并且小于3位小数的浮点数');
-        //                 SpreadJsObj.reLoadRowData(info.sheet, info.row);
-        //                 return;
-        //             }
-        //         }
-        //         if (col.field === 'msg_tp') {
-        //             if (isNaN(validText)) {
-        //                 toastr.error('不能输入其它非数字类型字符');
-        //                 SpreadJsObj.reLoadRowData(info.sheet, info.row);
-        //                 return;
-        //             }
-        //             const num = parseFloat(validText);
-        //             if (num < 0 || !/^\d+(\.\d{1,3})?$/.test(num)) {
-        //                 toastr.error('请输入大于0并且小于3位小数的浮点数');
-        //                 SpreadJsObj.reLoadRowData(info.sheet, info.row);
-        //                 return;
-        //             }
-        //         }
-        //         if (col.field === 'm_up_risk') {
-        //             // 只能输入正整数
-        //             if (isNaN(validText)) {
-        //                 toastr.error('不能输入其它非数字类型字符');
-        //                 SpreadJsObj.reLoadRowData(info.sheet, info.row);
-        //                 return;
-        //             }
-        //             const num = parseFloat(validText);
-        //             if (num < 0 || num > 100 || !/^\d+$/.test(num)) {
-        //                 toastr.error('只能输入0-100的正整数');
-        //                 SpreadJsObj.reLoadRowData(info.sheet, info.row);
-        //                 return;
-        //             }
-        //         }
-        //         if (col.field === 'm_down_risk') {
-        //             // 只能输入正整数
-        //             if (isNaN(validText)) {
-        //                 toastr.error('不能输入其它非数字类型字符');
-        //                 SpreadJsObj.reLoadRowData(info.sheet, info.row);
-        //                 return;
-        //             }
-        //             const num = parseFloat(validText);
-        //             if (num < 0 || num > 100 || !/^\d+$/.test(num)) {
-        //                 toastr.error('只能输入0-100的正整数');
-        //                 SpreadJsObj.reLoadRowData(info.sheet, info.row);
-        //                 return;
-        //             }
-        //         }
-        //         if (col.field === 't_type') {
-        //             if (validText === 1) {
-        //                 select.quantity = null;
-        //                 select.expr = null;
-        //                 select.m_tp = null;
-        //             }
-        //         }
-        //         select[col.field] = validText;
-        //         select.msg_spread = materialCol.getValue.msg_spread(select);
-        //         select.m_spread = materialCol.getValue.m_spread(select);
-        //         select.m_tp = materialCol.getValue.m_tp(select);
-        //         // 更新至服务器
-        //         postData(window.location.pathname + '/save', { type:'update', updateData: select }, function (result) {
-        //             m_tp = result.m_tp;
-        //             resetTpTable();
-        //             SpreadJsObj.reLoadRowData(info.sheet, info.row);
-        //         }, function () {
-        //             select[col.field] = orgValue;
-        //             SpreadJsObj.reLoadRowData(info.sheet, info.row);
-        //         });
-        //     }
-        // },
+        clipboardPasted(e, info) {
+            const tree = info.sheet.zh_tree;
+            if (!tree) { return; }
+            console.log(info);
+            // if (info.sheet.zh_setting) {
+            //     const select = SpreadJsObj.getSelectObject(info.sheet);
+            //     const col = info.sheet.zh_setting.cols[info.col];
+            //     // 未改变值则不提交
+            //     const validText = info.editingText ? trimInvalidChar(info.editingText) : null;
+            //     const orgValue = select[col.field];
+            //     if (orgValue == validText || ((!orgValue || orgValue === '') && (validText === ''))) {
+            //         SpreadJsObj.reLoadRowData(info.sheet, info.row);
+            //         return;
+            //     }
+            //     // 判断部分值是否输入的是数字判断和数据计算
+            //     if (col.field === 'basic_price') {
+            //         if (isNaN(validText)) {
+            //             toastr.error('不能输入其它非数字类型字符');
+            //             SpreadJsObj.reLoadRowData(info.sheet, info.row);
+            //             return;
+            //         }
+            //         const num = parseFloat(validText);
+            //         if (num < 0 || !/^\d+(\.\d{1,3})?$/.test(num)) {
+            //             toastr.error('请输入大于0并且小于3位小数的浮点数');
+            //             SpreadJsObj.reLoadRowData(info.sheet, info.row);
+            //             return;
+            //         }
+            //     }
+            //     if (col.field === 'msg_tp') {
+            //         if (isNaN(validText)) {
+            //             toastr.error('不能输入其它非数字类型字符');
+            //             SpreadJsObj.reLoadRowData(info.sheet, info.row);
+            //             return;
+            //         }
+            //         const num = parseFloat(validText);
+            //         if (num < 0 || !/^\d+(\.\d{1,3})?$/.test(num)) {
+            //             toastr.error('请输入大于0并且小于3位小数的浮点数');
+            //             SpreadJsObj.reLoadRowData(info.sheet, info.row);
+            //             return;
+            //         }
+            //     }
+            //     if (col.field === 'm_up_risk') {
+            //         // 只能输入正整数
+            //         if (isNaN(validText)) {
+            //             toastr.error('不能输入其它非数字类型字符');
+            //             SpreadJsObj.reLoadRowData(info.sheet, info.row);
+            //             return;
+            //         }
+            //         const num = parseFloat(validText);
+            //         if (num < 0 || num > 100 || !/^\d+$/.test(num)) {
+            //             toastr.error('只能输入0-100的正整数');
+            //             SpreadJsObj.reLoadRowData(info.sheet, info.row);
+            //             return;
+            //         }
+            //     }
+            //     if (col.field === 'm_down_risk') {
+            //         // 只能输入正整数
+            //         if (isNaN(validText)) {
+            //             toastr.error('不能输入其它非数字类型字符');
+            //             SpreadJsObj.reLoadRowData(info.sheet, info.row);
+            //             return;
+            //         }
+            //         const num = parseFloat(validText);
+            //         if (num < 0 || num > 100 || !/^\d+$/.test(num)) {
+            //             toastr.error('只能输入0-100的正整数');
+            //             SpreadJsObj.reLoadRowData(info.sheet, info.row);
+            //             return;
+            //         }
+            //     }
+            //     if (col.field === 't_type') {
+            //         if (validText === 1) {
+            //             select.quantity = null;
+            //             select.expr = null;
+            //             select.m_tp = null;
+            //         }
+            //     }
+            //     select[col.field] = validText;
+            //     select.msg_spread = materialCol.getValue.msg_spread(select);
+            //     select.m_spread = materialCol.getValue.m_spread(select);
+            //     select.m_tp = materialCol.getValue.m_tp(select);
+            //     // 更新至服务器
+            //     postData(window.location.pathname + '/save', { type:'update', updateData: select }, function (result) {
+            //         m_tp = result.m_tp;
+            //         resetTpTable();
+            //         SpreadJsObj.reLoadRowData(info.sheet, info.row);
+            //     }, function () {
+            //         select[col.field] = orgValue;
+            //         SpreadJsObj.reLoadRowData(info.sheet, info.row);
+            //     });
+            // }
+        },
         setReadOnly: function(readOnly) {
             SpreadJsObj.resetFieldReadOnly(materialSpread.getActiveSheet(), 'msg_spread', 'm_spread', 'm_tp', 'pre_tp', readOnly);
         }
     };
     materialSpreadObj.refreshActn();
     materialSpread.bind(spreadNS.Events.SelectionChanged, materialSpreadObj.selectionChanged);
-    // materialSpread.bind(spreadNS.Events.ClipboardPasted, materialSpreadObj.clipboardPasted);
+    materialSpread.bind(spreadNS.Events.ClipboardPasted, materialSpreadObj.clipboardPasted);
     // const sheet = materialSpread.getActiveSheet();
     // sheet.suspendPaint();
     // var range = sheet.getRange(-1, 8, -1, 1);