diff --git a/controller/visitor.go b/controller/visitor.go index afd269e..0e68fbb 100644 --- a/controller/visitor.go +++ b/controller/visitor.go @@ -82,7 +82,6 @@ func PostVisitorLogin(c *gin.Context) { client_ip := c.ClientIP() extra := c.PostForm("extra") extraJson := tools.Base64Decode(extra) - //log.Println(extra, extraJson, "aaaaaaaaaaaaa") if extraJson != "" { var extraObj VisitorExtra err := json.Unmarshal([]byte(extraJson), &extraObj) @@ -111,15 +110,26 @@ func PostVisitorLogin(c *gin.Context) { }) return } - models.CreateVisitor(name, avator, c.ClientIP(), toId, id, refer, city, client_ip, extra) visitor := models.FindVisitorByVistorId(id) + if visitor.Name != "" { + avator = visitor.Avator + //更新状态上线 + models.UpdateVisitor(name, visitor.Avator, id, 1, c.ClientIP(), c.ClientIP(), refer, extra) + } else { + models.CreateVisitor(name, avator, c.ClientIP(), toId, id, refer, city, client_ip, extra) + } + visitor.Name = name + visitor.Avator = avator + visitor.ToId = toId + visitor.ClientIp = c.ClientIP() + visitor.VisitorId = id //各种通知 go SendNoticeEmail(visitor.Name, "来了") go SendAppGetuiPush(kefuInfo.Name, visitor.Name, visitor.Name+"来了") go SendVisitorLoginNotice(kefuInfo.Name, visitor.Name, visitor.Avator, visitor.Name+"来了", visitor.VisitorId) go ws.VisitorOnline(kefuInfo.Name, visitor) - go SendServerJiang(visitor.Name, "来了", c.Request.Host) + //go SendServerJiang(visitor.Name, "来了", c.Request.Host) c.JSON(200, gin.H{ "code": 200, diff --git a/models/visitors.go b/models/visitors.go index 8288510..5bcf0a5 100644 --- a/models/visitors.go +++ b/models/visitors.go @@ -19,12 +19,6 @@ type Visitor struct { } func CreateVisitor(name, avator, sourceIp, toId, visitorId, refer, city, clientIp, extra string) { - old := FindVisitorByVistorId(visitorId) - if old.Name != "" { - //更新状态上线 - UpdateVisitor(name, avator, visitorId, 1, clientIp, sourceIp, refer, extra) - return - } v := &Visitor{ Name: name, Avator: avator,