自媒体用户模块开发
This commit is contained in:
145
weMedia/biz/handler/weMediaUser/user_service.go
Normal file
145
weMedia/biz/handler/weMediaUser/user_service.go
Normal file
@@ -0,0 +1,145 @@
|
||||
// Code generated by hertz generator.
|
||||
|
||||
package weMediaUser
|
||||
|
||||
import (
|
||||
"context"
|
||||
"github.com/cloudwego/hertz/pkg/app"
|
||||
"github.com/cloudwego/hertz/pkg/protocol/consts"
|
||||
"time"
|
||||
"weMedia/biz/dal/mysql"
|
||||
"weMedia/biz/model"
|
||||
weMediaUser "weMedia/biz/model/weMediaUser"
|
||||
)
|
||||
|
||||
// getFormattedTime 函数处理日期格式化
|
||||
func getFormattedTime(birthday *time.Time) string {
|
||||
if birthday == nil {
|
||||
return "" // 或返回默认值,如"未设置"
|
||||
}
|
||||
return birthday.Format("2006-01-02 15:04:05")
|
||||
}
|
||||
|
||||
// UpdateUser .
|
||||
// @router /v1/weMedia/user/ [PUT]
|
||||
func UpdateUser(ctx context.Context, c *app.RequestContext) {
|
||||
var err error
|
||||
var req weMediaUser.UpdateUserRequest
|
||||
err = c.BindAndValidate(&req)
|
||||
if err != nil {
|
||||
c.String(consts.StatusBadRequest, err.Error())
|
||||
return
|
||||
}
|
||||
err = mysql.UpdatesUser(&req)
|
||||
if err != nil {
|
||||
c.String(consts.StatusBadRequest, err.Error())
|
||||
return
|
||||
}
|
||||
resp := new(weMediaUser.UpdateUserResponse)
|
||||
|
||||
c.JSON(consts.StatusOK, resp)
|
||||
}
|
||||
|
||||
// DeleteUser .
|
||||
// @router /v1/weMedia/user/ [DELETE]
|
||||
func DeleteUser(ctx context.Context, c *app.RequestContext) {
|
||||
var err error
|
||||
var req weMediaUser.DeleteUserRequest
|
||||
err = c.BindAndValidate(&req)
|
||||
if err != nil {
|
||||
c.String(consts.StatusBadRequest, err.Error())
|
||||
return
|
||||
}
|
||||
err = mysql.DeleteUser(req.UserID)
|
||||
if err != nil {
|
||||
c.String(consts.StatusBadRequest, err.Error())
|
||||
return
|
||||
}
|
||||
resp := new(weMediaUser.DeleteUserResponse)
|
||||
|
||||
c.JSON(consts.StatusOK, resp)
|
||||
}
|
||||
|
||||
// InfoUser .
|
||||
// @router /v1/weMedia/user/ [GET]
|
||||
func InfoUser(ctx context.Context, c *app.RequestContext) {
|
||||
var err error
|
||||
var req weMediaUser.InfoUserRequest
|
||||
err = c.BindAndValidate(&req)
|
||||
if err != nil {
|
||||
c.String(consts.StatusBadRequest, err.Error())
|
||||
return
|
||||
}
|
||||
data, err := mysql.InfoUser(req.IuqtID)
|
||||
if err != nil {
|
||||
c.String(consts.StatusBadRequest, err.Error())
|
||||
return
|
||||
}
|
||||
resp := new(weMediaUser.QueryUserResponse)
|
||||
resp.UserInfo = &weMediaUser.UserInfoReq{
|
||||
UserName: data.UserName,
|
||||
Gender: weMediaUser.Gender(data.Gender),
|
||||
Age: int64(data.Age),
|
||||
Introduce: data.Introduce,
|
||||
AvatarImageURL: data.AvatarImageURL,
|
||||
Birthday: getFormattedTime(data.Birthday),
|
||||
Area: int64(data.Area),
|
||||
Mobile: data.Mobile,
|
||||
Email: data.UserEmail,
|
||||
Address: data.Address,
|
||||
UserID: data.UserID,
|
||||
IuqtID: data.IuqtID,
|
||||
BackgroundImageURL: data.BackgroundImageURL,
|
||||
}
|
||||
c.JSON(consts.StatusOK, resp)
|
||||
}
|
||||
|
||||
// CreateUser .
|
||||
// @router /v1/weMedia/user/ [POST]
|
||||
func CreateUser(ctx context.Context, c *app.RequestContext) {
|
||||
var err error
|
||||
var req weMediaUser.CreateUserRequest
|
||||
err = c.BindAndValidate(&req)
|
||||
if err != nil {
|
||||
c.String(consts.StatusBadRequest, err.Error())
|
||||
return
|
||||
}
|
||||
|
||||
err = mysql.CreateUser(&model.WeMediaUser{
|
||||
UserID: req.UserID,
|
||||
IuqtID: "",
|
||||
UserName: req.Name,
|
||||
Gender: uint8(req.Gender),
|
||||
Age: uint8(req.Age),
|
||||
Mobile: req.Mobile,
|
||||
Area: uint16(req.Area),
|
||||
})
|
||||
if err != nil {
|
||||
c.String(consts.StatusBadRequest, err.Error())
|
||||
return
|
||||
}
|
||||
resp := new(weMediaUser.CreateUserResponse)
|
||||
|
||||
c.JSON(consts.StatusOK, resp)
|
||||
}
|
||||
|
||||
// FindUser .
|
||||
// @router /v1/weMedia/user/find/ [GET]
|
||||
func FindUser(ctx context.Context, c *app.RequestContext) {
|
||||
var err error
|
||||
var req weMediaUser.FindUserRequest
|
||||
err = c.BindAndValidate(&req)
|
||||
if err != nil {
|
||||
c.String(consts.StatusBadRequest, err.Error())
|
||||
return
|
||||
}
|
||||
data, total, err := mysql.FindUser(&req.Keyword, req.Page, req.PageSize)
|
||||
if err != nil {
|
||||
c.String(consts.StatusBadRequest, err.Error())
|
||||
return
|
||||
}
|
||||
resp := new(weMediaUser.FindUserResponse)
|
||||
resp.Users = data
|
||||
resp.Total = total
|
||||
c.JSON(consts.StatusOK, resp)
|
||||
}
|
Reference in New Issue
Block a user