123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237 |
- package utils
- import (
- "fmt"
- beeLogger "github.com/beego/bee/v2/logger"
- "github.com/beego/beego/v2/server/web"
- "github.com/rdlucklib/rdluck_tools/cache"
- "strconv"
- )
- var (
- RunMode string //运行模式
- MYSQL_URL string //数据库连接
- MYSQL_URL_RDDP string //报告库数据库连接
- MYSQL_URL_CYGX string //查研库数据库连接
- REDIS_CACHE string //缓存地址
- Rc *cache.Cache //redis缓存
- Re error //redis错误
- )
- // 微信配置信息
- var (
- WxId string //微信原始ID
- WxAppId string
- WxAppSecret string
- //内部员工公众号(弘则部门)
- AdminWxAppId string
- AdminWxAppSecret string
- // WxAppList微信列表
- WxAppList map[string]string
- WxAppIdCygx string
- WxAppSecretCygx string
- WxAppIdMfyx string
- WxAppSecretMfyx string
- WxAppIdHt string // 海通公众号的appid
- WxAppSecretHt string // 海通公众号的签名秘钥
- // 小程序相关
- // WxCrmAppId 随手办公小程序
- WxCrmAppId string
- // WxCygxAppId 弘则研报小程序
- WxYbAppId string
- // WxCygxAppId 查研观向小程序
- WxCygxAppId string
- // 不知道这是啥,先配置上去吧
- WxCopyYbAppId string
- // WxMfyxAppId 买方研选小程序
- WxMfyxAppId string
- WxHtAppId string // 海通小程序
- )
- // LibreOfficePath LibreOfficePath的地址
- var LibreOfficePath string
- // 基础配置
- var (
- SystemType string // 系统类型; hz:弘则;trial:试用平台;custom:客户
- APPNAME string //项目中文名称
- EmailSendToUsers string // 邮件提醒人员
- // Authorization 签名秘钥
- Authorization string
- // AlarmMsgUrl 报警服务地址
- AlarmMsgUrl string
- )
- // 后台用于传研报小程序二维码
- var (
- Bucketname string
- Endpoint string
- Imghost string
- UploadDir string
- AccessKeyId string
- AccessKeySecret string
- )
- // 日志配置
- var (
- LogPath string //调用过程中的日志存放地址
- LogFile string
- BinLogPath string
- BinLogFile string
- ApiLogPath string //接口请求地址和接口返回值日志存放地址
- ApiLogFile string
- LogMaxDays int //日志最大保留天数
- )
- func init() {
- tmpRunMode, err := web.AppConfig.String("run_mode")
- if err != nil {
- panic("配置文件读取run_mode错误 " + err.Error())
- }
- RunMode = tmpRunMode
- if RunMode == "" {
- localIp, err := GetLocalIP()
- fmt.Println("localIp:", localIp)
- if localIp == "10.0.0.123" {
- RunMode = "debug"
- } else {
- RunMode = "release"
- }
- fmt.Println("RunMode:", RunMode)
- configPath := `/home/code/config/eta_pub/conf/app.conf`
- fmt.Println("configPath:", configPath)
- err = web.LoadAppConfig("ini", configPath)
- if err != nil {
- fmt.Println("web.LoadAppConfig Err:" + err.Error())
- }
- }
- config, err := web.AppConfig.GetSection(RunMode)
- if err != nil {
- panic("配置文件读取错误 " + err.Error())
- }
- MYSQL_URL = config["mysql_url"]
- MYSQL_URL_RDDP = config["mysql_url_rddp"]
- MYSQL_URL_CYGX = config["mysql_url_cygx"]
- REDIS_CACHE = config["beego_cache"]
- if len(REDIS_CACHE) <= 0 {
- panic("redis链接参数没有配置")
- }
- Rc, Re = cache.NewCache(REDIS_CACHE) //初始化缓存
- if Re != nil {
- fmt.Println(Re)
- panic(Re)
- }
- tmpLibreOfficePath, err := web.AppConfig.String("libreOfficePath")
- if err != nil {
- panic("配置文件读取libreOfficePath错误 " + err.Error())
- }
- LibreOfficePath = tmpLibreOfficePath
- beeLogger.Log.Info(RunMode + " 模式")
- // 系统类型
- systemType, err := web.AppConfig.String("system_type")
- if err != nil {
- panic(any("配置文件读取system_type错误 " + err.Error()))
- }
- SystemType = systemType
- // 项目中文名称
- appNameCn, err := web.AppConfig.String("app_name_cn")
- if err != nil {
- panic(any("配置文件读取app_name_cn错误 " + err.Error()))
- }
- APPNAME = appNameCn
- // 初始化内部服务配置
- // 报警服务地址
- AlarmMsgUrl = config["alarm_msg_url"]
- // 签名秘钥
- Authorization = config["authorization"]
- // 邮件提醒人员
- EmailSendToUsers = config["email_send_to_users"]
- // 微信消息
- {
- WxAppId = config["wx_appid"]
- WxAppSecret = config["wx_app_secret"]
- WxId = config["wx_id"]
- //内部员工公众号(弘则部门)
- AdminWxAppId = config["admin_wx_appid"]
- AdminWxAppSecret = config["admin_wx_app_secret"]
- WxAppList = make(map[string]string)
- if AdminWxAppId != "" && AdminWxAppSecret != "" {
- WxAppList[AdminWxAppId] = AdminWxAppSecret
- }
- if WxAppId != "" && WxAppSecret != "" {
- WxAppList[WxAppId] = WxAppSecret
- }
- WxAppIdCygx = config["wx_cygx_appid"]
- WxAppSecretCygx = config["wx_cygx_app_secret"]
- WxAppIdMfyx = config["wx_mfyx_appid"]
- WxAppSecretMfyx = config["wx_mfyx_app_secret"]
- // 小程序相关
- WxCrmAppId = config["wx_crm_miniprogram_appid"]
- // WxCygxAppId 弘则研报小程序
- WxYbAppId = config["wx_yb_miniprogram_appid"]
- // WxCygxAppId 查研观向小程序
- WxCygxAppId = config["wx_cygx_miniprogram_appid"]
- // WxMfyxAppId 买方研选小程序
- WxMfyxAppId = config["wx_mfyx_miniprogram_appid"]
- // WxCopyYbAppId 不知道这是啥,先配置上去吧
- WxCopyYbAppId = config["wx_copy_yb_miniprogram_appid"]
- // 海通公众号
- WxAppIdHt = config["wx_ht_appid"]
- WxAppSecretHt = config["wx_ht_app_secret"]
- // WxHtAppId 海通小程序
- WxHtAppId = config["wx_ht_miniprogram_appid"]
- if WxAppIdHt != "" && WxAppSecretHt != "" {
- WxAppList[WxAppIdHt] = WxAppSecretHt
- }
- }
- //日志配置
- {
- LogPath = config["log_path"]
- LogFile = config["log_file"]
- BinLogPath = config["binlog_path"]
- BinLogFile = config["binlog_file"]
- ApiLogPath = config["apilog_path"]
- ApiLogFile = config["apilog_file"]
- }
- // OSS相关
- {
- Endpoint = config["endpoint"]
- Bucketname = config["bucket_name"]
- Imghost = config["img_host"]
- UploadDir = config["upload_dir"]
- AccessKeyId = config["access_key_id"]
- AccessKeySecret = config["access_key_secret"]
- logMaxDaysStr := config["log_max_day"]
- LogMaxDays, _ = strconv.Atoi(logMaxDaysStr)
- }
- }
|