package entities

import "gorm.io/gorm"

func GetAllEntities() []interface{} {
	return []interface{}{
		&Organization{},
		&Outlet{},
		&OutletSetting{},
		&User{},
		&Category{},
		&Product{},
		&ProductVariant{},
		&Inventory{},
		&Order{},
		&OrderItem{},
		&PaymentMethod{},
		&Payment{},
		&Customer{},
		&Table{},
		&Vendor{},
		&PurchaseOrder{},
		&PurchaseOrderItem{},
		&PurchaseOrderAttachment{},
		&IngredientUnitConverter{},
		&Voucher{},
		// Analytics entities are not database tables, they are query results
	}
}

func AutoMigrate(db *gorm.DB) error {
	return db.AutoMigrate(GetAllEntities()...)
}
