|
@@ -265,8 +265,18 @@ func Refresh(excelInfo *excel.ExcelInfo, lang string) (err error, errMsg string,
|
|
|
// 获取对应的日期和数据列表
|
|
|
relDateList, relDataList, tmpErr, tmpErrMsg := getDateAndDataList(v, xlsxFile)
|
|
|
if tmpErr != nil {
|
|
|
- err = errors.New(fmt.Sprintf("获取对应的日期和数据列表,Err:%s", tmpErr.Error()))
|
|
|
- errMsg = tmpErrMsg
|
|
|
+ err = errors.New(fmt.Sprintf("《%s》获取对应的日期和数据列表,Err:%s", v.EdbName, tmpErr.Error()))
|
|
|
+ errMsg = fmt.Sprintf("《%s》%s", v.EdbName, tmpErrMsg)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if len(relDateList) <= 0 {
|
|
|
+ errMsg = fmt.Sprintf("《%s》的日期序列为空", v.EdbName)
|
|
|
+ err = errors.New(errMsg)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if len(relDataList) <= 0 {
|
|
|
+ errMsg = fmt.Sprintf("《%s》的数据序列为空", v.EdbName)
|
|
|
+ err = errors.New(errMsg)
|
|
|
return
|
|
|
}
|
|
|
//fmt.Println(v)
|
|
@@ -318,8 +328,9 @@ func getDateAndDataList(excelEdbMappingItem *excel.ExcelEdbMappingItem, xlsxFile
|
|
|
|
|
|
// 日期序列
|
|
|
{
|
|
|
- sheetName, startColumnName, endColumnName, startNum, endNum, isAll, isRow, isColumn, tmpErr := GetSheetStr(excelEdbMappingItem.DateSequenceStr)
|
|
|
+ sheetName, startColumnName, endColumnName, startNum, endNum, isAll, isRow, isColumn, tmpErr, tmpErrMsg := GetSheetStr(excelEdbMappingItem.DateSequenceStr)
|
|
|
if tmpErr != nil {
|
|
|
+ errMsg = tmpErrMsg
|
|
|
err = tmpErr
|
|
|
return
|
|
|
}
|
|
@@ -423,8 +434,9 @@ func getDateAndDataList(excelEdbMappingItem *excel.ExcelEdbMappingItem, xlsxFile
|
|
|
|
|
|
// 数据序列
|
|
|
{
|
|
|
- sheetName, startColumnName, endColumnName, startNum, endNum, isAll, isRow, isColumn, tmpErr := GetSheetStr(excelEdbMappingItem.DataSequenceStr)
|
|
|
+ sheetName, startColumnName, endColumnName, startNum, endNum, isAll, isRow, isColumn, tmpErr, tmpErrMsg := GetSheetStr(excelEdbMappingItem.DataSequenceStr)
|
|
|
if tmpErr != nil {
|
|
|
+ errMsg = tmpErrMsg
|
|
|
err = tmpErr
|
|
|
return
|
|
|
}
|
|
@@ -541,11 +553,14 @@ func getDateAndDataList(excelEdbMappingItem *excel.ExcelEdbMappingItem, xlsxFile
|
|
|
// @return isAll bool 是否选择整行/列数据
|
|
|
// @return isRow bool 是否选择行数据
|
|
|
// @return isColumn bool 是否选择列数据
|
|
|
-func GetSheetStr(sequenceStr string) (sheetName, startColumnName, endColumnName string, startNum, endNum int, isAll, isRow, isColumn bool, err error) {
|
|
|
+// @return err error 错误信息
|
|
|
+// @return errMsg string 错误信息
|
|
|
+func GetSheetStr(sequenceStr string) (sheetName, startColumnName, endColumnName string, startNum, endNum int, isAll, isRow, isColumn bool, err error, errMsg string) {
|
|
|
// 找出sheetName
|
|
|
tmpList := strings.Split(sequenceStr, "!")
|
|
|
if len(tmpList) != 2 {
|
|
|
- err = errors.New("错误的公式,查找sheet异常:" + sequenceStr)
|
|
|
+ errMsg = "错误的公式,查找sheet异常:" + sequenceStr
|
|
|
+ err = errors.New(errMsg)
|
|
|
return
|
|
|
}
|
|
|
|
|
@@ -554,7 +569,8 @@ func GetSheetStr(sequenceStr string) (sheetName, startColumnName, endColumnName
|
|
|
// 分离开始/结束单元格
|
|
|
tmpList = strings.Split(tmpList[1], ":")
|
|
|
if len(tmpList) != 2 {
|
|
|
- err = errors.New("错误的公式,查找开始/结束单元格异常:" + sequenceStr)
|
|
|
+ errMsg = "错误的公式,查找开始/结束单元格异常:" + sequenceStr
|
|
|
+ err = errors.New(errMsg)
|
|
|
return
|
|
|
}
|
|
|
|
|
@@ -563,12 +579,14 @@ func GetSheetStr(sequenceStr string) (sheetName, startColumnName, endColumnName
|
|
|
|
|
|
lenList := len(startList)
|
|
|
if lenList != len(endList) {
|
|
|
- err = errors.New("错误的公式,开始与结束单元格异常:" + sequenceStr)
|
|
|
+ errMsg = "错误的公式,开始与结束单元格异常:" + sequenceStr
|
|
|
+ err = errors.New(errMsg)
|
|
|
return
|
|
|
}
|
|
|
|
|
|
if lenList != 3 && lenList != 2 {
|
|
|
- err = errors.New("错误的公式:" + sequenceStr)
|
|
|
+ errMsg = "错误的公式:" + sequenceStr
|
|
|
+ err = errors.New(errMsg)
|
|
|
return
|
|
|
}
|
|
|
|
|
@@ -606,7 +624,7 @@ func GetSheetStr(sequenceStr string) (sheetName, startColumnName, endColumnName
|
|
|
// 确定行
|
|
|
startDeci, tmpErr1 := decimal.NewFromString(startList[2])
|
|
|
endDeci, tmpErr2 := decimal.NewFromString(endList[2])
|
|
|
- if tmpErr1 != nil && tmpErr1 != tmpErr2 {
|
|
|
+ if tmpErr1 != nil && errors.Is(tmpErr1, tmpErr2) {
|
|
|
err = errors.New("错误的公式3:" + sequenceStr)
|
|
|
return
|
|
|
}
|
|
@@ -615,7 +633,8 @@ func GetSheetStr(sequenceStr string) (sheetName, startColumnName, endColumnName
|
|
|
endNum = int(endDeci.IntPart())
|
|
|
|
|
|
if startColumnName != endColumnName && startNum != endNum {
|
|
|
- err = errors.New("选区不允许跨行或者跨列")
|
|
|
+ errMsg = `选区不允许跨行或者跨列`
|
|
|
+ err = errors.New(errMsg)
|
|
|
}
|
|
|
|
|
|
if startColumnName == endColumnName {
|