Browse Source

Merge branch 'ETA_2.3.2'

xiziwen 2 months ago
parent
commit
262507a6a2
1 changed files with 101 additions and 86 deletions
  1. 101 86
      controllers/base_from_clarksons.go

+ 101 - 86
controllers/base_from_clarksons.go

@@ -54,122 +54,137 @@ func (this *ClarksonsDataController) ClarksonsData() {
 	for _, sheet := range req.SheetData {
 		//遍历行读取
 		maxRow := sheet.MaxRow
-		var indexId int64
-		index := new(models.BaseFromClarksonsIndex)
-		indexCode := ""
-		for i := 3; i < maxRow; i++ {
-			//获取样本情况
-			row := sheet.Rows[i]
-			cells := row.Cells
-			// indexCode
-			if i == 3 {
-				indexCode = cells[1].Value
-				continue
-			}
+		maxCol := sheet.MaxCol
+
+		for j := 1; j < maxCol; j++ {
+			var indexId int64
+			index := new(models.BaseFromClarksonsIndex)
+			indexCode := ""
+			for i := 3; i < maxRow; i++ {
 
-			if indexItem, ok := indexMap[indexCode]; !ok {
-				// indexName
-				if i == 4 {
-					index.IndexName = cells[1].Value
+				//获取样本情况
+				row := sheet.Rows[i]
+				cells := row.Cells
+				if j == 0 {
 					continue
 				}
-
-				// unit
-				if i == 5 {
-					index.Unit = cells[1].Value
+				// indexCode
+				if i == 3 {
+					indexCode = cells[j].Value
 					continue
 				}
 
-				index.IndexCode = indexCode
-				index.CreateTime = time.Now()
-				index.ModifyTime = time.Now()
+				if indexItem, ok := indexMap[indexCode]; !ok {
+					// indexName
+					if i == 4 {
+						index.IndexName = cells[j].Value
+						continue
+					}
 
-				indexId, err = models.AddBaseFromClarksonsIndex(index)
-				if err != nil {
-					utils.FileLog.Info("添加指标名称错误", err.Error())
-					return
-				}
-				index.BaseFromClarksonsIndexId = int(indexId)
-				indexMap[indexCode] = index
-			} else {
-				index = indexItem
-			}
+					// unit
+					if i == 5 {
+						index.Unit = cells[j].Value
+						continue
+					}
+
+					index.IndexCode = indexCode
+					index.CreateTime = time.Now()
+					index.ModifyTime = time.Now()
 
-			// 数据及日期
-			if i > 5 {
-				var date string
-				if len(cells) == 0 {
-					break
+					indexId, err = models.AddBaseFromClarksonsIndex(index)
+					if err != nil {
+						utils.FileLog.Info("添加指标名称错误", err.Error())
+						fmt.Println("添加指标名称错误", err.Error())
+						return
+					}
+					index.BaseFromClarksonsIndexId = int(indexId)
+					indexMap[indexCode] = index
+				} else {
+					index = indexItem
 				}
-				for k, cell := range cells {
-					text := cell.Value
-					text = strings.Replace(text, "\\", "", -1)
-					if text != "" {
-						// 时间
-						if k == 0 {
-							if text != "" {
-								dataTime, err := utils.ParseDateTime(text)
-								if err != nil {
-									utils.FileLog.Info("解析时间字符串出错:", err)
-									fmt.Println("解析时间字符串出错:", err)
-									return
+
+				// 数据及日期
+				if i > 5 {
+					var date string
+					if len(cells) == 0 {
+						break
+					}
+					for k, cell := range cells {
+						text := cell.Value
+						text = strings.Replace(text, "\\", "", -1)
+						if text != "" {
+							// 时间
+							if k == 0 {
+								if text != "" {
+									dataTime, err := utils.ParseDateTime(text)
+									if err != nil {
+										utils.FileLog.Info("解析时间字符串出错:", err)
+										fmt.Println("解析时间字符串出错:", err)
+										return
+									}
+									date = dataTime.Format(utils.FormatDate)
 								}
-								date = dataTime.Format(utils.FormatDate)
+								dateMap[k] = date
 							}
-							dateMap[k] = date
-						}
 
-						// 数据
-						if k == 1 {
-							item := new(models.BaseFromClarksonsData)
-							item.IndexCode = indexCode
-							item.Value = text
-							item.DataTime = date
-							item.BaseFromClarksonsIndexId = index.BaseFromClarksonsIndexId
-							item.ModifyTime = time.Now()
-							item.CreateTime = time.Now()
-							itemsIndex = append(itemsIndex, item)
+							// 数据
+							if k == j {
+								item := new(models.BaseFromClarksonsData)
+								item.IndexCode = indexCode
+								item.Value = text
+								item.DataTime = date
+								item.BaseFromClarksonsIndexId = index.BaseFromClarksonsIndexId
+								item.ModifyTime = time.Now()
+								item.CreateTime = time.Now()
+								itemsIndex = append(itemsIndex, item)
 
-							continue
+								continue
+							}
 						}
 					}
 				}
 			}
-		}
-		if len(itemsIndex) > 2 {
-			time1, _ := time.Parse(utils.FormatDate, itemsIndex[0].DataTime)
-			time2, _ := time.Parse(utils.FormatDate, itemsIndex[1].DataTime)
-			diff := time2.Sub(time1).Hours() / 24
+			if len(itemsIndex) > 2 {
+				time1, _ := time.Parse(utils.FormatDate, itemsIndex[0].DataTime)
+				time2, _ := time.Parse(utils.FormatDate, itemsIndex[1].DataTime)
+				diff := time2.Sub(time1).Hours() / 24
 
-			if diff < 5 {
-				index.Frequency = "日度"
-			} else if diff > 5 && diff < 10 {
-				index.Frequency = "周度"
-			} else if diff > 20 && diff < 50 {
-				index.Frequency = "月度"
-			} else if diff > 50 && diff < 100 {
-				index.Frequency = "季度"
-			} else if diff > 100 {
-				index.Frequency = "年度"
+				if diff < 5 {
+					index.Frequency = "日度"
+				} else if diff > 5 && diff < 10 {
+					index.Frequency = "周度"
+				} else if diff > 20 && diff < 50 {
+					index.Frequency = "月度"
+				} else if diff > 50 && diff < 100 {
+					index.Frequency = "季度"
+				} else if diff > 100 {
+					index.Frequency = "年度"
+				}
+			}
+			err = models.UpdateBaseFromClarksonsIndex(index)
+			if err != nil {
+				fmt.Println("修改指标频度错误", err)
+				utils.FileLog.Info("修改指标频度错误", err)
+				return
+			} else {
+				fmt.Println("修改指标频度成功 ", index.IndexCode, index.Frequency)
+				utils.FileLog.Info("修改指标频度成功 ", index.IndexCode, index.Frequency)
 			}
 		}
-		err = models.UpdateBaseFromClarksonsIndex(index)
-		if err != nil {
-			fmt.Println("修改指标频度错误", err)
-			return
-		} else {
-			fmt.Println("修改指标频度成功 ", index.IndexCode, index.Frequency)
-		}
+
 	}
 
 	count, err := models.AddBaseFromClarksonsDataMuti(itemsIndex)
 	if err != nil {
 		fmt.Println("添加数据错误", err.Error())
+		utils.FileLog.Info("添加数据错误", err)
 	} else {
 		fmt.Println("添加数据成功", count)
+		utils.FileLog.Info("添加数据成功", count)
 	}
 
 	fmt.Println("数据操作完成")
+	utils.FileLog.Info("数据操作完成")
 
 	br.Ret = 200
 	br.Success = true