config.go 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. package config
  2. import (
  3. "github.com/zeromicro/go-zero/zrpc"
  4. )
  5. type Config struct {
  6. zrpc.RpcServerConf
  7. DataSource *mysqlConfig // 手动代码
  8. BaseSource *mysqlConfig // 手动代码
  9. WebRpcPort int
  10. //Mysql string
  11. RedisAddr string `json:"RedisAddr"`
  12. Mongodb *mgoConf
  13. SurvivalTime int
  14. SaveConcurrency int // 消息保存并发数
  15. WxWebdomain string `json:"WxWebdomain"`
  16. WxTmplConfig WxTmplMsg `json:"WxTmplConfig"`
  17. PushGrpcServer string `json:"PushGrpcServer"`
  18. Mail []struct {
  19. Addr string `json:"addr"`
  20. Port int `json:"port"`
  21. Pwd string `json:"pwd"`
  22. User string `json:"user"`
  23. } `json:"mail"`
  24. TidbEng string `json:"Tidb"`
  25. ClassSearchList []int64 `json:"ClassSearchList"` // 需要按照messageclass 查询的groupId
  26. Clickhouse *CHouseConfig
  27. GlobMsgLoadTime string `json:"GlobMsgLoadTime"`
  28. EquityInfoMsgType int64 `json:"EquityInfoMsgType"` // 营销权益消息需要特殊处理的消息类型
  29. NewUserMsgTitle string `json:"NewUserMsgTitle"`
  30. }
  31. type CHouseConfig struct {
  32. Addr string
  33. UserName string
  34. Password string
  35. DbName string
  36. MaxIdleConns int
  37. MaxOpenConns int
  38. }
  39. type mysqlConfig struct {
  40. DbName string
  41. Address string
  42. UserName string
  43. PassWord string
  44. MaxOpenConns int
  45. MaxIdleConns int
  46. }
  47. type mgoConf struct {
  48. Address string
  49. Size int
  50. DbName string
  51. ReplSet string
  52. UserName string
  53. Password string
  54. Collection string
  55. Collection_back string
  56. }
  57. var ConfigJson Config
  58. type WxTmplMsg struct {
  59. RpcAddr string `json:"rpcAddr"`
  60. CloseNotice string `json:"closeNotice"`
  61. Limit struct {
  62. Total int64 `json:"total"`
  63. OneDayLimit int64 `json:"oneDayLimit"`
  64. DuringMine int `json:"duringMine"`
  65. Alert struct {
  66. Nums []int64 `json:"nums"`
  67. ToMail []string `json:"toMail"`
  68. CcMail []string `json:"ccMail"`
  69. } `json:"alert"`
  70. } `json:"limit"`
  71. }