From 771699a2a85aecde95a4393ef6016b28f73a551e Mon Sep 17 00:00:00 2001
From: licp <lichunping@guanfang.com.cn>
Date: 星期五, 28 六月 2024 14:11:46 +0800
Subject: [PATCH] 检验任务bug修复
---
src/util/excelFountion.js | 121 +++++++++++++++++++++++-----------------
1 files changed, 70 insertions(+), 51 deletions(-)
diff --git a/src/util/excelFountion.js b/src/util/excelFountion.js
index d879f8f..de10531 100644
--- a/src/util/excelFountion.js
+++ b/src/util/excelFountion.js
@@ -1,7 +1,7 @@
function SUM(...val){
- let num = 0;
+ let num = null;
if(val&&val.length>0){
val.forEach(item=>{
num+=item;
@@ -10,33 +10,44 @@
return num;
}
function MAX(...val){
- let max = 0;
+ let max = null;
if(val&&val.length>0){
val = val.filter(item=>item!=null&&item!=='')
- max = Math.max(...val)
+ if(val.length>0){
+ max = Math.max(...val)
+ }else{
+ max = null;
+ }
}
return max;
}
function MIN(...val){
- let min = 0;
+ let min = null;
if(val&&val.length>0){
val = val.filter(item=>item!=null&&item!=='')
- min = Math.min(...val)
+ console.log(val)
+ if(val.length>0){
+ min = Math.min(...val)
+ }
}
return min;
}
function AVERAGE(...val){
- let num = 0;
+ let num = null;
let arr = [];
if(val&&val.length>0){
arr = val.filter(item=>item!=null&&item!=='')
arr.forEach(item=>{
num+=item;
})
- return num/arr.length;
+ if(arr.length>0){
+ return num/arr.length;
+ }else{
+ return null;
+ }
}else{
- return 0;
+ return null;
}
}
@@ -51,19 +62,23 @@
* @param {Object} cellId
*/
function getColumnNameFromId(cellId){
- if (! Array.isArray(cellId)) {
- cellId = cellId.split('-');
- }
- var i = cellId[0];
- var letter = '';
- if (i > 701) {
- letter += String.fromCharCode(64 + parseInt(i / 676));
- letter += String.fromCharCode(64 + parseInt((i % 676) / 26));
- } else if (i > 25) {
- letter += String.fromCharCode(64 + parseInt(i / 26));
- }
- letter += String.fromCharCode(65 + (i % 26));
- return letter + (parseInt(cellId[1]) + 1);
+ try{
+ if (! Array.isArray(cellId)) {
+ cellId = cellId.split('-');
+ }
+ var i = cellId[0];
+ var letter = '';
+ if (i > 701) {
+ letter += String.fromCharCode(64 + parseInt(i / 676));
+ letter += String.fromCharCode(64 + parseInt((i % 676) / 26));
+ } else if (i > 25) {
+ letter += String.fromCharCode(64 + parseInt(i / 26));
+ }
+ letter += String.fromCharCode(65 + (i % 26));
+ return letter + (parseInt(cellId[1]) + 1);
+ }catch(e){
+ console.log('error',cellId)
+ }
}
/**
* 鏍规嵁鍒楀悕鑾峰彇鍧愭爣
@@ -71,37 +86,41 @@
* @param {Object} arr
*/
function getIdFromColumnName(id, arr) {
- // Get the letters
- var t = /^[a-zA-Z]+/.exec(id);
- if (t) {
- // Base 26 calculation
- var code = 0;
- for (var i = 0; i < t[0].length; i++) {
- code += parseInt(t[0].charCodeAt(i) - 64) * Math.pow(26, (t[0].length - 1 - i));
- }
- code--;
- // Make sure jexcel starts on zero
- if (code < 0) {
- code = 0;
- }
-
- // Number
- var number = parseInt(/[0-9]+$/.exec(id));
- if (number > 0) {
- number--;
- }
-
- if (arr == true) {
- id = [ code, number ];
- } else {
- // id = code + '-' + number;
- id = {
- c:code,
- r:number
+ try{
+ // Get the letters
+ var t = /^[a-zA-Z]+/.exec(id);
+ if (t) {
+ // Base 26 calculation
+ var code = 0;
+ for (var i = 0; i < t[0].length; i++) {
+ code += parseInt(t[0].charCodeAt(i) - 64) * Math.pow(26, (t[0].length - 1 - i));
}
- }
- }
- return id;
+ code--;
+ // Make sure jexcel starts on zero
+ if (code < 0) {
+ code = 0;
+ }
+
+ // Number
+ var number = parseInt(/[0-9]+$/.exec(id));
+ if (number > 0) {
+ number--;
+ }
+
+ if (arr == true) {
+ id = [ code, number ];
+ } else {
+ // id = code + '-' + number;
+ id = {
+ c:code,
+ r:number
+ }
+ }
+ }
+ return id;
+ }catch(e){
+ console.log('error',id)
+ }
}
// 鑾峰彇鍙傛暟鍒楄〃
--
Gitblit v1.9.3