mirror of https://github.com/kone-net/go-chat.git
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.
82 lines
1.9 KiB
82 lines
1.9 KiB
package v1 |
|
|
|
import ( |
|
"net/http" |
|
|
|
"chat-room/internal/model" |
|
"chat-room/internal/service" |
|
"chat-room/pkg/common/request" |
|
"chat-room/pkg/common/response" |
|
"chat-room/pkg/global/log" |
|
|
|
"github.com/gin-gonic/gin" |
|
) |
|
|
|
func Login(c *gin.Context) { |
|
var user model.User |
|
// c.BindJSON(&user) |
|
c.ShouldBindJSON(&user) |
|
log.Logger.Debug("user", log.Any("user", user)) |
|
|
|
if service.UserService.Login(&user) { |
|
c.JSON(http.StatusOK, response.SuccessMsg(user)) |
|
return |
|
} |
|
|
|
c.JSON(http.StatusOK, response.FailMsg("Login failed")) |
|
} |
|
|
|
func Register(c *gin.Context) { |
|
var user model.User |
|
c.ShouldBindJSON(&user) |
|
err := service.UserService.Register(&user) |
|
if err != nil { |
|
c.JSON(http.StatusOK, response.FailMsg(err.Error())) |
|
return |
|
} |
|
|
|
c.JSON(http.StatusOK, response.SuccessMsg(user)) |
|
} |
|
|
|
func ModifyUserInfo(c *gin.Context) { |
|
var user model.User |
|
c.ShouldBindJSON(&user) |
|
log.Logger.Debug("user", log.Any("user", user)) |
|
if err := service.UserService.ModifyUserInfo(&user); err != nil { |
|
c.JSON(http.StatusOK, response.FailMsg(err.Error())) |
|
return |
|
} |
|
|
|
c.JSON(http.StatusOK, response.SuccessMsg(nil)) |
|
} |
|
|
|
func GetUserDetails(c *gin.Context) { |
|
uuid := c.Param("uuid") |
|
|
|
c.JSON(http.StatusOK, response.SuccessMsg(service.UserService.GetUserDetails(uuid))) |
|
} |
|
|
|
// 通过用户名获取用户信息 |
|
func GetUserOrGroupByName(c *gin.Context) { |
|
name := c.Query("name") |
|
|
|
c.JSON(http.StatusOK, response.SuccessMsg(service.UserService.GetUserOrGroupByName(name))) |
|
} |
|
|
|
func GetUserList(c *gin.Context) { |
|
uuid := c.Query("uuid") |
|
c.JSON(http.StatusOK, response.SuccessMsg(service.UserService.GetUserList(uuid))) |
|
} |
|
|
|
func AddFriend(c *gin.Context) { |
|
var userFriendRequest request.FriendRequest |
|
c.ShouldBindJSON(&userFriendRequest) |
|
|
|
err := service.UserService.AddFriend(&userFriendRequest) |
|
if nil != err { |
|
c.JSON(http.StatusOK, response.FailMsg(err.Error())) |
|
return |
|
} |
|
|
|
c.JSON(http.StatusOK, response.SuccessMsg(nil)) |
|
}
|
|
|