unfinished purchase

This commit is contained in:
ragilap
2025-11-05 18:58:06 +07:00
parent 4aed480662
commit 8f74391f1e
23 changed files with 1155 additions and 52 deletions
@@ -0,0 +1,27 @@
package validation
type PurchaseItemPayload struct {
ProductID uint `json:"product_id" validate:"required"`
ProductWarehouseID *uint `json:"product_warehouse_id,omitempty" validate:"omitempty,gt=0"`
Quantity float64 `json:"quantity" validate:"required,gt=0"`
}
type CreatePurchaseRequest struct {
SupplierID uint `json:"supplier_id" validate:"required"`
AreaID uint `json:"area_id" validate:"required"`
LocationID uint `json:"location_id" validate:"required"`
WarehouseID uint `json:"warehouse_id" validate:"required"`
Notes *string `json:"notes" validate:"omitempty,max=500"`
Items []PurchaseItemPayload `json:"items" validate:"required,min=1,dive"`
}
type StaffPurchaseApprovalItem struct {
PurchaseItemID uint64 `json:"purchase_item_id" validate:"required,gt=0"`
Price float64 `json:"price" validate:"required,gt=0"`
TotalPrice *float64 `json:"total_price,omitempty" validate:"omitempty,gt=0"`
}
type ApproveStaffPurchaseRequest struct {
Items []StaffPurchaseApprovalItem `json:"items" validate:"required,min=1,dive"`
Notes *string `json:"notes,omitempty" validate:"omitempty,max=500"`
}