Roc 4 天之前
父节点
当前提交
90893d3a14
共有 3 个文件被更改,包括 52 次插入6 次删除
  1. 22 3
      controllers/base_from_pb.go
  2. 21 3
      controllers/base_from_pb_finance.go
  3. 9 0
      utils/common.go

+ 22 - 3
controllers/base_from_pb.go

@@ -6,6 +6,7 @@ import (
 	"eta/eta_index_lib/models"
 	"eta/eta_index_lib/services"
 	"eta/eta_index_lib/utils"
+	"fmt"
 	"strconv"
 	"time"
 )
@@ -43,7 +44,7 @@ func (this *PbController) Add() {
 	cacheKey = utils.CACHE_EDB_DATA_ADD + strconv.Itoa(source) + "_" + req.EdbCode
 	if !utils.Rc.IsExist(cacheKey) {
 		utils.Rc.SetNX(cacheKey, 1, 1*time.Minute)
-		dataItem, err := services.GetEdbDataFromPb(req.EdbCode, utils.BASE_START_DATE_UnSpace, utils.PB_BASE_END_DATE_UnSpace, "")
+		dataItem, err := services.GetEdbDataFromPb(req.EdbCode, utils.BASE_START_DATE_UnSpace, utils.GetPbNowEndDate(), "")
 		// 日志记录
 		num := 0
 		if dataItem != nil {
@@ -120,8 +121,26 @@ func (this *PbController) Refresh() {
 	utils.Rc.SetNX(cacheKey, 1, 1*time.Minute)
 
 	//开始日期格式化
-	startDateTime, _ := time.ParseInLocation(utils.FormatDate, req.StartDate, time.Local)
-	dataItem, err := services.GetEdbDataFromPb(req.EdbCode, startDateTime.Format(utils.FormatDateUnSpace), utils.PB_BASE_END_DATE_UnSpace, edbInfo.TerminalCode)
+	startDateTime, err := time.ParseInLocation(utils.FormatDate, req.StartDate, time.Local)
+	if err != nil {
+		br.Msg = "开始日期格式化异常!"
+		br.ErrMsg = fmt.Sprintf("开始日期格式化异常,请求日期:%s,Err:%s", req.StartDate, err.Error())
+		return
+	}
+	// 当前日期格式化
+	endDateStr := utils.GetPbNowEndDate()
+	endDateTime, err := time.ParseInLocation(utils.FormatDateUnSpace, endDateStr, time.Local)
+	if err != nil {
+		br.Msg = "结束日期格式化异常!"
+		br.ErrMsg = fmt.Sprintf("结束日期格式化异常,请求日期:%s,Err:%s", req.StartDate, err.Error())
+		return
+	}
+	if startDateTime.After(endDateTime) {
+		br.Msg = `指标刷新的开始日期早于当前日期!`
+		return
+	}
+
+	dataItem, err := services.GetEdbDataFromPb(req.EdbCode, startDateTime.Format(utils.FormatDateUnSpace), endDateTime.Format(utils.FormatDateUnSpace), edbInfo.TerminalCode)
 	// 日志记录
 	num := 0
 	if dataItem != nil {

+ 21 - 3
controllers/base_from_pb_finance.go

@@ -6,6 +6,7 @@ import (
 	"eta/eta_index_lib/models"
 	"eta/eta_index_lib/services"
 	"eta/eta_index_lib/utils"
+	"fmt"
 	"strconv"
 	"strings"
 	"time"
@@ -54,7 +55,7 @@ func (this *PbFinanceController) Add() {
 			br.ErrMsg = "指标编码异常,请传入客户编码"
 			return
 		}
-		dataItem, err := services.GetEdbDataFromPbFinance(edbCodeArr[0], edbCodeArr[1], utils.BASE_START_DATE_UnSpace, utils.PB_BASE_END_DATE_UnSpace, "")
+		dataItem, err := services.GetEdbDataFromPbFinance(edbCodeArr[0], edbCodeArr[1], utils.BASE_START_DATE_UnSpace, utils.GetPbNowEndDate(), "")
 		// 日志记录
 		num := 0
 		if dataItem != nil {
@@ -132,7 +133,24 @@ func (this *PbFinanceController) Refresh() {
 		utils.Rc.Delete(cacheKey)
 	}()
 	//开始日期格式化
-	startDateTime, _ := time.ParseInLocation(utils.FormatDate, req.StartDate, time.Local)
+	startDateTime, err := time.ParseInLocation(utils.FormatDate, req.StartDate, time.Local)
+	if err != nil {
+		br.Msg = "开始日期格式化异常!"
+		br.ErrMsg = fmt.Sprintf("开始日期格式化异常,请求日期:%s,Err:%s", req.StartDate, err.Error())
+		return
+	}
+	// 当前日期格式化
+	endDateStr := utils.GetPbNowEndDate()
+	endDateTime, err := time.ParseInLocation(utils.FormatDateUnSpace, endDateStr, time.Local)
+	if err != nil {
+		br.Msg = "结束日期格式化异常!"
+		br.ErrMsg = fmt.Sprintf("结束日期格式化异常,请求日期:%s,Err:%s", req.StartDate, err.Error())
+		return
+	}
+	if startDateTime.After(endDateTime) {
+		br.Msg = `指标刷新的开始日期早于当前日期!`
+		return
+	}
 
 	//指标编码处理,将指标编码拆分成 company_code和edb_code
 	edbCode := req.EdbCode
@@ -142,7 +160,7 @@ func (this *PbFinanceController) Refresh() {
 		br.ErrMsg = "指标编码异常,请传入客户编码"
 		return
 	}
-	dataItem, err := services.GetEdbDataFromPbFinance(edbCodeArr[0], edbCodeArr[1], startDateTime.Format(utils.FormatDateUnSpace), utils.PB_BASE_END_DATE_UnSpace, edbInfo.TerminalCode)
+	dataItem, err := services.GetEdbDataFromPbFinance(edbCodeArr[0], edbCodeArr[1], startDateTime.Format(utils.FormatDateUnSpace), endDateTime.Format(utils.FormatDateUnSpace), edbInfo.TerminalCode)
 	// 日志记录
 	num := 0
 	if dataItem != nil {

+ 9 - 0
utils/common.go

@@ -1899,3 +1899,12 @@ func FormatZhDate(dateStr string) (newDateTimeStr string, err error) {
 	targetDate := time.Date(year, time.Month(month), day, 0, 0, 0, 0, time.UTC)
 	return targetDate.Format(FormatDate), nil
 }
+
+// GetPbNowEndDate
+// @Description: 获取彭博的基础数据结束日期
+// @author: Roc
+// @datetime 2025-04-03 09:05:26
+// @return string
+func GetPbNowEndDate() string {
+	return time.Now().Format(FormatDateUnSpace) //彭博的基础数据结束日期
+}