switch to pgx driver + create merch
This commit is contained in:
parent
546fe13107
commit
97f8d27430
13 changed files with 289 additions and 69 deletions
|
|
@ -3,16 +3,19 @@ package merch
|
|||
import (
|
||||
"github.com/gin-gonic/gin"
|
||||
"merch-api/pkg/responses"
|
||||
"merch-api/pkg/utils"
|
||||
"net/http"
|
||||
)
|
||||
|
||||
type controller struct {
|
||||
service *service
|
||||
utils utils.Utils
|
||||
}
|
||||
|
||||
func newController(s *service) *controller {
|
||||
func newController(s *service, u utils.Utils) *controller {
|
||||
return &controller{
|
||||
service: s,
|
||||
utils: u,
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -32,7 +35,41 @@ func (h *Handler) RegisterRoutes(r *gin.RouterGroup) {
|
|||
|
||||
}
|
||||
|
||||
func (co *controller) create(c *gin.Context) {}
|
||||
// create godoc
|
||||
//
|
||||
// @Summary Create new merch
|
||||
// @Description Create new merch
|
||||
// @Tags Merch
|
||||
// @Accept json
|
||||
// @Param merch body newMerchDTO true "merch body"
|
||||
// @Success 201
|
||||
// @Failure 400 {object} responses.BadRequest
|
||||
// @Failure 401 {object} responses.Unauthorized
|
||||
// @Failure 500 {object} responses.InternalServerError
|
||||
// @Router /merch/create [POST]
|
||||
func (co *controller) create(c *gin.Context) {
|
||||
userUuid, err := co.utils.GetUserUuidFromContext(c)
|
||||
if err != nil {
|
||||
c.JSON(http.StatusUnauthorized, responses.Unauthorized{Error: err.Error()})
|
||||
logErrController(err)
|
||||
return
|
||||
}
|
||||
|
||||
var newMerch newMerchDTO
|
||||
if err = c.ShouldBindJSON(&newMerch); err != nil {
|
||||
c.JSON(http.StatusBadRequest, responses.BadRequest{Error: err.Error()})
|
||||
logErrController(err)
|
||||
return
|
||||
}
|
||||
|
||||
if err = co.service.createMerch(c, userUuid, &newMerch); err != nil {
|
||||
c.JSON(http.StatusInternalServerError, responses.InternalServerError{Error: err.Error()})
|
||||
logErrController(err)
|
||||
return
|
||||
}
|
||||
|
||||
c.Status(http.StatusCreated)
|
||||
}
|
||||
|
||||
func (co *controller) getOne(c *gin.Context) {}
|
||||
|
||||
|
|
@ -63,7 +100,7 @@ func (co *controller) createOrigin(c *gin.Context) {
|
|||
return
|
||||
}
|
||||
|
||||
if err := co.service.createOrigin(origin); err != nil {
|
||||
if err := co.service.createOrigin(c, origin); err != nil {
|
||||
c.JSON(http.StatusInternalServerError, responses.InternalServerError{Error: err.Error()})
|
||||
logErrController(err)
|
||||
return
|
||||
|
|
@ -86,7 +123,7 @@ func (co *controller) createOrigin(c *gin.Context) {
|
|||
// @Failure 500 {object} responses.InternalServerError
|
||||
// @Router /merch/origins [GET]
|
||||
func (co *controller) getOrigins(c *gin.Context) {
|
||||
response, err := co.service.getOrigins()
|
||||
response, err := co.service.getOrigins(c)
|
||||
if err != nil {
|
||||
c.JSON(http.StatusInternalServerError, responses.InternalServerError{Error: err.Error()})
|
||||
logErrController(err)
|
||||
|
|
@ -118,7 +155,7 @@ func (co *controller) deleteOrigin(c *gin.Context) {
|
|||
return
|
||||
}
|
||||
|
||||
if err := co.service.deleteOrigin(origin); err != nil {
|
||||
if err := co.service.deleteOrigin(c, origin); err != nil {
|
||||
c.JSON(http.StatusInternalServerError, responses.InternalServerError{Error: err.Error()})
|
||||
logErrController(err)
|
||||
return
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue