feat: enhance user response to include associated warehouses in GetUserById

This commit is contained in:
Habib Fatkhul Rohman 2025-11-21 10:24:26 +07:00
parent ff8cd07e9c
commit 51a6f291e0
2 changed files with 19 additions and 12 deletions

View File

@ -15,7 +15,6 @@ import (
"github.com/gin-gonic/gin" "github.com/gin-gonic/gin"
"github.com/google/uuid" "github.com/google/uuid"
"github.com/samber/do" "github.com/samber/do"
"github.com/sirupsen/logrus"
"gorm.io/gorm" "gorm.io/gorm"
) )
@ -106,7 +105,6 @@ func (c *userController) AddUserWarehouse(ctx *gin.Context) {
// GetUserWarehouses implements UserController. // GetUserWarehouses implements UserController.
func (c *userController) GetUserWarehouses(ctx *gin.Context) { func (c *userController) GetUserWarehouses(ctx *gin.Context) {
userId := ctx.Param("id") userId := ctx.Param("id")
logrus.Infof("Getting warehouses for user ID: %s", userId)
result, err := c.userService.GetUserWarehouses(ctx.Request.Context(), userId) result, err := c.userService.GetUserWarehouses(ctx.Request.Context(), userId)
if err != nil { if err != nil {
res := utils.BuildResponseFailed(dto.MESSAGE_FAILED_GET_USER, err.Error(), nil) res := utils.BuildResponseFailed(dto.MESSAGE_FAILED_GET_USER, err.Error(), nil)

View File

@ -442,17 +442,26 @@ func (s *userService) GetUserById(ctx context.Context, userId string) (dto.UserR
Name: user.Client.Name, Name: user.Client.Name,
} }
var warehouses []pkgdto.IdNameResponse
for _, uw := range user.Warehouses {
warehouses = append(warehouses, pkgdto.IdNameResponse{
ID: uw.ID.String(),
Name: uw.Name,
})
}
return dto.UserResponse{ return dto.UserResponse{
ID: user.ID.String(), ID: user.ID.String(),
Name: user.Name, Name: user.Name,
Username: user.Username, Username: user.Username,
Email: user.Email, Email: user.Email,
Gender: user.Gender, Gender: user.Gender,
Address: user.Address, Address: user.Address,
Phone: user.Phone, Phone: user.Phone,
PhotoUrl: user.PhotoUrl, PhotoUrl: user.PhotoUrl,
Roles: roles, Roles: roles,
Client: client, Client: client,
Warehouses: warehouses,
}, nil }, nil
} }