You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
go-fly/controller/visitor.go

61 lines
1.4 KiB

package controller
import (
"github.com/gin-gonic/gin"
"github.com/taoshihan1991/imaptool/config"
"github.com/taoshihan1991/imaptool/models"
"strconv"
)
func GetVisitor(c *gin.Context) {
visitorId:=c.Query("visitorId")
vistor:=models.FindVisitorByVistorId(visitorId)
c.JSON(200, gin.H{
"code": 200,
"msg": "ok",
"result":vistor,
})
}
func GetVisitors(c *gin.Context) {
page,_:=strconv.Atoi(c.Query("page"))
vistors:=models.FindVisitors(uint(page))
count:=models.CountVisitors()
c.JSON(200, gin.H{
"code": 200,
"msg": "ok",
"result":gin.H{
"list":vistors,
"count":count,
"pagesize":config.PageSize,
},
})
}
func GetVisitorMessage(c *gin.Context) {
visitorId:=c.Query("visitorId")
messages:=models.FindMessageByVisitorId(visitorId)
result:=make([]map[string]interface{},0)
for _,message:=range messages{
item:=make(map[string]interface{})
var visitor models.Visitor
var kefu models.User
if visitor.Name=="" || kefu.Name==""{
kefu=models.FindUser(message.KefuId)
visitor=models.FindVisitorByVistorId(message.VisitorId)
}
item["time"]=message.CreatedAt
item["content"]=message.Content
item["mes_type"]=message.MesType
item["visitor_name"]=visitor.Name
item["visitor_avator"]=visitor.Avator
item["kefu_name"]=kefu.Nickname
item["kefu_avator"]=kefu.Avator
result=append(result,item)
}
c.JSON(200, gin.H{
"code": 200,
"msg": "ok",
"result":result,
})
}