diff --git a/backend/handlers/stock_handler.go b/backend/handlers/stock_handler.go index e761e34..1e558cf 100644 --- a/backend/handlers/stock_handler.go +++ b/backend/handlers/stock_handler.go @@ -114,3 +114,21 @@ func StockOut(c *gin.Context) { c.JSON(http.StatusOK, gin.H{"message": "Уход оформлен"}) } + +func GetStockMovements(c *gin.Context) { + itemID := c.Query("item_id") + + var movements []models.StockMovement + query := database.DB.Preload("Item").Order("created_at desc") + + if itemID != "" { + query = query.Where("item_id = ?", itemID) + } + + if err := query.Find(&movements).Error; err != nil { + c.JSON(http.StatusInternalServerError, gin.H{"error": "Не удалось получить историю"}) + return + } + + c.JSON(http.StatusOK, movements) +} diff --git a/backend/main.go b/backend/main.go index 3aa41e8..5b30fe4 100644 --- a/backend/main.go +++ b/backend/main.go @@ -69,6 +69,7 @@ func main() { admin.PATCH("/items/:id/avatar", handlers.UploadItemAvatar) admin.POST("/stock/in", handlers.StockIn) admin.POST("/stock/out", handlers.StockOut) + admin.GET("/stock/movements", handlers.GetStockMovements) } }