Files
IUQT/acquaintances/biz/handler/user/user_service.go
2025-07-14 17:49:33 +08:00

110 lines
2.6 KiB
Go

// Code generated by hertz generator.
package user
import (
"acquaintances/biz/dal/mysql"
"acquaintances/biz/model"
user "acquaintances/biz/model/user"
"acquaintances/biz/utils"
"context"
"github.com/cloudwego/hertz/pkg/app"
"github.com/cloudwego/hertz/pkg/common/hlog"
"github.com/cloudwego/hertz/pkg/protocol/consts"
"strconv"
)
// UpdateUser .
// @router /v1/user/update/ [PUT]
func UpdateUser(ctx context.Context, c *app.RequestContext) {
var err error
var req user.UpdateUserRequest
err = c.BindAndValidate(&req)
if err != nil {
c.JSON(consts.StatusBadRequest, err.Error())
return
}
if err = mysql.UpdatesUser(&req); err != nil {
hlog.Error(err.Error())
c.JSON(consts.StatusInternalServerError, &user.CreateUserResponse{Code: user.Code_DBErr, Msg: err.Error()})
return
}
resp := new(user.UpdateUserResponse)
c.JSON(consts.StatusOK, resp)
}
// DeleteUser .
// @router /v1/user/delete/ [delete]
func DeleteUser(ctx context.Context, c *app.RequestContext) {
var err error
var req user.DeleteUserRequest
err = c.BindAndValidate(&req)
if err != nil {
c.JSON(consts.StatusBadRequest, err.Error())
return
}
if err = mysql.DeleteUser(req.UserID); err != nil {
c.JSON(consts.StatusInternalServerError, err.Error())
return
}
resp := new(user.DeleteUserResponse)
c.JSON(consts.StatusOK, resp)
}
// QueryUser .
// @router /v1/user/info/ [GET]
func InfoUser(ctx context.Context, c *app.RequestContext) {
var err error
var req user.InfoUserRequest
err = c.BindAndValidate(&req)
if err != nil {
c.JSON(consts.StatusBadRequest, err.Error())
return
}
data, err := mysql.InfoUser(req.UserID)
if err != nil {
c.JSON(consts.StatusInternalServerError, err.Error())
return
}
resp := new(user.QueryUserResponse)
resp.UserInfo = data
c.JSON(consts.StatusOK, resp)
}
// CreateUser .
// @router /v1/user/create/ [POST]
func CreateUser(ctx context.Context, c *app.RequestContext) {
var err error
var req user.CreateUserRequest
err = c.BindAndValidate(&req)
if err != nil {
c.JSON(consts.StatusBadRequest, err.Error())
return
}
userId, err := utils.GetID()
if err != nil {
c.JSON(consts.StatusInternalServerError, err.Error())
return
}
if err = mysql.CreateUser([]*model.User{
{
UserID: strconv.FormatInt(userId, 10),
UserName: req.Name,
Gender: req.Gender,
Age: uint8(req.Age),
Mobile: req.Mobile,
Area: uint8(req.Area),
UserPassword: req.UserPassword,
},
}); err != nil {
c.JSON(consts.StatusInternalServerError, &user.CreateUserResponse{Code: user.Code_DBErr, Msg: err.Error()})
return
}
resp := new(user.CreateUserResponse)
c.JSON(consts.StatusOK, resp)
}