package worker import ( "github.com/go-co-op/gocron" "time" ) func Init() error { timezone, _ := time.LoadLocation("Asia/Shanghai") cron := gocron.NewScheduler(timezone) staff := new(Staff) checkIn := new(Checkin) // 每天同步企业人事信息 cron.Every(1).Day().At("01:00").Do(func() { go staff.SyncStaffInfo() }) //同步每日考勤数据 cron.Every(1).Day().At("05:00").Do(func() { go checkIn.SyncCheckinDay("") }) cron.Every(1).Month(1).At("05:20").Do(func() { go checkIn.SyncCheckinMonth("") }) // 1-10号计算工资信息 cron.Every(1).Month(1).At("05:30").Do(func() { go staff.SyncStaffSalary("") }) //10号晚上8点发送工资单 cron.Every(1).Month(10).At("20:00").Do(func() { go staff.SendStaffSalaryBill(time.Now().AddDate(0, -1, 0).Format("200601")) }) cron.StartAsync() return nil }