diff --git a/controller/visitor.go b/controller/visitor.go index 81efae5..e63e647 100644 --- a/controller/visitor.go +++ b/controller/visitor.go @@ -69,6 +69,7 @@ func GetVisitorMessage(c *gin.Context) { result=append(result,item) } + models.ReadMessageByVisitorId(visitorId) c.JSON(200, gin.H{ "code": 200, "msg": "ok", diff --git a/main.go b/main.go index c73e2ad..5adbb6b 100644 --- a/main.go +++ b/main.go @@ -46,6 +46,13 @@ func main() { engine.GET("/chat_server", controller.NewChatServer) //获取消息 engine.GET("/messages",middleware.JwtApiMiddleware, controller.GetVisitorMessage) + //发送单条消息 + engine.POST("/message",controller.GetVisitorMessage) + //获取未读消息数 + engine.GET("/message_status",controller.GetVisitorMessage) + //设置消息已读 + engine.POST("/message_status",controller.GetVisitorMessage) + //获取客服信息 engine.GET("/kefuinfo",middleware.JwtApiMiddleware, controller.GetKefuInfo) engine.GET("/kefuinfo_setting",middleware.JwtApiMiddleware, controller.GetKefuInfoSetting) diff --git a/models/messages.go b/models/messages.go index 8244ea6..472eb57 100644 --- a/models/messages.go +++ b/models/messages.go @@ -21,4 +21,17 @@ func FindMessageByVisitorId(visitor_id string)[]Message{ var messages []Message DB.Where("visitor_id=?",visitor_id).Order("id asc").Find(&messages) return messages +} +//修改消息状态 +func ReadMessageByVisitorId(visitor_id string){ + message:=&Message{ + Status:"read", + } + DB.Model(&message).Where("visitor_id=?",visitor_id).Update(message) +} +//获取未读数 +func FindUnreadMessageNumByVisitorId(visitor_id string)uint{ + var count uint + DB.Where("visitor_id=? and status=?",visitor_id,"unread").Count(&count) + return count } \ No newline at end of file