init
This commit is contained in:
55
local/job/concert.go
Normal file
55
local/job/concert.go
Normal file
@@ -0,0 +1,55 @@
|
||||
package job
|
||||
|
||||
import (
|
||||
"context"
|
||||
"fmt"
|
||||
"os"
|
||||
"rockhu-bot/local/service"
|
||||
|
||||
"github.com/bwmarrin/discordgo"
|
||||
"github.com/robfig/cron/v3"
|
||||
)
|
||||
|
||||
type ConcertJob struct {
|
||||
service *service.ConcertService
|
||||
cron *cron.Cron
|
||||
discord *discordgo.Session
|
||||
}
|
||||
|
||||
// NewConcertJob
|
||||
// Initializes ApiController.
|
||||
//
|
||||
// Args:
|
||||
// *services.ConcertService: Concert service
|
||||
// *Fiber.RouterGroup: Fiber Router Group
|
||||
// Returns:
|
||||
// *ConcertJob: Controller for "api" interactions
|
||||
func NewConcertJob(as *service.ConcertService, cron *cron.Cron, dsc *discordgo.Session) *ConcertJob {
|
||||
ac := &ConcertJob{
|
||||
service: as,
|
||||
cron: cron,
|
||||
discord: dsc,
|
||||
}
|
||||
|
||||
cron.AddFunc(os.Getenv("CONCERT_CRON"), ac.checkAndUpdate)
|
||||
return ac
|
||||
}
|
||||
|
||||
// checkAndUpdate returns Concert
|
||||
//
|
||||
// @Summary Return Concert
|
||||
// @Description Return Concert
|
||||
// @Tags Concert
|
||||
// @Success 200 {array} string
|
||||
// @Router /v1/Concert [get]
|
||||
func (ac *ConcertJob) checkAndUpdate() {
|
||||
fmt.Print("Started CheckAndUpdate")
|
||||
ctx := context.Background()
|
||||
newConcerts := ac.service.CheckAndUpdateConcerts(ctx)
|
||||
fmt.Print("Finished CheckAndUpdate")
|
||||
|
||||
if len(newConcerts) > 0 {
|
||||
ac.
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user