Bläddra i källkod

fix: 日期格式问题

hsun 5 månader sedan
förälder
incheckning
d116fed1b9

+ 1 - 0
controllers/chart.go

@@ -446,6 +446,7 @@ func GetChartInfoDetailFromUniqueCode(chartInfo *models.ChartInfo, key string) (
 	yearMax := 0
 	if dateType == utils.DateTypeNYears {
 		for _, v := range mappingList {
+			v.ConvertToResp()
 			if v.LatestDate != "" {
 				lastDateT, tErr := time.Parse(utils.FormatDate, v.LatestDate)
 				if tErr != nil {

+ 13 - 0
models/chart.go

@@ -1645,3 +1645,16 @@ func getThsHfEdbDataListByMongo(source, subSource, edbInfoId int, startDate, end
 	}
 	return
 }
+
+// ConvertToResp
+// @Description: 转成需要输出的格式
+// @receiver m
+func (m *ChartEdbInfoMapping) ConvertToResp() {
+	m.ModifyTime = utils.GormDateStrToDateTimeStr(m.ModifyTime)
+	m.StartDate = utils.GormDateStrToDateStr(m.StartDate)
+	m.EndDate = utils.GormDateStrToDateStr(m.EndDate)
+	m.LatestDate = utils.GormDateStrToDateStr(m.LatestDate)
+	m.MoveLatestDate = utils.GormDateStrToDateStr(m.MoveLatestDate)
+
+	return
+}

+ 1 - 0
services/data/chart_info_excel_balance.go

@@ -66,6 +66,7 @@ func GetBalanceExcelChartDetail(chartInfo *models.ChartInfo, mappingListTmp []*e
 	yearMax := 0
 	if dateType == utils.DateTypeNYears {
 		for _, v := range mappingList {
+			v.ConvertToResp()
 			if v.LatestDate != "" {
 				lastDateT, tErr := time.Parse(utils.FormatDate, v.LatestDate)
 				if tErr != nil {

+ 1 - 0
services/data/range_analysis/chart_info.go

@@ -449,6 +449,7 @@ func GetChartDataByEdbInfoList(chartInfoId int, dateType, startYear int, startDa
 			if len(dataList) > 0 {
 				latestDate := dataList[len(dataList)-1].DataTime
 				if latestDate != "" {
+					latestDate = utils.GormDateStrToDateStr(latestDate)
 					lastDateT, tErr := time.Parse(utils.FormatDate, latestDate)
 					if tErr != nil {
 						err = fmt.Errorf("获取图表日期信息失败,Err:" + tErr.Error())

+ 46 - 0
utils/common.go

@@ -1380,3 +1380,49 @@ func CompareFloatByOpStrings(op string, a, b float64) bool {
 	}
 	return false
 }
+
+// GormDateStrToDateTimeStr
+// @Description: gorm日期字符串格式转正常显示的日期时间字符串
+// @param originalString
+// @return formatStr
+func GormDateStrToDateTimeStr(originalString string) (formatStr string) {
+	formatStr = originalString
+	if !strings.Contains(originalString, "T") {
+		return
+	}
+
+	// 解析原始字符串
+	t, err := time.Parse(FormatDateWallWithLoc, originalString)
+	if err != nil {
+		fmt.Println("Error parsing time:", err)
+		return
+	}
+
+	// 重新格式化时间
+	formatStr = t.Format(FormatDateTime)
+
+	return
+}
+
+// GormDateStrToDateStr
+// @Description: gorm日期字符串格式转正常显示的日期字符串
+// @param originalString
+// @return formatStr
+func GormDateStrToDateStr(originalString string) (formatStr string) {
+	formatStr = originalString
+	if !strings.Contains(originalString, "T") {
+		return
+	}
+
+	// 解析原始字符串
+	t, err := time.Parse(FormatDateWallWithLoc, originalString)
+	if err != nil {
+		fmt.Println("Error parsing time:", err)
+		return
+	}
+
+	// 重新格式化时间
+	formatStr = t.Format(FormatDate)
+
+	return
+}