123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219 |
- package main
- import (
- "flag"
- "fmt"
- "log"
- "app.yhyue.com/moapp/jybase/common"
- elastic "app.yhyue.com/moapp/jybase/es"
- "app.yhyue.com/moapp/jybase/mongodb"
- "app.yhyue.com/moapp/jybase/mysql"
- "app.yhyue.com/moapp/jybase/redis"
- "github.com/robfig/cron"
- )
- var (
- cfg = new(Config)
- Mysql *mysql.Mysql
- TiDb *mysql.Mysql
- TiDbData *mysql.Mysql
- TiDbPower *mysql.Mysql
- Base *mysql.Mysql
- Es elastic.Es
- Mgo *mongodb.MongodbSim
- MgoLog *mongodb.MongodbSim
- // configFile = flag.String("c", "./config.yaml", "配置文件")
- mode = flag.Int("m", 1, "")
- )
- func main() {
- flag.Parse()
- common.ReadConfig(&cfg)
- // _ = config.LoadConfigWithYaml(*configFile, cfg)
- log.Println("cfg ", cfg)
- TiDb = &mysql.Mysql{
- Address: cfg.TiDb.Host + ":" + fmt.Sprint(cfg.TiDb.Port),
- UserName: cfg.TiDb.User,
- PassWord: cfg.TiDb.Password,
- DBName: cfg.TiDb.Database,
- MaxOpenConns: cfg.TiDb.PollSize,
- MaxIdleConns: cfg.TiDb.MaxIdle,
- }
- TiDb.Init()
- TiDbData = &mysql.Mysql{
- Address: cfg.TiDbData.Host + ":" + fmt.Sprint(cfg.TiDbData.Port),
- UserName: cfg.TiDbData.User,
- PassWord: cfg.TiDbData.Password,
- DBName: cfg.TiDbData.Database,
- MaxOpenConns: cfg.TiDbData.PollSize,
- MaxIdleConns: cfg.TiDbData.MaxIdle,
- }
- TiDbData.Init()
- TiDbPower = &mysql.Mysql{
- Address: cfg.TiDbPower.Host + ":" + fmt.Sprint(cfg.TiDbPower.Port),
- UserName: cfg.TiDbPower.User,
- PassWord: cfg.TiDbPower.Password,
- DBName: cfg.TiDbPower.Database,
- MaxOpenConns: cfg.TiDbPower.PollSize,
- MaxIdleConns: cfg.TiDbPower.MaxIdle,
- }
- TiDbPower.Init()
- Mysql = &mysql.Mysql{
- Address: cfg.Mysql.Host + ":" + fmt.Sprint(cfg.Mysql.Port),
- UserName: cfg.Mysql.User,
- PassWord: cfg.Mysql.Password,
- DBName: cfg.Mysql.Database,
- MaxOpenConns: cfg.Mysql.PollSize,
- MaxIdleConns: cfg.Mysql.MaxIdle,
- }
- Mysql.Init()
- Base = &mysql.Mysql{
- Address: cfg.BaseService.Host + ":" + fmt.Sprint(cfg.BaseService.Port),
- UserName: cfg.BaseService.User,
- PassWord: cfg.BaseService.Password,
- DBName: cfg.BaseService.Database,
- MaxOpenConns: cfg.BaseService.PollSize,
- MaxIdleConns: cfg.BaseService.MaxIdle,
- }
- Base.Init()
- Es = elastic.NewEs(cfg.Es.Version, cfg.Es.Address, cfg.Es.DbSize, cfg.Es.UserName, cfg.Es.Password)
- redis.InitRedis(cfg.RedisServer)
- Mgo = mongodb.NewMgo(cfg.Mgo.Address, cfg.Mgo.DbName, cfg.Mgo.DbSize)
- MgoLog = mongodb.NewMgoWithUser(cfg.MgoLog.Address, cfg.MgoLog.DbName, cfg.MgoLog.User, cfg.MgoLog.Password, cfg.MgoLog.DbSize)
- InitArea()
- if *mode == 1 {
- // 未支付订单 30分钟一次
- // orders()
- a := cron.New()
- a.AddFunc(cfg.CornExp1, func() {
- orders()
- messageSync()
- })
- a.Start()
- // 新注册用户 5分钟一次
- // users()
- // saleLeads()
- b := cron.New()
- b.AddFunc(cfg.CornExp2, func() {
- users()
- saleLeads()
- })
- b.Start()
- // 每天8点30
- c := cron.New()
- c.AddFunc(cfg.CornExp3, func() {
- users()
- saleLeads()
- })
- c.Start()
- // userbase()
- cc := cron.New()
- cc.AddFunc(cfg.CornExp1, func() {
- userbase()
- })
- cc.Start()
- // 用户标签一天一次
- // tagAllSync()
- d := cron.New()
- d.AddFunc(cfg.CornExp4, func() {
- tagAllSync()
- })
- d.Start()
- // 用户标签增量 5分钟一次
- ordersClue()
- kcSync()
- tagAddSync()
- e := cron.New()
- e.AddFunc(cfg.CornExp5, func() {
- tagAddSync()
- ordersClue()
- kcSync()
- kcAuto()
- })
- e.Start()
- //订阅增量 5分钟一次
- subscribeAddSync()
- f := cron.New()
- f.AddFunc(cfg.CornExp6, func() {
- subscribeAddSync()
- })
- f.Start()
- //自动进入任务车 1天一次
- // autoTask()
- // autoTasks()
- g := cron.New()
- g.AddFunc(cfg.CornExp7, func() {
- autoTask()
- autoTasks()
- })
- g.Start()
- h := cron.New()
- h.AddFunc(cfg.CornExp5, func() {
- autoExitSea()
- })
- h.Start()
- select {}
- } else if *mode == 2 {
- users()
- } else if *mode == 3 {
- saleLeads()
- } else if *mode == 4 {
- saleLeads()
- users()
- } else if *mode == 5 {
- tagAllSync()
- } else if *mode == 6 {
- tagAddSync()
- e := cron.New()
- e.AddFunc(cfg.CornExp5, func() {
- tagAddSync()
- })
- e.Start()
- select {}
- } else if *mode == 7 {
- subscribeAddSync()
- e := cron.New()
- e.AddFunc(cfg.CornExp6, func() {
- subscribeAddSync()
- })
- e.Start()
- select {}
- } else if *mode == 8 {
- subscribeAllSync()
- } else if *mode == 9 {
- autoTask()
- } else if *mode == 10 {
- getAreaCode("6447753fb4f3c077da9d5336")
- } else if *mode == 11 {
- trail()
- } else if *mode == 12 {
- userbase()
- } else if *mode == 13 {
- eventSync()
- } else if *mode == 14 {
- getXlsx()
- } else if *mode == 15 {
- getXlsx2()
- } else if *mode == 16 {
- uidSync()
- } else if *mode == 17 {
- privateClueSync()
- } else if *mode == 18 {
- clueInfoSync()
- } else if *mode == 19 {
- app_xzcyh_sync()
- } else if *mode == 20 {
- kcHistorySync()
- } else if *mode == 21 {
- kcHistorySyncs()
- } else if *mode == 22 {
- kcVisitSync()
- } else if *mode == 23 {
- hlyjSync()
- } else if *mode == 24 {
- hlyjSync2()
- } else if *mode == 25 {
- hlyjSync3()
- }
- }
|