88 lines
1.9 KiB
Go
88 lines
1.9 KiB
Go
|
|
package constants
|
||
|
|
|
||
|
|
type OrderType string
|
||
|
|
|
||
|
|
const (
|
||
|
|
OrderTypeDineIn OrderType = "dine_in"
|
||
|
|
OrderTypeTakeout OrderType = "takeout"
|
||
|
|
OrderTypeDelivery OrderType = "delivery"
|
||
|
|
)
|
||
|
|
|
||
|
|
type OrderStatus string
|
||
|
|
|
||
|
|
const (
|
||
|
|
OrderStatusPending OrderStatus = "pending"
|
||
|
|
OrderStatusPreparing OrderStatus = "preparing"
|
||
|
|
OrderStatusReady OrderStatus = "ready"
|
||
|
|
OrderStatusCompleted OrderStatus = "completed"
|
||
|
|
OrderStatusCancelled OrderStatus = "cancelled"
|
||
|
|
OrderStatusPaid OrderStatus = "paid"
|
||
|
|
)
|
||
|
|
|
||
|
|
type OrderItemStatus string
|
||
|
|
|
||
|
|
const (
|
||
|
|
OrderItemStatusPending OrderItemStatus = "pending"
|
||
|
|
OrderItemStatusPreparing OrderItemStatus = "preparing"
|
||
|
|
OrderItemStatusReady OrderItemStatus = "ready"
|
||
|
|
OrderItemStatusServed OrderItemStatus = "served"
|
||
|
|
OrderItemStatusCancelled OrderItemStatus = "cancelled"
|
||
|
|
OrderItemStatusCompleted OrderItemStatus = "completed"
|
||
|
|
)
|
||
|
|
|
||
|
|
func GetAllOrderTypes() []OrderType {
|
||
|
|
return []OrderType{
|
||
|
|
OrderTypeDineIn,
|
||
|
|
OrderTypeTakeout,
|
||
|
|
OrderTypeDelivery,
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
func GetAllOrderStatuses() []OrderStatus {
|
||
|
|
return []OrderStatus{
|
||
|
|
OrderStatusPending,
|
||
|
|
OrderStatusPreparing,
|
||
|
|
OrderStatusReady,
|
||
|
|
OrderStatusCompleted,
|
||
|
|
OrderStatusCancelled,
|
||
|
|
OrderStatusPaid,
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
func GetAllOrderItemStatuses() []OrderItemStatus {
|
||
|
|
return []OrderItemStatus{
|
||
|
|
OrderItemStatusPending,
|
||
|
|
OrderItemStatusPreparing,
|
||
|
|
OrderItemStatusReady,
|
||
|
|
OrderItemStatusServed,
|
||
|
|
OrderItemStatusCancelled,
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
func (o OrderType) IsValidOrderType() bool {
|
||
|
|
for _, validType := range GetAllOrderTypes() {
|
||
|
|
if o == validType {
|
||
|
|
return true
|
||
|
|
}
|
||
|
|
}
|
||
|
|
return false
|
||
|
|
}
|
||
|
|
|
||
|
|
func IsValidOrderStatus(status OrderStatus) bool {
|
||
|
|
for _, validStatus := range GetAllOrderStatuses() {
|
||
|
|
if status == validStatus {
|
||
|
|
return true
|
||
|
|
}
|
||
|
|
}
|
||
|
|
return false
|
||
|
|
}
|
||
|
|
|
||
|
|
func IsValidOrderItemStatus(status OrderItemStatus) bool {
|
||
|
|
for _, validStatus := range GetAllOrderItemStatuses() {
|
||
|
|
if status == validStatus {
|
||
|
|
return true
|
||
|
|
}
|
||
|
|
}
|
||
|
|
return false
|
||
|
|
}
|