config.go 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151
  1. package util
  2. import (
  3. "mongodb"
  4. qu "qfw/util"
  5. "qfw/util/elastic"
  6. "qfw/util/redis"
  7. )
  8. var (
  9. Sysconfig map[string]interface{} //配置文件
  10. Mgo *mongodb.MongodbSim
  11. MgoCus *mongodb.MongodbSim //企业服务库
  12. JYMgo *mongodb.MongodbSim
  13. OprdMgo *mongodb.MongodbSim
  14. MgoEn *mongodb.MongodbSim
  15. JyProMgo *mongodb.MongodbSim
  16. MgoS *mongodb.MongodbSim
  17. EsIndex, EsType string
  18. MgoEnC string
  19. JyCollNameOne string
  20. JyCollNameTwo string
  21. JyRecord string
  22. JyProColl string
  23. JyProRecord string
  24. RedisJYName string
  25. RedisDelKey1 string
  26. RedisDelKey2 string
  27. RedisDelKey3 string
  28. RedisDelKey4 string
  29. RedisDelKey5 string
  30. RedisSave string // 新增数据保存信息
  31. )
  32. var (
  33. TopTypeArr []string //公告一级分类
  34. SubTypeMap map[string][]string //公告二级分类
  35. Province []string //省
  36. ProvinceCitys map[string][]string //省:[市1,市2]
  37. CityDistricts map[string][]string //市:[区1,区2]
  38. BuyerClass []string //采购单位行业
  39. ScopeClassMap map[string]interface{} //公告行业
  40. )
  41. func InitMgoPool() {
  42. Mgo = &mongodb.MongodbSim{
  43. MongodbAddr: qu.ObjToString(Sysconfig["mgodb"]),
  44. Size: qu.IntAll(Sysconfig["dbsize"]),
  45. DbName: qu.ObjToString(Sysconfig["dbname"]),
  46. UserName: qu.ObjToString(Sysconfig["uname"]),
  47. Password: qu.ObjToString(Sysconfig["upwd"]),
  48. }
  49. Mgo.InitPool()
  50. mgo := *qu.ObjToMap(Sysconfig["oprd_db"])
  51. OprdMgo = &mongodb.MongodbSim{
  52. MongodbAddr: qu.ObjToString(mgo["addr"]),
  53. Size: qu.IntAll(mgo["dbsize"]),
  54. DbName: qu.ObjToString(mgo["dbname"]),
  55. }
  56. OprdMgo.InitPool()
  57. //lua
  58. luaDb := *qu.ObjToMap(Sysconfig["lua_db"])
  59. MgoS = &mongodb.MongodbSim{
  60. MongodbAddr: qu.ObjToString(luaDb["addr"]),
  61. Size: qu.IntAll(luaDb["dbsize"]),
  62. DbName: qu.ObjToString(luaDb["dbname"]),
  63. }
  64. MgoS.InitPool()
  65. }
  66. func initJYMgo() {
  67. jymgo := *qu.ObjToMap(Sysconfig["jymgo"])
  68. JYMgo = &mongodb.MongodbSim{
  69. MongodbAddr: qu.ObjToString(jymgo["jyaddr"]),
  70. Size: qu.IntAll(jymgo["jydbsize"]),
  71. DbName: qu.ObjToString(jymgo["jydbname"]),
  72. UserName: qu.ObjToString(Sysconfig["uname"]),
  73. Password: qu.ObjToString(Sysconfig["upwd"]),
  74. }
  75. JyCollNameOne = qu.ObjToString(jymgo["jycollname1"])
  76. JyCollNameTwo = qu.ObjToString(jymgo["jycollname2"])
  77. JyRecord = qu.ObjToString(Sysconfig["jy_info_back"])
  78. JyProRecord = qu.ObjToString(Sysconfig["jy_pro_back"])
  79. JYMgo.InitPool()
  80. //项目
  81. jypro := *qu.ObjToMap(Sysconfig["jy_pro"])
  82. JyProMgo = &mongodb.MongodbSim{
  83. MongodbAddr: qu.ObjToString(jypro["mgodb"]),
  84. Size: qu.IntAll(jypro["dbsize"]),
  85. DbName: qu.ObjToString(jypro["dbname"]),
  86. }
  87. JyProColl = qu.ObjToString(jypro["coll"])
  88. JyProMgo.InitPool()
  89. }
  90. func initJYRedis() {
  91. jyredis := *qu.ObjToMap(Sysconfig["jyredis"])
  92. redis.InitRedisBySize(qu.ObjToString(jyredis["redis_jy"]), 50, 30, 240)
  93. RedisJYName = qu.ObjToString(jyredis["redis_jy_name"])
  94. RedisDelKey1 = qu.ObjToString(jyredis["redisdelkey1"])
  95. RedisDelKey2 = qu.ObjToString(jyredis["redisdelkey2"])
  96. RedisDelKey3 = qu.ObjToString(jyredis["redisdelkey3"])
  97. RedisDelKey4 = qu.ObjToString(jyredis["redisdelkey4"])
  98. RedisDelKey5 = qu.ObjToString(jyredis["redisdelkey5"])
  99. InitRedis(qu.ObjToString(jyredis["redis_jy_save"]))
  100. }
  101. func InitOther() {
  102. initInfoType()
  103. initBuyerClass()
  104. initScopeClass()
  105. initEs()
  106. initJYMgo()
  107. initJYRedis()
  108. }
  109. func initInfoType() {
  110. SubTypeMap = make(map[string][]string)
  111. datas, _ := Mgo.Find("code_infotype", `{}`, `{"_id":1}`, `{}`, false, -1, -1)
  112. for _, data := range *datas {
  113. name := data["name"].(string)
  114. TopTypeArr = append(TopTypeArr, name)
  115. child := qu.ObjArrToStringArr(data["child"].([]interface{}))
  116. SubTypeMap[name] = child
  117. }
  118. }
  119. func initBuyerClass() {
  120. datas, _ := Mgo.Find("code_buyerclass", `{}`, `{"_id":1}`, `{}`, false, -1, -1)
  121. for _, data := range *datas {
  122. name := data["name"].(string)
  123. BuyerClass = append(BuyerClass, name)
  124. }
  125. }
  126. func initScopeClass() {
  127. if ScopeClassMap == nil {
  128. ScopeClassMap = make(map[string]interface{})
  129. }
  130. info, _ := Mgo.Find("code_scopeclass", `{}`, `{"_id": 1}`, `{}`, false, -1, -1)
  131. for _, i := range *info {
  132. ScopeClassMap[qu.ObjToString(i["name"])] = i["child"]
  133. }
  134. }
  135. func initEs() {
  136. EsIndex, EsType = qu.ObjToString(Sysconfig["elasticsearch_index"]), qu.ObjToString(Sysconfig["elasticsearch_type"])
  137. elastic.InitElasticSize(qu.ObjToString(Sysconfig["elasticsearch"]), qu.IntAllDef(qu.Int64All(Sysconfig["elasticPoolSize"]), 30))
  138. }