Эх сурвалжийг харах

Merge branch 'bug/3746' into debug

Roc 1 жил өмнө
parent
commit
170e83dd44

+ 17 - 21
services/data/excel/mixed_table.go

@@ -113,7 +113,13 @@ func GetMixedTableCellData(mixedTableReq request.MixedTableReq) (newMixedTableCe
 		for i, cell := range row {
 			// 单元格是日期类型,且是日导入指标日期(指标库的最新日期)
 			if cell.DataType == request.DateDT && cell.DataTimeType == request.EdbDateDT {
-				if edbInfo, ok := edbInfoMap[cell.EdbInfoId]; ok {
+				// 指标id是在配置里面
+				var edbDateConfig request.EdbDateConf
+				err = json.Unmarshal([]byte(cell.Value), &edbDateConfig)
+				if err != nil {
+					return
+				}
+				if edbInfo, ok := edbInfoMap[edbDateConfig.EdbInfoId]; ok {
 					cell.ShowValue = edbInfo.EndDate
 					cell.DataTime = edbInfo.EndDate
 					config[k][i] = cell
@@ -208,17 +214,6 @@ func GetMixedTableCellData(mixedTableReq request.MixedTableReq) (newMixedTableCe
 					}
 				}
 
-				if cell.DataTime == `` {
-					// 指标的最新日期
-					if dateValList, ok := edbDataListMap[cell.EdbInfoId]; ok {
-						tmpLenData := len(dateValList)
-						if tmpLenData > 0 {
-							cellKeyVal[cell.Uid] = dateValList[tmpLenData-1].Value
-							cell.ShowValue = utils.FormatTableDataShowValue(dateValList[tmpLenData-1].Value)
-						}
-					}
-				}
-
 				calculateCellMap[cell.Uid] = Cell{
 					Column:   k,
 					Row:      i,
@@ -478,6 +473,16 @@ func handleConfig(configList [][]request.MixedTableCellDataReq) (newConfig [][]r
 				dataEdbInfoIdList = append(dataEdbInfoIdList, cell.EdbInfoId)
 
 			case request.DateDT: // 日期类型
+				date, tmpErr, tmpErrMsg := handleDate(cell.DataTimeType, cell.Value)
+				if tmpErr != nil {
+					err = tmpErr
+					errMsg = tmpErrMsg
+					return
+				}
+				rowList[rk].DataTime = date
+				rowList[rk].ShowValue = date
+
+				// 指标日期类型的单元格需要额外将指标id取出来
 				if cell.DataTimeType == request.EdbDateDT {
 					var config request.EdbDateConf
 					err = json.Unmarshal([]byte(cell.Value), &config)
@@ -485,15 +490,6 @@ func handleConfig(configList [][]request.MixedTableCellDataReq) (newConfig [][]r
 						return
 					}
 					edbInfoIdList = append(edbInfoIdList, config.EdbInfoId)
-				} else {
-					date, tmpErr, tmpErrMsg := handleDate(cell.DataTimeType, cell.Value)
-					if tmpErr != nil {
-						err = tmpErr
-						errMsg = tmpErrMsg
-						return
-					}
-					rowList[rk].DataTime = date
-					rowList[rk].ShowValue = date
 				}
 			}
 		}