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
2 months ago
|
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.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))
|
||
|
}
|