config.go 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160
  1. package util
  2. import (
  3. "mongodb"
  4. qu "qfw/util"
  5. "qfw/util/elastic"
  6. "sync"
  7. )
  8. //const JYDATAFROMDB = "jyqyfw"
  9. //const JYDATAFROMCOLL = "usermail_history"
  10. //const JYDATATODB = "jyqyfw"
  11. var (
  12. Sysconfig map[string]interface{} //配置文件
  13. Quaconfig map[string]interface{} //质量配置文件
  14. Mgo *mongodb.MongodbSim
  15. AllToColl string //所有标注数据汇总表
  16. Password string //默认登陆密码
  17. MgoB *mongodb.MongodbSim //bidding
  18. BidColl1 string
  19. BidColl2 string
  20. MgoE *mongodb.MongodbSim //extract
  21. ExtColl1 string
  22. ExtColl2 string
  23. ProjectColl string
  24. MgoJy *mongodb.MongodbSim //jy
  25. JyHistory string
  26. JyUser string
  27. Es *elastic.Elastic //es
  28. Index string
  29. Itype string
  30. CustomerFieldMap_EH map[string]string
  31. CustomerFieldMap_HE map[string]string
  32. )
  33. var (
  34. Qy_Es *elastic.Elastic //企业es
  35. Mgo_QY *mongodb.MongodbSim //企业mgo
  36. Qy_Lock sync.Mutex //锁-多线程备用
  37. Ext_Type,Ext_From map[string]interface{} //抽取来源,方式分
  38. Buyer_Score,S_Winner_Score map[string]interface{} //字段规则分
  39. Budget_Score,Bidamount_Score map[string]interface{}
  40. Projectname_Score,Projectcode_Score map[string]interface{}
  41. )
  42. var SE = qu.SimpleEncrypt{Key: "topJYBX2019"}
  43. const BIDDINGSTARTID = "5a862f0640d2d9bbe88e3cec"
  44. const PROJECTCOLLNAME = "f_project"
  45. const TASKCOLLNAME = "f_task"
  46. func InitConfig() {
  47. Mgo = &mongodb.MongodbSim{
  48. MongodbAddr: qu.ObjToString(Sysconfig["mgodb"]),
  49. Size: qu.IntAll(Sysconfig["dbsize"]),
  50. DbName: qu.ObjToString(Sysconfig["dbname"]),
  51. }
  52. Mgo.InitPool()
  53. AllToColl = qu.ObjToString(Sysconfig["alltocoll"])
  54. Password = "123"
  55. //bid
  56. bid := Sysconfig["bidding"].(map[string]interface{})
  57. BidColl1 = qu.ObjToString(bid["coll1"])
  58. BidColl2 = qu.ObjToString(bid["coll2"])
  59. MgoB = &mongodb.MongodbSim{
  60. MongodbAddr: qu.ObjToString(bid["addr"]),
  61. DbName: qu.ObjToString(bid["db"]),
  62. Size: qu.IntAll(bid["size"]),
  63. //UserName: qu.ObjToString(bid["username"]),
  64. //Password: qu.ObjToString(bid["password"]),
  65. }
  66. MgoB.InitPool()
  67. //ext
  68. ext := Sysconfig["extract"].(map[string]interface{})
  69. ExtColl1 = qu.ObjToString(ext["coll1"])
  70. ExtColl2 = qu.ObjToString(ext["coll2"])
  71. ProjectColl = qu.ObjToString(ext["projectcoll"])
  72. MgoE = &mongodb.MongodbSim{
  73. MongodbAddr: qu.ObjToString(ext["addr"]),
  74. DbName: qu.ObjToString(ext["db"]),
  75. Size: qu.IntAll(ext["size"]),
  76. }
  77. MgoE.InitPool()
  78. //jy
  79. jy := Sysconfig["jy"].(map[string]interface{})
  80. JyHistory = qu.ObjToString(jy["history"])
  81. JyUser = qu.ObjToString(jy["user"])
  82. MgoJy = &mongodb.MongodbSim{
  83. MongodbAddr: qu.ObjToString(jy["addr"]),
  84. DbName: qu.ObjToString(jy["db"]),
  85. Size: qu.IntAll(jy["size"]),
  86. }
  87. MgoJy.InitPool()
  88. //es
  89. //es := Sysconfig["es"].(map[string]interface{})
  90. //Index = qu.ObjToString(es["index"])
  91. //Itype = qu.ObjToString(es["itype"])
  92. //Es = &elastic.Elastic{
  93. // S_esurl: qu.ObjToString(es["addr"]),
  94. // I_size: qu.IntAll(es["pool"]),
  95. //}
  96. //Es.InitElasticSize()
  97. //other
  98. CustomerFieldMap_EH = map[string]string{}
  99. CustomerFieldMap_HE = map[string]string{}
  100. for k, v := range Sysconfig["customerfield"].(map[string]interface{}) {
  101. val := v.(string)
  102. CustomerFieldMap_HE[k] = val
  103. CustomerFieldMap_EH[val] = k
  104. }
  105. initQuaConfig()
  106. }
  107. //质量相关初始化配置
  108. func initQuaConfig() {
  109. //线上-需替换-172.17.145.163:27083,172.17.4.187:27082,
  110. qyxyconf := Quaconfig["qy_mongodb"].(map[string]interface{})
  111. Mgo_QY = &mongodb.MongodbSim{
  112. MongodbAddr: qyxyconf["qy_addrName"].(string),
  113. DbName: qyxyconf["qy_dbName"].(string),
  114. Size: qu.IntAllDef(qyxyconf["qy_pool"], 5),
  115. UserName: qyxyconf["qy_username"].(string),
  116. Password: qyxyconf["qy_password"].(string),
  117. }
  118. Mgo_QY.InitPool()
  119. //查询企业库-可使用es - 也可以mongo http://172.17.145.170:9800
  120. //Qy_Es = &elastic.Elastic{
  121. // S_esurl: qu.ObjToString(Quaconfig["qyxy_es"]),
  122. // I_size: 10,
  123. //}
  124. //Es.InitElasticSize()
  125. Ext_Type = Quaconfig["ext_type"].(map[string]interface{})
  126. Ext_From = Quaconfig["ext_from"].(map[string]interface{})
  127. Buyer_Score = Quaconfig["buyer_score"].(map[string]interface{})
  128. S_Winner_Score = Quaconfig["s_winner_score"].(map[string]interface{})
  129. Budget_Score = Quaconfig["budget_score"].(map[string]interface{})
  130. Bidamount_Score = Quaconfig["bidamount_score"].(map[string]interface{})
  131. Projectname_Score = Quaconfig["projectname_score"].(map[string]interface{})
  132. Projectcode_Score = Quaconfig["projectcode_score"].(map[string]interface{})
  133. }