|
@@ -285,16 +285,29 @@ func ImportManualData(path string, sysUser *system.Admin) (successCount, failCou
|
|
err = errors.New(errMsg)
|
|
err = errors.New(errMsg)
|
|
return
|
|
return
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ templateType := 1 // 模板类型
|
|
|
|
+ minCellNum := 6 // 模板最小列数
|
|
headerCell := rowList[0].Cells
|
|
headerCell := rowList[0].Cells
|
|
- if len(headerCell) < 7 {
|
|
|
|
|
|
+
|
|
|
|
+ // 确定模板
|
|
|
|
+ for _, v := range headerCell {
|
|
|
|
+ if v.String() == "导入模板2/Import Template 2" {
|
|
|
|
+ templateType = 2
|
|
|
|
+ minCellNum = 2
|
|
|
|
+ break
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ // 如果小于最少列数,则报错
|
|
|
|
+ if len(headerCell) < minCellNum {
|
|
errMsg = sheet.Name + "页模板异常"
|
|
errMsg = sheet.Name + "页模板异常"
|
|
err = errors.New(errMsg)
|
|
err = errors.New(errMsg)
|
|
return
|
|
return
|
|
}
|
|
}
|
|
|
|
|
|
- templateName := headerCell[6].String()
|
|
|
|
- switch templateName {
|
|
|
|
- case "导入模板2/Import Template 2":
|
|
|
|
|
|
+ switch templateType {
|
|
|
|
+ case 2:
|
|
// 模板2需要走对应的取数逻辑
|
|
// 模板2需要走对应的取数逻辑
|
|
tmpIndexDataList, tmpFailDataList, err, errMsg = getDataByTemplate2(sheet, sysUser.AdminId)
|
|
tmpIndexDataList, tmpFailDataList, err, errMsg = getDataByTemplate2(sheet, sysUser.AdminId)
|
|
default:
|
|
default:
|
|
@@ -695,7 +708,14 @@ func getDataByTemplate1(sheet *xlsx.Sheet, sysUserId int) (indexDataList []Impor
|
|
for i := 2; i < maxRow; i++ {
|
|
for i := 2; i < maxRow; i++ {
|
|
row := sheet.Row(i)
|
|
row := sheet.Row(i)
|
|
cells := row.Cells
|
|
cells := row.Cells
|
|
- if len(cells) < 6 {
|
|
|
|
|
|
+ lenCell := len(cells)
|
|
|
|
+
|
|
|
|
+ // 过滤空白行
|
|
|
|
+ if lenCell <= 0 {
|
|
|
|
+ continue
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ if lenCell < 6 {
|
|
errMsg = "导入文件异常,请下载最新导入模板文件"
|
|
errMsg = "导入文件异常,请下载最新导入模板文件"
|
|
err = errors.New(errMsg)
|
|
err = errors.New(errMsg)
|
|
return
|
|
return
|