# Test script to verify batch number functionality # First run this migration if not already run: # mix ecto.migrate # Test in IEx: # iex> alias DaProductApp.{Repo, Transactions.Transaction, BatchNumber} # # # Create a test batch number for a merchant # iex> BatchNumber.changeset(%BatchNumber{}, %{ # merchant_id: "Mercury_1234512", # batch_number: "000005", # date: ~D[2025-07-25] # }) |> Repo.insert() # # # Create a transaction and verify batch number is set automatically # iex> Transaction.changeset(%Transaction{}, %{ # merchant_id: "Mercury_1234512", # status: "pending" # }) |> Repo.insert() # # # The transaction should have batch_number "000005" automatically set # Summary of what was implemented: # 1. Added batch_number column to transactions table (migration) # 2. Added batch_number field to Transaction schema # 3. Added automatic batch number setting in changeset # 4. When a transaction is created, it gets the latest batch number for that merchant_id