46 lines
1004 B
Go
46 lines
1004 B
Go
package services
|
|
|
|
import (
|
|
"ai_scheduler/internal/biz"
|
|
"ai_scheduler/internal/entitys"
|
|
"github.com/gofiber/fiber/v2"
|
|
)
|
|
|
|
type SessionService struct {
|
|
sessionBiz *biz.SessionBiz
|
|
chatBiz *biz.ChatHistoryBiz
|
|
}
|
|
|
|
func NewSessionService(sessionBiz *biz.SessionBiz, chatBiz *biz.ChatHistoryBiz) *SessionService {
|
|
return &SessionService{
|
|
sessionBiz: sessionBiz,
|
|
chatBiz: chatBiz,
|
|
}
|
|
}
|
|
|
|
// SessionInit 初始化会话
|
|
func (s *SessionService) SessionInit(c *fiber.Ctx) error {
|
|
req := &entitys.SessionInitRequest{}
|
|
if err := c.BodyParser(req); err != nil {
|
|
return err
|
|
}
|
|
|
|
result, err := s.sessionBiz.SessionInit(c.Context(), req)
|
|
|
|
return handRes(c, err, result)
|
|
}
|
|
|
|
// SessionList 获取会话列表
|
|
func (s *SessionService) SessionList(c *fiber.Ctx) error {
|
|
req := &entitys.SessionListRequest{}
|
|
if err := c.BodyParser(req); err != nil {
|
|
return err
|
|
}
|
|
|
|
sessionList, err := s.sessionBiz.SessionList(c.Context(), req)
|
|
|
|
return handRes(c, err, fiber.Map{
|
|
"session_list": sessionList,
|
|
})
|
|
}
|