123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 |
- package handler
- import (
- "github.com/gin-gonic/gin"
- "github.com/go-nunu/nunu-layout-advanced/internal/model"
- "github.com/go-nunu/nunu-layout-advanced/internal/service"
- "github.com/go-nunu/nunu-layout-advanced/pkg/helper/resp"
- "go.uber.org/zap"
- "net/http"
- )
- type UserHandler struct {
- *Handler
- userService *service.UserService
- }
- func NewUserHandler(handler *Handler, userService *service.UserService) *UserHandler {
- return &UserHandler{
- Handler: handler,
- userService: userService,
- }
- }
- func (c *UserHandler) CreateUser(ctx *gin.Context) {
- var params struct {
- Username string `json:"username" binding:"required,min=2,max=20"`
- Email string `json:"email" binding:"required,email"`
- }
- if err := ctx.ShouldBind(¶ms); err != nil {
- resp.HandleError(ctx, http.StatusBadRequest, 1, err.Error(), nil)
- return
- }
- user, err := c.userService.CreateUser(&model.User{
- Username: params.Username,
- Email: params.Email,
- })
- c.logger.Info("CreateUser", zap.Any("user", user))
- if err != nil {
- resp.HandleError(ctx, http.StatusInternalServerError, 1, err.Error(), nil)
- return
- }
- resp.HandleSuccess(ctx, user)
- }
- func (c *UserHandler) GetUserById(ctx *gin.Context) {
- var params struct {
- Id int64 `form:"id" binding:"required"`
- }
- if err := ctx.ShouldBind(¶ms); err != nil {
- resp.HandleError(ctx, http.StatusBadRequest, 1, err.Error(), nil)
- return
- }
- user, err := c.userService.GetUserById(params.Id)
- c.logger.Info("GetUserByID", zap.Any("user", user))
- if err != nil {
- resp.HandleError(ctx, http.StatusInternalServerError, 1, err.Error(), nil)
- return
- }
- resp.HandleSuccess(ctx, user)
- }
- func (c *UserHandler) UpdateUser(ctx *gin.Context) {
- resp.HandleSuccess(ctx, nil)
- }
|