Explorar o código

fix:自定义分析生成指标时,如果选择行数据,那么行位置选择错误的bug修复,需要-1

Roc hai 1 ano
pai
achega
3f1f7d828e
Modificáronse 1 ficheiros con 9 adicións e 13 borrados
  1. 9 13
      services/data/excel/custom_analysis_edb.go

+ 9 - 13
services/data/excel/custom_analysis_edb.go

@@ -260,17 +260,19 @@ func Refresh(excelInfo *excel.ExcelInfo) (err error, errMsg string, isSendEmail
 				return
 			}
 
+			startNum = startNum - 1
+			endNum = endNum - 1
 			// 选择行的数据
 			if isRow {
+				// 因为是选择一行的数据,所以开始行和结束行时一样的
+				//endNum = startNum - 1
+
 				// 开始列名、结束列
 				var startColumn, endColumn int
 				if isAll {
 					// 结束列(其实也就是整列的个数)
 					endColumn = len(sheetInfo.Cols) - 1
 				} else {
-					//startNum = startNum - 1
-					//endNum = endNum - 1
-
 					tmpStartColumn, tmpErr := excelize.ColumnNameToNumber(startColumnName)
 					if tmpErr != nil {
 						errMsg = "列名异常:" + startColumnName
@@ -300,11 +302,8 @@ func Refresh(excelInfo *excel.ExcelInfo) (err error, errMsg string, isSendEmail
 
 			} else if isColumn { // 选择列的数据
 				if isAll {
-					// 结束行(其实也就是整个sheet有多少行)
+					// 选择一整列的话,结束行得根据实际情况调整(其实也就是整个sheet有多少行)
 					endNum = len(sheetInfo.Rows) - 1
-				} else {
-					startNum = startNum - 1
-					endNum = endNum - 1
 				}
 
 				startColumn, tmpErr := excelize.ColumnNameToNumber(startColumnName)
@@ -344,6 +343,8 @@ func Refresh(excelInfo *excel.ExcelInfo) (err error, errMsg string, isSendEmail
 				return
 			}
 
+			startNum = startNum - 1
+			endNum = endNum - 1
 			// 选择行的数据
 			if isRow {
 				// 开始列名、结束列
@@ -352,8 +353,6 @@ func Refresh(excelInfo *excel.ExcelInfo) (err error, errMsg string, isSendEmail
 					// 结束列(其实也就是整列的个数)
 					endColumn = len(sheetInfo.Cols) - 1
 				} else {
-					//startNum = startNum - 1
-					//endNum = endNum - 1
 
 					tmpStartColumn, tmpErr := excelize.ColumnNameToNumber(startColumnName)
 					if tmpErr != nil {
@@ -384,11 +383,8 @@ func Refresh(excelInfo *excel.ExcelInfo) (err error, errMsg string, isSendEmail
 
 			} else if isColumn { // 选择列的数据
 				if isAll {
-					// 结束行(其实也就是整个sheet有多少行)
+					// 选择一整列的话,结束行得根据实际情况调整(其实也就是整个sheet有多少行)
 					endNum = len(sheetInfo.Rows) - 1
-				} else {
-					startNum = startNum - 1
-					endNum = endNum - 1
 				}
 
 				startColumn, tmpErr := excelize.ColumnNameToNumber(startColumnName)