Skip to content

Commit 1098715

Browse files
committed
- **Expanded field definitions and updated account role choices:**
- Enhanced `AccountModel` role choices with expanded classifications for `Assets`, `Liabilities`, `Equity`, and `Root` groups, providing comprehensive account role coverage. - Updated `ReceiptModel` to enforce stricter validation for `amount` using a minimum value validator and enhanced verbose descriptions. - Refined `receipt_account` in `ReceiptModel` to require `PROTECT` on deletion and clarified usage through updated help text. - Adjusted `receipt_type` choices in `ReceiptModel` and `StagedTransactionModel` to include transaction-specific roles like `sales`, `customer_refund`, `expense`, `expense_refund`, `transfer`, and `debt_paydown`. - **Configuration updates for improved readability and versioning:** - Increased line length limit to `120` in `pyproject
1 parent 5c0a4f7 commit 1098715

File tree

3 files changed

+161
-2
lines changed

3 files changed

+161
-2
lines changed

django_ledger/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
default_app_config = 'django_ledger.apps.DjangoLedgerConfig'
77

88
"""Django Ledger"""
9-
__version__ = '0.8.2.1'
9+
__version__ = '0.8.2.2'
1010
__license__ = 'GPLv3 License'
1111

1212
__author__ = 'Miguel Sanda'
Lines changed: 159 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,159 @@
1+
# Generated by Django 5.2.6 on 2025-10-03 01:36
2+
3+
import django.core.validators
4+
import django.db.models.deletion
5+
from django.db import migrations, models
6+
7+
8+
class Migration(migrations.Migration):
9+
dependencies = [
10+
('django_ledger', '0026_stagedtransactionmodel_customer_model_and_more'),
11+
]
12+
13+
operations = [
14+
migrations.AlterField(
15+
model_name='accountmodel',
16+
name='role',
17+
field=models.CharField(
18+
choices=[
19+
(
20+
'Assets',
21+
[
22+
('asset_ca_cash', 'Current Asset'),
23+
('asset_ca_mkt_sec', 'Marketable Securities'),
24+
('asset_ca_recv', 'Receivables'),
25+
('asset_ca_inv', 'Inventory'),
26+
('asset_ca_uncoll', 'Uncollectibles'),
27+
('asset_ca_prepaid', 'Prepaid'),
28+
('asset_ca_other', 'Other Liquid Assets'),
29+
('asset_lti_notes', 'Notes Receivable'),
30+
('asset_lti_land', 'Land'),
31+
('asset_lti_sec', 'Securities'),
32+
('asset_ppe_build', 'Buildings'),
33+
('asset_ppe_build_accum_depr', 'Buildings - Accum. Depreciation'),
34+
('asset_ppe_plant', 'Plant'),
35+
('asset_ppe_plant_depr', 'Plant - Accum. Depreciation'),
36+
('asset_ppe_equip', 'Equipment'),
37+
('asset_ppe_equip_accum_depr', 'Equipment - Accum. Depreciation'),
38+
('asset_ia', 'Intangible Assets'),
39+
('asset_ia_accum_amort', 'Intangible Assets - Accum. Amortization'),
40+
('asset_adjustment', 'Other Assets'),
41+
],
42+
),
43+
(
44+
'Liabilities',
45+
[
46+
('lia_cl_acc_payable', 'Accounts Payable'),
47+
('lia_cl_credit_line', 'Credit Line'),
48+
('lia_cl_wages_payable', 'Wages Payable'),
49+
('lia_cl_int_payable', 'Interest Payable'),
50+
('lia_cl_taxes_payable', 'Taxes Payable'),
51+
('lia_cl_st_notes_payable', 'Short Term Notes Payable'),
52+
('lia_cl_ltd_mat', 'Current Maturities of Long Tern Debt'),
53+
('lia_cl_def_rev', 'Deferred Revenue'),
54+
('lia_cl_other', 'Other Liabilities'),
55+
('lia_ltl_notes', 'Long Term Notes Payable'),
56+
('lia_ltl_bonds', 'Bonds Payable'),
57+
('lia_ltl_mortgage', 'Mortgage Payable'),
58+
],
59+
),
60+
(
61+
'Equity',
62+
[
63+
('eq_capital', 'Capital'),
64+
('eq_stock_common', 'Common Stock'),
65+
('eq_stock_preferred', 'Preferred Stock'),
66+
('eq_adjustment', 'Other Equity Adjustments'),
67+
('eq_dividends', 'Dividends & Distributions to Shareholders'),
68+
('in_operational', 'Operational Income'),
69+
('in_passive', 'Investing/Passive Income'),
70+
('in_interest', 'Interest Income'),
71+
('in_gain_loss', 'Capital Gain/Loss Income'),
72+
('in_other', 'Other Income'),
73+
('cogs_regular', 'Cost of Goods Sold'),
74+
('ex_regular', 'Regular Expense'),
75+
('ex_interest_st', 'Interest Expense - Short Term Debt'),
76+
('ex_interest', 'Interest Expense - Long Term Debt'),
77+
('ex_taxes', 'Tax Expense'),
78+
('ex_capital', 'Capital Expense'),
79+
('ex_depreciation', 'Depreciation Expense'),
80+
('ex_amortization', 'Amortization Expense'),
81+
('ex_other', 'Other Expense'),
82+
],
83+
),
84+
(
85+
'Root',
86+
[
87+
('root_coa', 'CoA Root Account'),
88+
('root_assets', 'Assets Root Account'),
89+
('root_liabilities', 'Liabilities Root Account'),
90+
('root_capital', 'Capital Root Account'),
91+
('root_income', 'Income Root Account'),
92+
('root_cogs', 'COGS Root Account'),
93+
('root_expenses', 'Expenses Root Account'),
94+
],
95+
),
96+
],
97+
max_length=30,
98+
verbose_name='Account Role',
99+
),
100+
),
101+
migrations.AlterField(
102+
model_name='receiptmodel',
103+
name='amount',
104+
field=models.DecimalField(
105+
decimal_places=2,
106+
help_text='Amount of the receipt.',
107+
max_digits=20,
108+
validators=[django.core.validators.MinValueValidator(limit_value=0)],
109+
verbose_name='Receipt Amount',
110+
),
111+
),
112+
migrations.AlterField(
113+
model_name='receiptmodel',
114+
name='receipt_account',
115+
field=models.ForeignKey(
116+
blank=True,
117+
help_text='The income or expense account where this transaction will be reflected',
118+
null=True,
119+
on_delete=django.db.models.deletion.PROTECT,
120+
to='django_ledger.accountmodel',
121+
verbose_name='PnL Account',
122+
),
123+
),
124+
migrations.AlterField(
125+
model_name='receiptmodel',
126+
name='receipt_type',
127+
field=models.CharField(
128+
choices=[
129+
('sales', 'Sales Receipt'),
130+
('customer_refund', 'Sales Refund'),
131+
('expense', 'Expense Receipt'),
132+
('expense_refund', 'Expense Refund'),
133+
('transfer', 'Transfer Receipt'),
134+
('debt_paydown', 'Debt Paydown Receipt'),
135+
],
136+
max_length=15,
137+
verbose_name='Receipt Type',
138+
),
139+
),
140+
migrations.AlterField(
141+
model_name='stagedtransactionmodel',
142+
name='receipt_type',
143+
field=models.CharField(
144+
blank=True,
145+
choices=[
146+
('sales', 'Sales Receipt'),
147+
('customer_refund', 'Sales Refund'),
148+
('expense', 'Expense Receipt'),
149+
('expense_refund', 'Expense Refund'),
150+
('transfer', 'Transfer Receipt'),
151+
('debt_paydown', 'Debt Paydown Receipt'),
152+
],
153+
help_text='The receipt type of the transaction.',
154+
max_length=20,
155+
null=True,
156+
verbose_name='Receipt Type',
157+
),
158+
),
159+
]

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ publish-url = "https://test.pypi.org/legacy/"
7878
explicit = true
7979

8080
[tool.ruff]
81-
line-length = 88
81+
line-length = 120
8282

8383
[tool.ruff.format]
8484
quote-style = "single"

0 commit comments

Comments
 (0)