瀏覽代碼

fix:时间改为120分钟

Roc 1 月之前
父節點
當前提交
00d41b741a
共有 5 個文件被更改,包括 55 次插入20 次删除
  1. 1 0
      main.go
  2. 42 16
      models/business_conf.go
  3. 4 0
      models/db.go
  4. 3 4
      services/report.go
  5. 5 0
      utils/business_conf.go

+ 1 - 0
main.go

@@ -2,6 +2,7 @@ package main
 
 import (
 	"eta/eta_report/controllers"
+	_ "eta/eta_report/models"
 	_ "eta/eta_report/routers"
 	"eta/eta_report/services"
 

+ 42 - 16
models/business_conf.go

@@ -4,26 +4,32 @@ import (
 	"eta/eta_report/global"
 	"eta/eta_report/utils"
 	"html"
+	"strconv"
 	"time"
 )
 
+var (
+	BusinessConfMap map[string]string
+)
+
 const (
-	BusinessConfDisclaimer           = "Disclaimer"
-	BusinessConfH5ShareName          = "H5ShareName"
-	BusinessConfH5ShareEnName        = "H5ShareEnName"
-	BusinessConfH5ReportShareImg     = "H5ReportShareImg"
-	BusinessConfWatermarkChart       = "WatermarkChart"
-	BusinessConfWatermarkReport      = "WatermarkReport"
-	BusinessConfWxAppId              = "WxAppId"
-	BusinessConfWxAppSecret          = "WxAppSecret"
-	BusinessConfReportViewUrl        = "ReportViewUrl"
-	BusinessConfReport2ImgUrl        = "Report2ImgUrl"
-	BusinessConfReportLogo           = "ReportLogo"           // 报告logo
-	BusinessConfReportCenterLogoShow = "ReportCenterLogoShow" // 报告logo
-	BusinessConfReportEnLogoShow     = "ReportEnLogoShow"     // 报告logo
-	BusinessConfDisclaimerEn         = "DisclaimerEn"         // 英文免责声明
-	BusinessConfReport2ImgReplace    = "Report2ImgReplace"    // 报告转图替换地址
-	BusinessConfIsOpenChartExpired   = "IsOpenChartExpired"   // 图表是否鉴权
+	BusinessConfDisclaimer             = "Disclaimer"
+	BusinessConfH5ShareName            = "H5ShareName"
+	BusinessConfH5ShareEnName          = "H5ShareEnName"
+	BusinessConfH5ReportShareImg       = "H5ReportShareImg"
+	BusinessConfWatermarkChart         = "WatermarkChart"
+	BusinessConfWatermarkReport        = "WatermarkReport"
+	BusinessConfWxAppId                = "WxAppId"
+	BusinessConfWxAppSecret            = "WxAppSecret"
+	BusinessConfReportViewUrl          = "ReportViewUrl"
+	BusinessConfReport2ImgUrl          = "Report2ImgUrl"
+	BusinessConfReportLogo             = "ReportLogo"             // 报告logo
+	BusinessConfReportCenterLogoShow   = "ReportCenterLogoShow"   // 报告logo
+	BusinessConfReportEnLogoShow       = "ReportEnLogoShow"       // 报告logo
+	BusinessConfDisclaimerEn           = "DisclaimerEn"           // 英文免责声明
+	BusinessConfReport2ImgReplace      = "Report2ImgReplace"      // 报告转图替换地址
+	BusinessConfIsOpenChartExpired     = "IsOpenChartExpired"     // 图表是否鉴权
+	BusinessConfReportChartExpiredTime = "ReportChartExpiredTime" // 图表有效期鉴权时间,单位:分钟
 )
 
 // BusinessConf 商户配置表
@@ -60,6 +66,26 @@ func GetBusinessConf() (list map[string]string, err error) {
 	return
 }
 
+func InitBusinessConf() {
+	var e error
+	BusinessConfMap, e = GetBusinessConf()
+	if e != nil {
+		return
+	}
+
+	// 图表有效期的过期时间
+	if BusinessConfMap[BusinessConfReportChartExpiredTime] != "" {
+		reportChartExpiredTime, _ := strconv.Atoi(BusinessConfMap[BusinessConfReportChartExpiredTime])
+		if reportChartExpiredTime <= 0 {
+			reportChartExpiredTime = 30
+		}
+		utils.BusinessConfReportChartExpiredTime = time.Duration(reportChartExpiredTime) * time.Minute
+	} else {
+		utils.BusinessConfReportChartExpiredTime = 30 * time.Minute
+	}
+
+}
+
 type Report2ImgReplace struct {
 	IsReplace      bool   `description:"是否替换"`
 	OssUrlOrigin   string `description:"被替换的资源地址"`

+ 4 - 0
models/db.go

@@ -41,3 +41,7 @@ func init2() {
 		new(SmartReport),
 	)
 }
+
+func init() {
+	InitBusinessConf()
+}

+ 3 - 4
services/report.go

@@ -109,7 +109,7 @@ func linkAddToken(link string, tokenMap map[string]string) string {
 		}
 	}
 
-	token, err := GeneralChartToken(showType, code, 30*time.Minute)
+	token, err := GeneralChartToken(showType, code)
 	if err != nil {
 		return link
 	}
@@ -153,14 +153,13 @@ func linkDelToken(link string) string {
 // @datetime 2025-01-07 10:41:36
 // @param showType string
 // @param uniqueCode string
-// @param expireTime time.Duration
 // @return token string
 // @return err error
-func GeneralChartToken(showType, uniqueCode string, expireTime time.Duration) (token string, err error) {
+func GeneralChartToken(showType, uniqueCode string) (token string, err error) {
 	// 缓存key
 	token = utils.MD5(fmt.Sprint(showType+`:`, uniqueCode, time.Now().UnixNano()/1e6))
 	key := fmt.Sprint(utils.CACHE_CHART_AUTH, token)
-	err = utils.Rc.Put(key, uniqueCode, expireTime)
+	err = utils.Rc.Put(key, uniqueCode, utils.BusinessConfReportChartExpiredTime)
 
 	return
 }

+ 5 - 0
utils/business_conf.go

@@ -0,0 +1,5 @@
+package utils
+
+import "time"
+
+var BusinessConfReportChartExpiredTime time.Duration //图表有效期鉴权时间,单位:分钟