diff --git a/go.mod b/go.mod index 666ed211..3e8b47c6 100644 --- a/go.mod +++ b/go.mod @@ -5,7 +5,7 @@ go 1.17 require ( github.com/FloatTech/AnimeAPI v1.3.0-beta8.0.20220224052148-f7a1379d4a00 github.com/FloatTech/sqlite v0.2.0 - github.com/FloatTech/zbputils v1.3.0-beta8.0.20220224114458-4310f8e13ad3 + github.com/FloatTech/zbputils v1.3.0-beta8.0.20220224132834-0341eb3c3b13 github.com/antchfx/htmlquery v1.2.4 github.com/corona10/goimagehash v1.0.3 github.com/fogleman/gg v1.3.0 diff --git a/go.sum b/go.sum index ae1b0df0..16844915 100644 --- a/go.sum +++ b/go.sum @@ -4,8 +4,8 @@ github.com/FloatTech/bot-manager v1.0.0/go.mod h1:8YYRJ16oroGHQGD2En0oVnmcKJkxR9 github.com/FloatTech/sqlite v0.2.0 h1:x3uls/hExXH1+bbaNLkvilce6ATtWlDx4IqoxBW/bv8= github.com/FloatTech/sqlite v0.2.0/go.mod h1:xIDWIvpOFl8AXmZm0FC8t3PZjiR6ZutytCpBv2EWCns= github.com/FloatTech/zbputils v1.3.0-beta8.0.20220224051618-597cdb58b3fe/go.mod h1:Jn5LmnwqYivr64qQJBdhDwm2gRut8Hhq5gPBydV0Gvg= -github.com/FloatTech/zbputils v1.3.0-beta8.0.20220224114458-4310f8e13ad3 h1:rIi9+wMFfiYxEG6pCp5Mr6ZiBsstCGHrIt7moGkMEXM= -github.com/FloatTech/zbputils v1.3.0-beta8.0.20220224114458-4310f8e13ad3/go.mod h1:Jn5LmnwqYivr64qQJBdhDwm2gRut8Hhq5gPBydV0Gvg= +github.com/FloatTech/zbputils v1.3.0-beta8.0.20220224132834-0341eb3c3b13 h1:EMkixYWDwQKdlUpt0MF63Nj1e5pdladkWJ++5VCTGSc= +github.com/FloatTech/zbputils v1.3.0-beta8.0.20220224132834-0341eb3c3b13/go.mod h1:Jn5LmnwqYivr64qQJBdhDwm2gRut8Hhq5gPBydV0Gvg= github.com/PuerkitoBio/goquery v1.5.1/go.mod h1:GsLWisAFVj4WgDibEWF4pvYnkVQBpKBKeU+7zCJoLcc= github.com/RomiChan/websocket v1.4.3-0.20220123145318-307a86b127bc h1:AAx50/fb/xS4lvsdQg+bFbGvqSDhyV1MF+p2PLCamZ0= github.com/RomiChan/websocket v1.4.3-0.20220123145318-307a86b127bc/go.mod h1:OMmITAib6POA37xCichWM0aRnoVpSMZO1rB/G01wrr0= diff --git a/plugin_moyu/holiday_test.go b/plugin_moyu/holiday_test.go index 1b287c13..6169d052 100644 --- a/plugin_moyu/holiday_test.go +++ b/plugin_moyu/holiday_test.go @@ -12,7 +12,6 @@ var sr = reg.NewRegedit("reilia.fumiama.top:32664", "fumiama", "--") func TestGetHoliday(t *testing.T) { registry.Connect() - holidaymap = make(map[string]*Holiday) h := GetHoliday("元旦") registry.Close() t.Fatal(h) diff --git a/plugin_moyu/nowork.go b/plugin_moyu/nowork.go index 0707e0a8..9846cbfe 100644 --- a/plugin_moyu/nowork.go +++ b/plugin_moyu/nowork.go @@ -21,29 +21,20 @@ func NewHoliday(name string, dur, year int, month time.Month, day int) *Holiday return &Holiday{name: name, date: time.Date(year, month, day, 0, 0, 0, 0, time.Local), dur: time.Duration(dur) * time.Hour * 24} } -var ( - registry = reg.NewRegReader("reilia.fumiama.top:32664", "fumiama") - holidaymap map[string]*Holiday -) +var registry = reg.NewRegReader("reilia.fumiama.top:32664", "fumiama") // GetHoliday 从 reg 服务器获取节日 func GetHoliday(name string) *Holiday { var dur, year int var month time.Month var day int - h, ok := holidaymap[name] - if ok { - return h - } ret, err := registry.Get("holiday/" + name) if err != nil { return NewHoliday(name+err.Error(), 0, 0, 0, 0) } fmt.Sscanf(ret, "%d_%d_%d_%d", &dur, &year, &month, &day) logrus.Debugln("[moyu]获取节日:", name, dur, year, month, day) - h = NewHoliday(name, dur, year, month, day) - holidaymap[name] = h - return h + return NewHoliday(name, dur, year, month, day) } // String 获取两个时间相差 diff --git a/plugin_moyu/run.go b/plugin_moyu/run.go index c9f1e6a7..fbcf0f5b 100644 --- a/plugin_moyu/run.go +++ b/plugin_moyu/run.go @@ -31,46 +31,39 @@ func init() { // 插件主体 func sendNotice() { m, ok := control.Lookup("moyu") if ok { - if holidaymap == nil { - ok = false - if registry.Connect() != nil { - return - } - holidaymap = make(map[string]*Holiday, 32) + if registry.Connect() != nil { + return } + msg := message.Message{ + message.Text(time.Now().Format("2006-01-02")), + message.Text("上午好,摸鱼人!\n工作再累,一定不要忘记摸鱼哦!有事没事起身去茶水间,去厕所,去廊道走走别老在工位上坐着,钱是老板的,但命是自己的。\n"), + message.Text(weekend()), + message.Text("\n"), + message.Text(GetHoliday("元旦")), + message.Text("\n"), + message.Text(GetHoliday("春节")), + message.Text("\n"), + message.Text(GetHoliday("清明节")), + message.Text("\n"), + message.Text(GetHoliday("劳动节")), + message.Text("\n"), + message.Text(GetHoliday("端午节")), + message.Text("\n"), + message.Text(GetHoliday("中秋节")), + message.Text("\n"), + message.Text(GetHoliday("国庆节")), + message.Text("\n"), + message.Text("上班是帮老板赚钱,摸鱼是赚老板的钱!最后,祝愿天下所有摸鱼人,都能愉快的渡过每一天…"), + } + _ = registry.Close() zero.RangeBot(func(id int64, ctx *zero.Ctx) bool { for _, g := range ctx.GetGroupList().Array() { grp := g.Get("group_id").Int() if m.IsEnabledIn(grp) { - ctx.SendGroupMessage(grp, - []message.MessageSegment{ - message.Text(time.Now().Format("2006-01-02")), - message.Text("上午好,摸鱼人!\n工作再累,一定不要忘记摸鱼哦!有事没事起身去茶水间,去厕所,去廊道走走别老在工位上坐着,钱是老板的,但命是自己的。\n"), - message.Text(weekend()), - message.Text("\n"), - message.Text(GetHoliday("元旦")), - message.Text("\n"), - message.Text(GetHoliday("春节")), - message.Text("\n"), - message.Text(GetHoliday("清明节")), - message.Text("\n"), - message.Text(GetHoliday("劳动节")), - message.Text("\n"), - message.Text(GetHoliday("端午节")), - message.Text("\n"), - message.Text(GetHoliday("中秋节")), - message.Text("\n"), - message.Text(GetHoliday("国庆节")), - message.Text("\n"), - message.Text("上班是帮老板赚钱,摸鱼是赚老板的钱!最后,祝愿天下所有摸鱼人,都能愉快的渡过每一天…"), - }, - ) + ctx.SendGroupMessage(grp, msg) } } return true }) - if !ok { - _ = registry.Close() - } } }