Merge pull request #29 from rede5/codex/fix-404-error-for-shipments-and-reviews

Add admin list endpoints for reviews and shipments
This commit is contained in:
Tiago Yamamoto 2025-12-22 10:25:35 -03:00 committed by GitHub
commit 061930a604
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 6 additions and 3 deletions

View file

@ -17,6 +17,7 @@ import (
// @Failure 401 {object} map[string]string // @Failure 401 {object} map[string]string
// @Failure 500 {object} map[string]string // @Failure 500 {object} map[string]string
// @Router /api/v1/admin/reviews [get] // @Router /api/v1/admin/reviews [get]
// @Router /api/v1/reviews [get]
func (h *Handler) ListAllReviews(w http.ResponseWriter, r *http.Request) { func (h *Handler) ListAllReviews(w http.ResponseWriter, r *http.Request) {
page, pageSize := parsePagination(r) page, pageSize := parsePagination(r)
@ -40,6 +41,7 @@ func (h *Handler) ListAllReviews(w http.ResponseWriter, r *http.Request) {
// @Failure 401 {object} map[string]string // @Failure 401 {object} map[string]string
// @Failure 500 {object} map[string]string // @Failure 500 {object} map[string]string
// @Router /api/v1/admin/shipments [get] // @Router /api/v1/admin/shipments [get]
// @Router /api/v1/shipments [get]
func (h *Handler) ListAllShipments(w http.ResponseWriter, r *http.Request) { func (h *Handler) ListAllShipments(w http.ResponseWriter, r *http.Request) {
page, pageSize := parsePagination(r) page, pageSize := parsePagination(r)

View file

@ -90,11 +90,13 @@ func New(cfg config.Config) (*Server, error) {
mux.Handle("POST /api/v1/orders/{id}/payment", chain(http.HandlerFunc(h.CreatePaymentPreference), middleware.Logger, middleware.Gzip, auth)) mux.Handle("POST /api/v1/orders/{id}/payment", chain(http.HandlerFunc(h.CreatePaymentPreference), middleware.Logger, middleware.Gzip, auth))
mux.Handle("POST /api/v1/shipments", chain(http.HandlerFunc(h.CreateShipment), middleware.Logger, middleware.Gzip, auth)) mux.Handle("POST /api/v1/shipments", chain(http.HandlerFunc(h.CreateShipment), middleware.Logger, middleware.Gzip, auth))
mux.Handle("GET /api/v1/shipments", chain(http.HandlerFunc(h.ListAllShipments), middleware.Logger, middleware.Gzip, adminOnly))
mux.Handle("GET /api/v1/shipments/", chain(http.HandlerFunc(h.GetShipmentByOrderID), middleware.Logger, middleware.Gzip, auth)) mux.Handle("GET /api/v1/shipments/", chain(http.HandlerFunc(h.GetShipmentByOrderID), middleware.Logger, middleware.Gzip, auth))
mux.Handle("POST /api/v1/payments/webhook", chain(http.HandlerFunc(h.HandlePaymentWebhook), middleware.Logger, middleware.Gzip)) mux.Handle("POST /api/v1/payments/webhook", chain(http.HandlerFunc(h.HandlePaymentWebhook), middleware.Logger, middleware.Gzip))
mux.Handle("POST /api/v1/reviews", chain(http.HandlerFunc(h.CreateReview), middleware.Logger, middleware.Gzip, auth)) mux.Handle("POST /api/v1/reviews", chain(http.HandlerFunc(h.CreateReview), middleware.Logger, middleware.Gzip, auth))
mux.Handle("GET /api/v1/reviews", chain(http.HandlerFunc(h.ListAllReviews), middleware.Logger, middleware.Gzip, adminOnly))
mux.Handle("GET /api/v1/dashboard/seller", chain(http.HandlerFunc(h.GetSellerDashboard), middleware.Logger, middleware.Gzip, auth)) mux.Handle("GET /api/v1/dashboard/seller", chain(http.HandlerFunc(h.GetSellerDashboard), middleware.Logger, middleware.Gzip, auth))
mux.Handle("GET /api/v1/dashboard/admin", chain(http.HandlerFunc(h.GetAdminDashboard), middleware.Logger, middleware.Gzip, adminOnly)) mux.Handle("GET /api/v1/dashboard/admin", chain(http.HandlerFunc(h.GetAdminDashboard), middleware.Logger, middleware.Gzip, adminOnly))

View file

@ -306,7 +306,7 @@ export const adminService = {
// ================== REVIEWS ================== // ================== REVIEWS ==================
listReviews: async (page = 1, pageSize = 20) => { listReviews: async (page = 1, pageSize = 20) => {
log('listReviews', { page, pageSize }) log('listReviews', { page, pageSize })
const result = await apiClient.get<ReviewPage>(`/v1/admin/reviews?page=${page}&page_size=${pageSize}`) const result = await apiClient.get<ReviewPage>(`/v1/reviews?page=${page}&page_size=${pageSize}`)
log('listReviews result', result) log('listReviews result', result)
return result return result
}, },
@ -314,7 +314,7 @@ export const adminService = {
// ================== SHIPMENTS ================== // ================== SHIPMENTS ==================
listShipments: async (page = 1, pageSize = 20) => { listShipments: async (page = 1, pageSize = 20) => {
log('listShipments', { page, pageSize }) log('listShipments', { page, pageSize })
const result = await apiClient.get<ShipmentPage>(`/v1/admin/shipments?page=${page}&page_size=${pageSize}`) const result = await apiClient.get<ShipmentPage>(`/v1/shipments?page=${page}&page_size=${pageSize}`)
log('listShipments result', result) log('listShipments result', result)
return result return result
}, },
@ -355,4 +355,3 @@ export interface ShipmentPage {
page: number page: number
page_size: number page_size: number
} }