# operation: accounting
###### Sprint: ?
### Outcome:
a simple information about operations.
#### File destination:
{$Dena_Path}/app/model/operations/
##### Doc
* Operation:
this is the base class for operations and subcategories Heir from it.
operation column:
1. reference: it has polymorphic for every type of references(for example trades or withdraws or deposit or ..)
2. currencies: code of currency
3. credit: plus funds
4. debit: minus funds
5. account
methods of operations were implemented in this class and subcategories only use them.
```mermaid
graph TD
A[operation] -->|inheritance| B(Expense)
A[operation] -->|inheritance| C(Asset)
A[operation] -->|inheritance| D(Liability)
A[operation] -->|inheritance| E(Revenue)
```
this chart showed inheritance structure of operation.
1. Expense:
Expense is a income statement operation.
2. Asset
is a balance sheet operation.every income/outcome of system store and controll by it.
3. Liability
is a balance sheet operation and belongs to members and we manage members accounting things by it.
for example trades and deposit.
4. Revenue:
is a income statement operation and we manage exchange revenue by it.
####SO:
* revenue --> revenue of exchange
* liability --> users accounting
* asset --> exchange assets
* expense --> ?