Files
honoka-chan/internal/handler/api/live/schedule.go
T
YumeMichi e61c07a9a3 Reduce handler request boilerplate
- Add session.Attach to reuse per-request sessions across middleware and ghome handlers
- Make Session finalize/abort paths idempotent to avoid duplicate commit or rollback work
- Move request_data parsing helper to internal/utils
- Expand ParseRequestData usage across api, download, unit, live, multiunit, and subscenario handlers
- Extract download package metadata into internal/handler/download/types.go
- Return explicit errors from selected session lookup helpers and update callers
- Make api action handlers return errors directly instead of calling ss.CheckErr in nested layers

Signed-off-by: Sean Du <do4suki@gmail.com>
2026-06-04 03:05:32 +08:00

48 lines
1.2 KiB
Go

package live
import (
liveapischema "honoka-chan/internal/schema/api/live"
"honoka-chan/internal/session"
"time"
"github.com/gin-gonic/gin"
)
func liveSchedule(ctx *gin.Context) (res any, err error) {
ss := session.Get(ctx)
var liveID []int
err = ss.MainEng.Table("special_live_m").
Cols("live_difficulty_id").OrderBy("live_difficulty_id ASC").Find(&liveID)
if err != nil {
return nil, err
}
liveList := []liveapischema.LiveList{}
for _, id := range liveID {
liveList = append(liveList, liveapischema.LiveList{
LiveDifficultyID: id,
StartDate: "2023-01-01 00:00:00",
EndDate: "2037-01-01 00:00:00",
IsRandom: false,
})
}
res = liveapischema.ScheduleResp{
Result: liveapischema.ScheduleData{
EventList: []any{},
LiveList: liveList,
LimitedBonusList: []any{},
LimitedBonusCommonList: []liveapischema.LimitedBonusCommonList{},
RandomLiveList: []liveapischema.RandomLiveList{},
FreeLiveList: []any{},
TrainingLiveList: []liveapischema.TrainingLiveList{},
},
Status: 200,
CommandNum: false,
TimeStamp: time.Now().Unix(),
}
return res, err
}