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.
79 lines
2.2 KiB
79 lines
2.2 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,
|
|
})
|
|
}
|
|
// @Summary 获取访客列表接口
|
|
// @Produce json
|
|
// @Accept multipart/form-data
|
|
// @Param page query string true "分页"
|
|
// @Param token header string true "认证token"
|
|
// @Success 200 {object} controller.Response
|
|
// @Failure 200 {object} controller.Response
|
|
// @Router /visitors [get]
|
|
func GetVisitors(c *gin.Context) {
|
|
page,_:=strconv.Atoi(c.Query("page"))
|
|
kefuId,_:=c.Get("kefu_name")
|
|
vistors:=models.FindVisitorsByKefuId(uint(page),config.VisitorPageSize,kefuId.(string))
|
|
count:=models.CountVisitorsByKefuId(kefuId.(string))
|
|
c.JSON(200, gin.H{
|
|
"code": 200,
|
|
"msg": "ok",
|
|
"result":gin.H{
|
|
"list":vistors,
|
|
"count":count,
|
|
"pagesize":config.PageSize,
|
|
},
|
|
})
|
|
}
|
|
// @Summary 获取访客聊天信息接口
|
|
// @Produce json
|
|
// @Accept multipart/form-data
|
|
// @Param visitorId query string true "访客ID"
|
|
// @Param token header string true "认证token"
|
|
// @Success 200 {object} controller.Response
|
|
// @Failure 200 {object} controller.Response
|
|
// @Router /messages [get]
|
|
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.Format("2006-01-02 15:04:05")
|
|
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)
|
|
|
|
}
|
|
models.ReadMessageByVisitorId(visitorId)
|
|
c.JSON(200, gin.H{
|
|
"code": 200,
|
|
"msg": "ok",
|
|
"result":result,
|
|
})
|
|
}
|