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() { initInfoType() initBuyerClass() initScopeClass() initEs() initJYMgo() initJYRedis() } 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)) }