feat: load preview page do not require user to login

This commit is contained in:
RockYang
2024-03-19 18:25:01 +08:00
parent 8f47474edd
commit 58e44b7d12
57 changed files with 758 additions and 1550 deletions

View File

@@ -14,13 +14,10 @@ import (
type ChatHandler struct {
handler.BaseHandler
db *gorm.DB
}
func NewChatHandler(app *core.AppServer, db *gorm.DB) *ChatHandler {
h := ChatHandler{db: db}
h.App = app
return &h
return &ChatHandler{BaseHandler: handler.BaseHandler{App: app, DB: db}}
}
type chatItemVo struct {
@@ -36,7 +33,7 @@ type chatItemVo struct {
}
func (h *ChatHandler) List(c *gin.Context) {
if err := utils.CheckPermission(c, h.db); err != nil {
if err := utils.CheckPermission(c, h.DB); err != nil {
resp.NotPermission(c)
return
}
@@ -54,7 +51,7 @@ func (h *ChatHandler) List(c *gin.Context) {
return
}
session := h.db.Session(&gorm.Session{})
session := h.DB.Session(&gorm.Session{})
if data.Title != "" {
session = session.Where("title LIKE ?", "%"+data.Title+"%")
}
@@ -88,9 +85,9 @@ func (h *ChatHandler) List(c *gin.Context) {
var messages []model.ChatMessage
var users []model.User
var roles []model.ChatRole
h.db.Where("chat_id IN ?", chatIds).Find(&messages)
h.db.Where("id IN ?", userIds).Find(&users)
h.db.Where("id IN ?", roleIds).Find(&roles)
h.DB.Where("chat_id IN ?", chatIds).Find(&messages)
h.DB.Where("id IN ?", userIds).Find(&users)
h.DB.Where("id IN ?", roleIds).Find(&roles)
tokenMap := make(map[string]int)
userMap := make(map[uint]string)
@@ -155,7 +152,7 @@ func (h *ChatHandler) Messages(c *gin.Context) {
return
}
session := h.db.Session(&gorm.Session{})
session := h.DB.Session(&gorm.Session{})
if data.Content != "" {
session = session.Where("content LIKE ?", "%"+data.Content+"%")
}
@@ -183,7 +180,7 @@ func (h *ChatHandler) Messages(c *gin.Context) {
userIds = append(userIds, item.UserId)
}
var users []model.User
h.db.Where("id IN ?", userIds).Find(&users)
h.DB.Where("id IN ?", userIds).Find(&users)
userMap := make(map[uint]string)
for _, user := range users {
userMap[user.Id] = user.Username
@@ -210,7 +207,7 @@ func (h *ChatHandler) History(c *gin.Context) {
chatId := c.Query("chat_id") // 会话 ID
var items []model.ChatMessage
var messages = make([]vo.HistoryMessage, 0)
res := h.db.Where("chat_id = ?", chatId).Find(&items)
res := h.DB.Where("chat_id = ?", chatId).Find(&items)
if res.Error != nil {
resp.ERROR(c, "No history message")
return
@@ -237,7 +234,7 @@ func (h *ChatHandler) RemoveChat(c *gin.Context) {
return
}
tx := h.db.Begin()
tx := h.DB.Begin()
// 删除聊天记录
res := tx.Unscoped().Debug().Where("chat_id = ?", chatId).Delete(&model.ChatMessage{})
if res.Error != nil {
@@ -260,7 +257,7 @@ func (h *ChatHandler) RemoveChat(c *gin.Context) {
// RemoveMessage 删除聊天记录
func (h *ChatHandler) RemoveMessage(c *gin.Context) {
id := h.GetInt(c, "id", 0)
tx := h.db.Unscoped().Where("id = ?", id).Delete(&model.ChatMessage{})
tx := h.DB.Unscoped().Where("id = ?", id).Delete(&model.ChatMessage{})
if tx.Error != nil {
resp.ERROR(c, "更新数据库失败!")
return