Logistiki.Demo.Seeds (logistiki v0.1.0)

Copy Markdown View Source

Demo scenario seeds for Logistiki v0.1.0.

Creates the demo business entity tree, virtual account tree, and entity-account relationships described in the project plan, then exposes helpers to process the demo business events.

This module is idempotent within a transaction and is used by the demo script, the integration tests, and priv/repo/seeds.exs.

Summary

Functions

Returns a no-accounting-impact account-opened event.

Returns the demo deposit event for account_code.

Returns the demo fee event.

Runs the full demo seed (entities, accounts, relationships). Returns {entities, accounts}.

Creates the demo virtual account tree and returns a map of named accounts.

Creates the demo business entity tree and returns a map of named entities.

Links demo entities to their accounts and returns :ok.

Returns the demo transfer event from from_code to to_code.

Functions

account_opened_event(account_code)

(since 0.1.0)

Returns a no-accounting-impact account-opened event.

deposit_event(account_code, amount, entity_type \\ "corporate")

(since 0.1.0)

Returns the demo deposit event for account_code.

fee_event(account_code, amount)

(since 0.1.0)

Returns the demo fee event.

run()

(since 0.1.0)

Runs the full demo seed (entities, accounts, relationships). Returns {entities, accounts}.

seed_accounts()

(since 0.1.0)

Creates the demo virtual account tree and returns a map of named accounts.

seed_entities()

(since 0.1.0)

Creates the demo business entity tree and returns a map of named entities.

seed_relationships(entities, accounts)

(since 0.1.0)

Links demo entities to their accounts and returns :ok.

transfer_event(from_code, to_code, amount)

(since 0.1.0)

Returns the demo transfer event from from_code to to_code.