Browse Source

研报免责声明

xyxie 6 months ago
parent
commit
db53fab2a2

+ 26 - 0
controller/base_config.go

@@ -0,0 +1,26 @@
+package controller
+
+import (
+	"github.com/gin-gonic/gin"
+	"hongze/hongze_yb/controller/response"
+	response2 "hongze/hongze_yb/models/response"
+	"hongze/hongze_yb/services/base_config"
+)
+
+// GetBusinessConf
+// @Tags 公共模块
+// @Summary  获取基本配置信息
+// @Description 获取基本配置信息
+// @Param Authorization	header string true "微信登录后获取到的token"
+// @Success 200 {object} []logic.ApplyVariety "获取成功"
+// @failure 400 {string} string "获取失败"
+// @Router /base/business_conf [get]
+func GetBusinessConf(c *gin.Context) {
+	disclaimer, err := base_config.GetBusinessConfDisclaimer()
+	if err != nil {
+		response.FailData("获取失败", "获取配置信息失败,Err:"+err.Error(), c)
+		return
+	}
+	data := response2.BusinessConfResp{Disclaimer: disclaimer}
+	response.OkData("获取成功", data, c)
+}

+ 2 - 0
init_serve/router.go

@@ -85,5 +85,7 @@ func InitRouter() (r *gin.Engine) {
 	routers.InitFeCalendar(r)
 	// 指标信息
 	routers.InitEdbInfo(r)
+	// 基本配置信息
+	routers.InitBaseConfig(r)
 	return
 }

+ 5 - 0
models/response/base_config.go

@@ -0,0 +1,5 @@
+package response
+
+type BusinessConfResp struct {
+	Disclaimer string `json:"disclaimer"`
+}

+ 19 - 0
models/tables/business_conf/business.conf.go

@@ -0,0 +1,19 @@
+package business_conf
+
+import (
+	"time"
+)
+
+type BusinessConf struct {
+	Id         int       `gorm:"column:id;primary_key;AUTO_INCREMENT;NOT NULL" json:"id"`
+	ConfKey    string    `gorm:"column:conf_key;default:;NOT NULL;comment:'配置Key'" json:"conf_key"`
+	ConfVal    string    `gorm:"column:conf_val;comment:'配置值'" json:"conf_val"`
+	ValType    int       `gorm:"column:val_type;default:0;NOT NULL;comment:'1-字符串;2-数值;3-数组;4-富文本;'" json:"val_type"`
+	Necessary  int       `gorm:"column:necessary;default:0;NOT NULL;comment:'是否必填:0-否;1-是'" json:"necessary"`
+	Remark     string    `gorm:"column:remark;default:;NOT NULL;comment:'备注'" json:"remark"`
+	CreateTime time.Time `gorm:"column:create_time;default:NULL;comment:'创建时间'" json:"create_time"`
+}
+
+func (b *BusinessConf) TableName() string {
+	return "business_conf"
+}

+ 10 - 0
models/tables/business_conf/query.go

@@ -0,0 +1,10 @@
+package business_conf
+
+import "hongze/hongze_yb/global"
+
+// GetItemByConfKey 获取配置项
+func (b *BusinessConf) GetItemByConfKey(key string) (item *BusinessConf, err error) {
+	sql := `SELECT * FROM business_conf WHERE conf_key = ? `
+	err = global.MYSQL["eta"].Raw(sql, key).First(&item).Error
+	return
+}

+ 12 - 0
routers/base_config.go

@@ -0,0 +1,12 @@
+package routers
+
+import (
+	"github.com/gin-gonic/gin"
+	"hongze/hongze_yb/controller"
+	"hongze/hongze_yb/middleware"
+)
+
+func InitBaseConfig(r *gin.Engine) {
+	rGroup := r.Group("api/base").Use(middleware.Token())
+	rGroup.GET("/business_conf", controller.GetBusinessConf)
+}

+ 0 - 1
routers/report.go

@@ -27,5 +27,4 @@ func InitReport(r *gin.Engine) {
 	rGroup2.GET("/detail", report.ClassifyDetail)
 	rGroup2.GET("/detail/reports", report.ClassifyDetailReports)
 	rGroup2.GET("/menu/list", report.ClassifyMenuList)
-
 }

+ 31 - 0
services/base_config/business_conf.go

@@ -0,0 +1,31 @@
+package base_config
+
+import (
+	"context"
+	"fmt"
+	"hongze/hongze_yb/global"
+	"hongze/hongze_yb/models/tables/business_conf"
+	"hongze/hongze_yb/utils"
+	"time"
+)
+
+func GetBusinessConfDisclaimer() (disclaimer string, err error) {
+	cacheKey := utils.HONGZEYB_ + "business_conf:disclaimer"
+	disclaimer, _ = global.Redis.Get(context.TODO(), cacheKey).Result()
+	if disclaimer != "" {
+		return
+	}
+	obj := new(business_conf.BusinessConf)
+	item, err := obj.GetItemByConfKey("Disclaimer")
+	if err != nil {
+		err = fmt.Errorf("GetBusinessConfDisclaimer err:%v", err)
+		return
+	}
+	if item.Id <= 0 {
+		err = fmt.Errorf("研报声明未配置")
+		return
+	}
+	disclaimer = item.ConfVal
+	_ = global.Redis.Set(context.TODO(), cacheKey, disclaimer, 24*time.Hour)
+	return
+}