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. } }