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.
27 lines
832 B
27 lines
832 B
package users
|
|
|
|
import (
|
|
"git.devices.local/mawas/golang-api-skeleton/lib/cache"
|
|
"git.devices.local/mawas/golang-api-skeleton/lib/response"
|
|
"git.devices.local/mawas/golang-api-skeleton/repositories"
|
|
"git.devices.local/mawas/golang-api-skeleton/services"
|
|
"github.com/gin-gonic/gin"
|
|
"gorm.io/gorm"
|
|
)
|
|
|
|
func Read(c *gin.Context) {
|
|
db := c.MustGet("db").(*gorm.DB)
|
|
cc := c.MustGet("cache").(cache.Cache)
|
|
response := response.Envelope{
|
|
RequestID: c.MustGet("requestID").(string),
|
|
}
|
|
userRepo := repositories.NewUserRepository(db, "01F5FSJXDHWT4HK93B9NB8V5G4", "test", cc)
|
|
userService := services.NewUserService(userRepo)
|
|
username := c.Param("username")
|
|
user, err := userService.ReadByID(username)
|
|
if err != nil {
|
|
c.AbortWithStatusJSON(500, response.AppendError(err))
|
|
return
|
|
}
|
|
c.JSON(200, response.SetSuccess(user))
|
|
}
|