123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168 |
- package main
- import (
- "fieldproject_common/config"
- "fmt"
- "go.uber.org/zap"
- util "jygit.jydev.jianyu360.cn/data_processing/common_utils"
- "jygit.jydev.jianyu360.cn/data_processing/common_utils/elastic"
- "jygit.jydev.jianyu360.cn/data_processing/common_utils/log"
- "jygit.jydev.jianyu360.cn/data_processing/common_utils/mongodb"
- "jygit.jydev.jianyu360.cn/data_processing/common_utils/mysqldb"
- "os"
- )
- var (
- RecordField = []string{"name", "name_id", "type", "createtime"}
- // DealerField 经销商字段
- DealerField = []string{"name_id", "company_id", "dealer_name", "area_code", "city_code", "district_code",
- "business_model", "capital", "employee_no", "insurance_amount", "company_address", "website", "capital_code",
- "employee_no_code", "insurance_amount_code", "exists_id", "createtime"}
- EntField = []string{"company_id", "company_name", "company_code", "credit_no", "org_code", "tax_code", "establish_date",
- "legal_person", "legal_person_caption", "company_status", "company_type", "authority", "issue_date", "operation_startdate",
- "operation_enddate", "capital", "company_address", "business_scope", "cancel_date", "cancel_reason", "revoke_date",
- "revoke_reason", "legal_person_type", "real_capital", "en_name", "list_code", "area_code", "employee_no", "company_phone",
- "insurance_amount", "company_email", "website", "sourcetype", "createtime", "updatetime", "employees"}
- // RegField 许可备案
- RegField = []string{"dealer_id", "company_name", "regnum", "type", "address", "scope", "business_type", "approve_depart",
- "validity_date", "approve_date", "type_address", "website_name", "website", "platform_name", "client_name",
- "responsible_person", "legal_person", "residence", "createtime"}
- ProductField = []string{"dealer_id", "company_id", "company_name", "regno", "company_address", "make_adress", "make_country",
- "agent_name", "agent_address", "brand", "model", "main_part", "product_descrip", "use_scope", "storage_conditions",
- "remark", "approve_depart", "approve_date", "validity_date", "changes", "regist_type", "source_channel", "manage_type",
- "product_name", "medical_equipment_class1", "medical_equipment_class2", "medical_equipment_class3", "sdproduct_name",
- "sdequipment_code", "isvalid", "createtime"}
- ProjectField = []string{"projectid", "infoid", "jyhref", "itemname", "brandname", "specs", "model", "unitname", "number", "unitprice",
- "totalprice", "medical_equipment_class1", "medical_equipment_class2", "medical_equipment_class3", "sdproduct_name",
- "sdequipment_code", "area_code", "city_code", "district_code", "budget", "title", "projectname", "projectcode",
- "purchasing", "buyer_id", "agency_id", "buyer", "mi_level_code", "mi_area_code", "agency", "bidstatus",
- "bidtype", "bidopentime", "zbtime", "jgtime", "updatetime", "createtime", "month_tags", "year_tags", "quarter_tags"}
- WinerField = []string{"projectid", "infoid", "winner", "winner_id", "contact_name", "contact_tel", "winner_area_code",
- "winner_city_code", "bidamount", "jgtime", "is_winner", "createtime", "updatetime"}
- AreaCode = make(map[string]string, 5000)
- LvCode = make(map[string]string, 10000000)
- PclassCode = make(map[string]map[string]string, 10000)
- )
- // InitLog @Description
- // @Author J 2022/7/26 15:30
- func InitLog() {
- logcfg := config.Conf.Log
- err := log.InitLog(
- log.Path(logcfg.LogPath),
- log.Level(logcfg.LogLevel),
- log.Compress(logcfg.Compress),
- log.MaxSize(logcfg.MaxSize),
- log.MaxBackups(logcfg.MaxBackups),
- log.MaxAge(logcfg.MaxAge),
- log.Format(logcfg.Format),
- )
- if err != nil {
- fmt.Printf("InitLog failed: %v\n", err)
- os.Exit(1)
- }
- }
- func InitMgo() {
- MongoTool = &mongodb.MongodbSim{
- MongodbAddr: config.Conf.DB.Mongo.Addr,
- Size: config.Conf.DB.Mongo.Size,
- DbName: config.Conf.DB.Mongo.Dbname,
- UserName: config.Conf.DB.Mongo.User,
- Password: config.Conf.DB.Mongo.Password,
- }
- MongoTool.InitPool()
- MongoTool1 = &mongodb.MongodbSim{
- MongodbAddr: config.Conf.DB.Mongo1.Addr,
- Size: config.Conf.DB.Mongo1.Size,
- DbName: config.Conf.DB.Mongo1.Dbname,
- UserName: config.Conf.DB.Mongo1.User,
- Password: config.Conf.DB.Mongo1.Password,
- }
- MongoTool1.InitPool()
- MongoTool2 = &mongodb.MongodbSim{
- MongodbAddr: config.Conf.DB.Mongo2.Addr,
- Size: config.Conf.DB.Mongo2.Size,
- DbName: config.Conf.DB.Mongo2.Dbname,
- UserName: config.Conf.DB.Mongo2.User,
- Password: config.Conf.DB.Mongo2.Password,
- }
- MongoTool2.InitPool()
- }
- func InitEs() {
- Es = &elastic.Elastic{
- S_esurl: config.Conf.DB.Es.Addr,
- I_size: config.Conf.DB.Es.Size,
- }
- Es.InitElasticSize()
- }
- func InitMysql() {
- dbcfg := config.Conf.DB.Mysql
- MysqlB = &mysqldb.Mysql{
- Address: dbcfg.Addr,
- DBName: dbcfg.DbnameBasic,
- UserName: dbcfg.User,
- PassWord: dbcfg.Password,
- }
- MysqlB.Init()
- MysqlM = &mysqldb.Mysql{
- Address: dbcfg.Addr,
- DBName: dbcfg.DbnameMedical,
- UserName: dbcfg.User,
- PassWord: dbcfg.Password,
- }
- MysqlM.Init()
- }
- func InitField() {
- info := MysqlB.Find("code_area", nil, "", "", -1, -1)
- for _, m := range *info {
- var key string
- for i, v := range []string{"area", "city", "district"} {
- if i == 0 && util.ObjToString(m[v]) != "" {
- key = util.ObjToString(m[v])
- } else if util.ObjToString(m[v]) != "" {
- key += "," + util.ObjToString(m[v])
- }
- }
- AreaCode[key] = util.ObjToString(m["code"])
- }
- log.Info("InitField", zap.Int("AreaCode", len(AreaCode)))
- }
- func InitLvCode() {
- info := MysqlM.Find("dwd_f_yl_organ_baseinfo", nil, "name_id, level_code", "", -1, -1)
- for _, m := range *info {
- name_id := util.ObjToString(m["name_id"])
- code := util.ObjToString(m["level_code"])
- LvCode[name_id] = util.ObjToString(code)
- }
- log.Info("InitLvCode", zap.Int("LvCode", len(LvCode)))
- }
- func InitPoCode() {
- data_class := MysqlM.Find("d_yl_productclass_code", nil, "", "", -1, -1)
- for _, v := range *data_class {
- name := util.ObjToString(v["name"])
- code := util.ObjToString(v["code"])
- pcode := util.ObjToString(v["pcode"])
- level := util.IntAll(v["level"])
- info := map[string]string{}
- for key, value := range PclassCode[pcode] {
- info[key] = value
- }
- new_key := "class_" + fmt.Sprintf("%d", level)
- info[new_key] = name
- PclassCode[code] = info
- }
- }
|