router.go 6.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. package routers
  2. import (
  3. "shudao-chat-go/controllers"
  4. beego "github.com/beego/beego/v2/server/web"
  5. )
  6. func init() {
  7. // 前端页面路由 - 放在API路由之前
  8. beego.Router("/", &controllers.FrontendController{}, "get:Index")
  9. beego.Router("/stream-test", &controllers.FrontendController{}, "get:StreamTest")
  10. beego.Router("/simple-stream-test", &controllers.FrontendController{}, "get:SimpleStreamTest")
  11. beego.Router("/stream-chat-with-db-test", &controllers.FrontendController{}, "get:StreamChatWithDBTest")
  12. ns := beego.NewNamespace("apiv1",
  13. // 本地登录接口 (不需要认证)
  14. beego.NSRouter("/auth/local_login", &controllers.LocalAuthController{}, "post:LocalLogin"),
  15. //推荐问题
  16. beego.NSRouter("/recommend_question", &controllers.TotalController{}, "get:GetRecommendQuestion"),
  17. //提交意见反馈
  18. beego.NSRouter("/submit_feedback", &controllers.TotalController{}, "post:SubmitFeedback"),
  19. //返回政策文件
  20. beego.NSRouter("/get_policy_file", &controllers.TotalController{}, "get:GetPolicyFile"),
  21. //发送deepseek消息
  22. beego.NSRouter("/send_deepseek_message", &controllers.ChatController{}, "post:SendDeepSeekMessage"),
  23. // OSS上传相关路由
  24. beego.NSRouter("/oss/upload", &controllers.ShudaoOssController{}, "post:Upload"),
  25. // 新的OSS接口路由
  26. beego.NSRouter("/oss/shudao/upload_image", &controllers.ShudaoOssController{}, "post:UploadImage"),
  27. // 上传JSON文件接口
  28. beego.NSRouter("/oss/shudao/upload_json", &controllers.ShudaoOssController{}, "post:UploadPPTJson"),
  29. // OSS代理解析接口
  30. beego.NSRouter("/oss/parse", &controllers.ShudaoOssController{}, "get:ParseOSS"),
  31. //返回四条功能卡片
  32. beego.NSRouter("/get_function_card", &controllers.TotalController{}, "get:GetFunctionCard"),
  33. //返回三条热点问题
  34. beego.NSRouter("/get_hot_question", &controllers.TotalController{}, "get:GetHotQuestion"),
  35. //获取历史记录GetHistoryRecord()
  36. beego.NSRouter("/get_history_record", &controllers.ChatController{}, "get:GetHistoryRecord"),
  37. //修改考试题目
  38. beego.NSRouter("/re_modify_question", &controllers.ExamController{}, "post:ReModifyQuestion"),
  39. //重新生产单题
  40. beego.NSRouter("/re_produce_single_question", &controllers.ChatController{}, "post:ReProduceSingleQuestion"),
  41. // 生成考试提示词
  42. beego.NSRouter("/exam/build_prompt", &controllers.PromptController{}, "post:BuildExamPrompt"),
  43. // 单题生成提示词
  44. beego.NSRouter("/exam/build_single_prompt", &controllers.PromptController{}, "post:BuildSingleQuestionPrompt"),
  45. // 猜你想问
  46. beego.NSRouter("/guess_you_want", &controllers.ChatController{}, "post:GuessYouWant"),
  47. //隐患识别
  48. beego.NSRouter("/hazard", &controllers.HazardController{}, "post:Hazard"),
  49. // 点赞和踩
  50. beego.NSRouter("/like_and_dislike", &controllers.TotalController{}, "post:LikeAndDislike"),
  51. // 隐患识别获取历史记录
  52. beego.NSRouter("/get_history_recognition_record", &controllers.SceneController{}, "get:GetHistoryRecognitionRecord"),
  53. // 获取识别记录详情
  54. beego.NSRouter("/get_recognition_record_detail", &controllers.SceneController{}, "get:GetRecognitionRecordDetail"),
  55. //用户在输入框中每输入一个字,就调用一次阿里大模型返回推荐问题
  56. beego.NSRouter("/get_user_recommend_question", &controllers.ChatController{}, "get:GetUserRecommendQuestion"),
  57. // 用户传文件名取数据库寻找链接
  58. beego.NSRouter("/get_file_link", &controllers.ChatController{}, "get:GetFileLink"),
  59. // 删除对话
  60. beego.NSRouter("/delete_conversation", &controllers.ChatController{}, "post:DeleteConversation"),
  61. //删除历史记录
  62. beego.NSRouter("/delete_history_record", &controllers.ChatController{}, "post:DeleteHistoryRecord"),
  63. // 删除隐患识别的历史记录
  64. beego.NSRouter("/delete_recognition_record", &controllers.ChatController{}, "post:DeleteRecognitionRecord"),
  65. // 保存步骤
  66. beego.NSRouter("/save_step", &controllers.HazardController{}, "post:SaveStep"),
  67. // 获取隐患识别三级场景标题查询正确和错误的示例图
  68. beego.NSRouter("/get_third_scene_example_image", &controllers.SceneController{}, "get:GetThirdSceneExampleImage"),
  69. // 保存ppt大纲
  70. beego.NSRouter("/save_ppt_outline", &controllers.ChatController{}, "post:SavePPTOutline"),
  71. // 文件下载接口
  72. beego.NSRouter("/download_file", &controllers.TotalController{}, "get:GetPdfOssDownloadLink"),
  73. // 用户提交点评
  74. beego.NSRouter("/submit_evaluation", &controllers.SceneController{}, "post:SubmitEvaluation"),
  75. // 查询用户最新的一条识别记录是否点评
  76. beego.NSRouter("/get_latest_recognition_record", &controllers.SceneController{}, "get:GetLatestRecognitionRecord"),
  77. // AI写作保存编辑文档内容
  78. beego.NSRouter("/save_edit_document", &controllers.ChatController{}, "post:SaveEditDocument"),
  79. // 联网搜索
  80. beego.NSRouter("/online_search", &controllers.ChatController{}, "get:OnlineSearch"),
  81. // 联网搜索结果存入AIMessage表
  82. beego.NSRouter("/save_online_search_result", &controllers.ChatController{}, "post:SaveOnlineSearchResult"),
  83. // 意图识别接口
  84. beego.NSRouter("/intent_recognition", &controllers.ChatController{}, "post:IntentRecognition"),
  85. // 获取ChromaDB文档并生成回答
  86. beego.NSRouter("/get_chromadb_document", &controllers.ChatController{}, "get:GetChromaDBDocument"),
  87. // 知识库文件高级搜索
  88. beego.NSRouter("/knowledge/files/advanced-search", &controllers.ChromaController{}, "get:AdvancedSearch"),
  89. // 流式接口路由
  90. beego.NSRouter("/stream/chat", &controllers.LiushiController{}, "post:StreamChat"),
  91. // 流式聊天数据库集成接口
  92. beego.NSRouter("/stream/chat-with-db", &controllers.LiushiController{}, "post:StreamChatWithDB"),
  93. // 政策文件查看和下载次数统计
  94. beego.NSRouter("/policy_file_count", &controllers.TotalController{}, "post:GetPolicyFileViewAndDownloadCount"),
  95. // 根据account_id获取用户数据主键id
  96. beego.NSRouter("/get_user_data_id", &controllers.TotalController{}, "get:GetUserDataID"),
  97. // 埋点记录相关路由
  98. beego.NSRouter("/tracking/record", &controllers.TrackingController{}, "post:RecordTracking"),
  99. beego.NSRouter("/tracking/records", &controllers.TrackingController{}, "get:GetTrackingRecords"),
  100. beego.NSRouter("/tracking/api_mapping", &controllers.TrackingController{}, "post:AddApiMapping"),
  101. beego.NSRouter("/tracking/api_mappings", &controllers.TrackingController{}, "get:GetApiMappings"),
  102. )
  103. beego.AddNamespace(ns)
  104. }