123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179 |
- package util
- import (
- "mongodb"
- qu "qfw/util"
- "qfw/util/elastic"
- "qfw/util/redis"
- )
- var (
- Sysconfig map[string]interface{} //配置文件
- Mgo *mongodb.MongodbSim
- MgoCus *mongodb.MongodbSim //企业服务库
- JYMgo *mongodb.MongodbSim
- OprdMgo *mongodb.MongodbSim
- MgoEn *mongodb.MongodbSim
- JyProMgo *mongodb.MongodbSim
- MgoS *mongodb.MongodbSim
- EsIndex, EsType string
- MgoEnC string
- JyCollNameOne string
- JyCollNameTwo string
- JyRecord string
- JyProColl string
- JyProRecord string
- RedisJYName string
- RedisDelKey1 string
- RedisDelKey2 string
- RedisDelKey3 string
- RedisDelKey4 string
- RedisDelKey5 string
- RedisSave string // 新增数据保存信息
- )
- var (
- TopTypeArr []string //公告一级分类
- SubTypeMap map[string][]string //公告二级分类
- Province []string //省
- ProvinceCitys map[string][]string //省:[市1,市2]
- CityDistricts map[string][]string //市:[区1,区2]
- BuyerClass []string //采购单位行业
- ScopeClassMap map[string]interface{} //公告行业
- )
- func InitMgoPool() {
- Mgo = &mongodb.MongodbSim{
- MongodbAddr: qu.ObjToString(Sysconfig["mgodb"]),
- Size: qu.IntAll(Sysconfig["dbsize"]),
- DbName: qu.ObjToString(Sysconfig["dbname"]),
- UserName: qu.ObjToString(Sysconfig["uname"]),
- Password: qu.ObjToString(Sysconfig["upwd"]),
- }
- Mgo.InitPool()
- mgo := *qu.ObjToMap(Sysconfig["oprd_db"])
- OprdMgo = &mongodb.MongodbSim{
- MongodbAddr: qu.ObjToString(mgo["addr"]),
- Size: qu.IntAll(mgo["dbsize"]),
- DbName: qu.ObjToString(mgo["dbname"]),
- }
- OprdMgo.InitPool()
- //lua
- luaDb := *qu.ObjToMap(Sysconfig["lua_db"])
- MgoS = &mongodb.MongodbSim{
- MongodbAddr: qu.ObjToString(luaDb["addr"]),
- Size: qu.IntAll(luaDb["dbsize"]),
- DbName: qu.ObjToString(luaDb["dbname"]),
- }
- MgoS.InitPool()
- }
- func initJYMgo() {
- jymgo := *qu.ObjToMap(Sysconfig["jymgo"])
- JYMgo = &mongodb.MongodbSim{
- MongodbAddr: qu.ObjToString(jymgo["jyaddr"]),
- Size: qu.IntAll(jymgo["jydbsize"]),
- DbName: qu.ObjToString(jymgo["jydbname"]),
- UserName: qu.ObjToString(Sysconfig["uname"]),
- Password: qu.ObjToString(Sysconfig["upwd"]),
- }
- JyCollNameOne = qu.ObjToString(jymgo["jycollname1"])
- JyCollNameTwo = qu.ObjToString(jymgo["jycollname2"])
- JyRecord = qu.ObjToString(Sysconfig["jy_info_back"])
- JyProRecord = qu.ObjToString(Sysconfig["jy_pro_back"])
- JYMgo.InitPool()
- //项目
- jypro := *qu.ObjToMap(Sysconfig["jy_pro"])
- JyProMgo = &mongodb.MongodbSim{
- MongodbAddr: qu.ObjToString(jypro["mgodb"]),
- Size: qu.IntAll(jypro["dbsize"]),
- DbName: qu.ObjToString(jypro["dbname"]),
- }
- JyProColl = qu.ObjToString(jypro["coll"])
- JyProMgo.InitPool()
- }
- func initJYRedis() {
- jyredis := *qu.ObjToMap(Sysconfig["jyredis"])
- redis.InitRedisBySize(qu.ObjToString(jyredis["redis_jy"]), 50, 30, 240)
- RedisJYName = qu.ObjToString(jyredis["redis_jy_name"])
- RedisDelKey1 = qu.ObjToString(jyredis["redisdelkey1"])
- RedisDelKey2 = qu.ObjToString(jyredis["redisdelkey2"])
- RedisDelKey3 = qu.ObjToString(jyredis["redisdelkey3"])
- RedisDelKey4 = qu.ObjToString(jyredis["redisdelkey4"])
- RedisDelKey5 = qu.ObjToString(jyredis["redisdelkey5"])
- InitRedis(qu.ObjToString(jyredis["redis_jy_save"]))
- }
- func InitOther() {
- initCitys()
- initInfoType()
- initBuyerClass()
- initScopeClass()
- initEs()
- initJYMgo()
- initJYRedis()
- }
- func initCitys() {
- //map初始化
- if ProvinceCitys == nil {
- ProvinceCitys = make(map[string][]string)
- }
- if CityDistricts == nil {
- CityDistricts = make(map[string][]string)
- }
- datas, _ := Mgo.Find("code_city", `{}`, `{"_id":1}`, `{}`, false, -1, -1)
- for _, data := range *datas {
- brief := data["brief"].(string)
- Province = append(Province, brief)
- citys := data["citys"].([]interface{})
- citytmp := []string{}
- for _, city := range citys {
- cityMap := city.(map[string]interface{})
- for cname, districts := range cityMap {
- citytmp = append(citytmp, cname)
- tmp := districts.([]interface{})
- districtarr := qu.ObjArrToStringArr(tmp)
- CityDistricts[cname] = districtarr
- }
- }
- ProvinceCitys[brief] = citytmp
- }
- }
- func initInfoType() {
- SubTypeMap = make(map[string][]string)
- datas, _ := Mgo.Find("code_infotype", `{}`, `{"_id":1}`, `{}`, false, -1, -1)
- for _, data := range *datas {
- name := data["name"].(string)
- TopTypeArr = append(TopTypeArr, name)
- child := qu.ObjArrToStringArr(data["child"].([]interface{}))
- SubTypeMap[name] = child
- }
- }
- func initBuyerClass() {
- datas, _ := Mgo.Find("code_buyerclass", `{}`, `{"_id":1}`, `{}`, false, -1, -1)
- for _, data := range *datas {
- name := data["name"].(string)
- BuyerClass = append(BuyerClass, name)
- }
- }
- func initScopeClass() {
- if ScopeClassMap == nil {
- ScopeClassMap = make(map[string]interface{})
- }
- info, _ := Mgo.Find("code_scopeclass", `{}`, `{"_id": 1}`, `{}`, false, -1, -1)
- for _, i := range *info {
- ScopeClassMap[qu.ObjToString(i["name"])] = i["child"]
- }
- }
- func initEs() {
- EsIndex, EsType = qu.ObjToString(Sysconfig["elasticsearch_index"]), qu.ObjToString(Sysconfig["elasticsearch_type"])
- elastic.InitElasticSize(qu.ObjToString(Sysconfig["elasticsearch"]), qu.IntAllDef(qu.Int64All(Sysconfig["elasticPoolSize"]), 30))
- }
|