visitor_controller.go 841 B

1234567891011121314151617181920212223242526272829303132333435
  1. package controller
  2. import (
  3. "net/http"
  4. "github.com/2930134478/AI-CS/backend/service"
  5. "github.com/gin-gonic/gin"
  6. )
  7. // VisitorController 负责处理访客相关的 HTTP 请求。
  8. type VisitorController struct {
  9. visitorService *service.VisitorService
  10. }
  11. // NewVisitorController 创建 VisitorController 实例。
  12. func NewVisitorController(visitorService *service.VisitorService) *VisitorController {
  13. return &VisitorController{
  14. visitorService: visitorService,
  15. }
  16. }
  17. // GetOnlineAgents 获取在线客服列表(供访客查看)。
  18. // GET /visitor/online-agents
  19. func (v *VisitorController) GetOnlineAgents(c *gin.Context) {
  20. agents, err := v.visitorService.GetOnlineAgents()
  21. if err != nil {
  22. c.JSON(http.StatusInternalServerError, gin.H{"error": err.Error()})
  23. return
  24. }
  25. c.JSON(http.StatusOK, gin.H{
  26. "agents": agents,
  27. })
  28. }