Commit Graph

389 Commits

Author SHA1 Message Date
5dc8387ad9 Fixed the incorrect account in the __add_current_period method of the AccountCollector class in the "accounting.report.reports.balance_sheet" module. 2023-03-09 14:36:16 +08:00
26b70bb625 Fixed the logic for all-time in the period_spec function in the "accounting.report.reports.utils.csv_export" module. 2023-03-09 14:36:15 +08:00
f30a96d7e9 Simplified the logic in the period_spec method in the "accounting.report.reports.utils.csv_export" module. 2023-03-09 14:36:15 +08:00
a1627b7fbf Revised to use a simpler way to run the class methods in the __get_desc method of the Period utility, to prevent confusion with SonarQube. 2023-03-09 14:36:14 +08:00
7c3b8c8f44 Revised to store the newly-constructed period chooser and month chooser in variables to prevent SonarQube from complaining. 2023-03-09 14:36:13 +08:00
b19f4fa939 Added "use strict"; to all the JavaScript files. 2023-03-09 14:36:13 +08:00
41c3e06ce4 Removed the period chooser JavaScript from the search result page. 2023-03-09 14:36:12 +08:00
8a3df7a689 Revised the search report to match the amount when the query keyword is a number, instead of matching the amount as a text string. For example, "0150.00" matches 150, while "50" does not match 150. 2023-03-09 14:36:11 +08:00
196a115c99 Revised the coding style in the __get_transaction_condition method of the Search report. 2023-03-09 14:36:11 +08:00
005f9083aa Revised the constructor of the IncomeExpensesAccount pseudo account. 2023-03-09 14:36:10 +08:00
12dbae56c4 Revised the f-strings in the "accounting.models" module. 2023-03-09 14:36:10 +08:00
a98723c57b Removed an unused import from the "accounting.utils.pagination" module. 2023-03-09 14:36:10 +08:00
d5bd3b8383 Fixed an HTML error in the template of the trial balance. 2023-03-09 14:36:09 +08:00
617dd29f23 Added the period_spec function to be used to compose the download file name, to replace the spec property of the Period utility. 2023-03-09 14:36:08 +08:00
b0a4a735f3 Added the is_a_month property to the Period utility. 2023-03-09 14:36:08 +08:00
41770e38b8 Updated the translation. 2023-03-09 14:36:08 +08:00
d8a6614543 Fixed the text for the account used in the titles of the ledger and the income and expenses log. 2023-03-09 14:36:07 +08:00
8d76b5130e Fixed the localization function used in the titles of the reports. 2023-03-09 14:36:07 +08:00
43fc4b9b8d Renamed "total revenue" to "total operating revenue". 2023-03-09 14:36:07 +08:00
3ed8d7f1d2 Removed the now-unused table-row-link.js. It is replaced by the grid display. 2023-03-09 14:36:06 +08:00
ea7c194d7e Revised the period-chooser.html template to simplify the code to include it. 2023-03-09 14:36:06 +08:00
041a905fc0 Added font-awesome icons to the report chooser. 2023-03-09 14:36:05 +08:00
10d1be8bd1 Added the action-buttons.html template and retired the report-chooser.html and currency-chooser.html templates, as the template for the common action buttons. 2023-03-09 14:36:03 +08:00
6e1d35eda4 Revised the report-chooser.html template to simplify the reports. 2023-03-09 14:36:03 +08:00
52b5151fe0 Added the currency-chooser.html template to simplify the templates of the report. 2023-03-09 14:36:02 +08:00
f9fc033de6 Removed the unused RECEIVABLE, PAYABLE, and BROUGHT_FORWARD constants and the unused receivable(), payable(), brought_forward(), and net_change() shortcut methods from the Account data model. 2023-03-09 14:36:02 +08:00
116d00a557 Replaced the hard-coded cash account codes with the ACCUMULATED_CHANGE and NET_CHANGE constants and the accumulated_change() method of the Account data model. 2023-03-09 14:36:01 +08:00
329e3d5362 Replaced the hard-coded cash account codes with the CASH constant and the cash() method of the Account data model. 2023-03-09 14:36:00 +08:00
47e8944f06 Changed the constants of the common account codes in the Account data model from private to public. 2023-03-09 14:36:00 +08:00
e7c43ae390 Revised the documentation to use the term "income and expenses log" instead of "income and expenses", for consistency. 2023-03-09 14:36:00 +08:00
b8b51b34d3 Added the income-expenses-row-desktop.html and ledger-row-desktop.html templates to simplify templates of the income and expenses log and ledger. 2023-03-09 14:36:00 +08:00
d083036719 Renamed the income-expenses-mobile-row.html and ledger-mobile-row.html templates to income-expenses-row-mobile.html and ledger-row-mobile.html, respectively. 2023-03-09 14:35:59 +08:00
7fe81c710b Added the balance-sheet-section.html template to simplify the template of balance sheet. 2023-03-09 14:35:59 +08:00
9993f65627 Added the search to the accounting data. 2023-03-09 06:37:31 +08:00
fe01d5418d Fixed to limit the width of the search box in the currency list, base account list, account list, and transaction list. 2023-03-09 06:37:31 +08:00
2f7b9932a0 Added the base report class to ensure that the reports can both be shown on the page and downloaded as CSV. 2023-03-09 06:37:28 +08:00
1eed16b732 Added the pseudo account for the income and expenses log to query the income and expenses log of the current assets and liabilities. 2023-03-09 06:37:28 +08:00
ede1160943 Fixed the ledger and the income and expenses log not to show the total entry when there is actually no data. 2023-03-09 06:37:27 +08:00
3814f0cb18 Added the missing accounting_format_amount filter to the total of the ledger. 2023-03-09 06:37:27 +08:00
24315b8203 Fixed the styles of the negative numbers in the reports with red and braced absolute values. 2023-03-09 06:37:26 +08:00
3c200d0dc6 Fixed the sign of the amount in income statement. 2023-03-09 06:37:26 +08:00
9f1e724875 Added the "accounting.report.reports.csv_export" module to handle the CSV export in one place. 2023-03-09 06:37:26 +08:00
f838e7f893 Moved the utilities that are only for the report generators from the "accounting.report" module to the "accounting.report.reports.utils" module. 2023-03-09 06:37:25 +08:00
edb893ecd3 Replaced the report generators with a separated module for each report, to work with the diversity of the report formats without messing-up one another. 2023-03-09 06:37:23 +08:00
436a4c367f Added the balance sheet. 2023-03-09 06:37:22 +08:00
1813ce0cfa Removed the unused and empty __get_category method from the IncomeStatement report. 2023-03-09 06:37:22 +08:00
7683347997 Removed a non-existing parameter from the documentation of the constructor of the IncomeStatementParams class. 2023-03-09 06:37:22 +08:00
46ffc7a73d Changed the display style of the rows in the income statement from grid to flex, to simplify the layout. 2023-03-09 06:37:21 +08:00
e0a807d625 Fixed the style of the indent and total line of the income statement. 2023-03-09 06:37:20 +08:00
dffcf6d2ce Removed the unused is_account pseudo property in the IncomeStatementRow row. 2023-03-09 06:37:19 +08:00
84d239e4b1 Added the income statement. 2023-03-09 06:37:19 +08:00
fcefc64117 Removed an excess closing </div> in the template of the trial balance. 2023-03-09 06:37:18 +08:00
81fbb380b4 Renamed the variable select_trial_balance to select_balances in the __query_balances method of the TrialBalance report. 2023-03-09 06:37:17 +08:00
d7ac8a3dcf Fixed the documentation of the TrialBalanceRow class. 2023-03-09 06:37:17 +08:00
bcd3418e2c Fixed the documentation in the constructor of the trail balance. 2023-03-09 06:37:16 +08:00
ef9e5cb5b3 Split the report parameters from the report class so that it works better with both CSV export and HTML templates. 2023-03-09 06:37:16 +08:00
e797cfeb8c Simplified the logic to test the total row in the ledger and income and expenses. 2023-03-09 06:37:16 +08:00
22bae7f766 Replaced the <ul></ul> list with CSS "display: grid" for the trial balance, to allow using <a></a> as the table row. 2023-03-09 06:37:15 +08:00
aa669e9f53 Replaced tables with CSS "display: grid" for the journal, ledger, and income and expenses, to allow using <a></a> as the table row. 2023-03-09 06:37:14 +08:00
898a1af7b5 Revised the separation lines in the table headers and footers of the ledger tables. 2023-03-09 06:37:13 +08:00
f762bcf48f Replaced the duplicated "accounting-transaction-card" and "accounting-report-card" CSS classes with the "accounting-sheet" class, for simplicity. 2023-03-09 06:37:12 +08:00
5d4effa360 Added the "debit" and "credit" properties to, and removed the "is_debit" property from the JournalRow row, to reduce the amount of logic in the template of the journal. 2023-03-09 06:37:11 +08:00
dd05478bf3 Simplified the syntax to retrieve query arguments in the templates, and reduced the amount of logic in the templates. 2023-03-09 06:37:11 +08:00
9450915404 Added the "default" filter to reduce the amount of logic in the templates, which differs from the Jinja2 "default" filter in that it looks for None instead of undefined values. 2023-03-09 06:37:10 +08:00
8d126e183f Changed the date field of the transaction forms to set the default value in the view, but not the form, so that the default value is not set when it did not receive a value. 2023-03-09 06:37:10 +08:00
bfb08cf5fc Changed the format_amount_input filter to accept None, and return an empty string if the value is None. 2023-03-09 06:37:09 +08:00
a7bcf4b5c1 Changed the format_amount template filter to return None when the value is None. 2023-03-09 06:37:08 +08:00
cd49ca44b1 Fixed to avoid getting the income and expenses with accounts that are not current assets and liabilities when switching from the ledger. 2023-03-09 06:37:07 +08:00
734362396f Adding the missing currency when constructing the report chooser in the trial balance. 2023-03-09 06:37:06 +08:00
88147bea66 Revised the currency in the titles and options of the ledger, income and expenses, and trial balance. 2023-03-09 06:37:05 +08:00
cca43c68a6 Added trial balance. 2023-03-09 06:37:05 +08:00
480e2d2d8f Simplified the invocation of the super class constructor in the subclasses of Period. 2023-03-09 06:37:05 +08:00
be100ce7ec Simplified the constructors of the period choosers. 2023-03-09 06:37:04 +08:00
eca91d32ed Fixed the documentation of the IncomeExpensesPeriodChooser class. 2023-03-09 06:37:04 +08:00
1f95212494 Revised to use the title case in the CSV output of the journal and income and expenses. 2023-03-09 06:37:03 +08:00
0173104c84 Revised the currency field in the CSV output of the journal. 2023-03-09 06:37:03 +08:00
6e33fa775d Revised the __query_entries method of the IncomeExpenses report to be clear. 2023-03-09 06:37:02 +08:00
e244ff70e6 Simplified the SQL query in the currency_options and account_options pseudo properties in the Ledger report and the account_options pseudo property in the IncomeExpenses report. 2023-03-09 06:37:01 +08:00
ace782a26b Replaced "sa.select" with "sa.Select" in the account_options pseudo property of the IncomeExpenses report. 2023-03-09 06:37:01 +08:00
90289a0db2 Fixed the account options to list only the current assets and liabilities for the income and expenses. 2023-03-09 06:37:01 +08:00
7e7e1a2844 Revised so that the amounts won't wrap in the income and expenses. 2023-03-09 06:37:01 +08:00
ddd028736c Revised the balance in the mobile view of the income and expenses. 2023-03-09 06:37:01 +08:00
e1d35a64da Revised the account shown in the journal. 2023-03-09 06:37:01 +08:00
39807ef480 Added the income and expenses. 2023-03-09 06:37:00 +08:00
39723b1299 Removed the lazy setting from the account relationship of the JournalEntry data model. It results in problems in the income and expense report. 2023-03-09 06:36:25 +08:00
8cd004bede Revised the documentation of the ledger. 2023-03-05 18:16:43 +08:00
4f112dd386 Revised the documentation of the report row classes. 2023-03-05 18:14:32 +08:00
b806b1ed1f Added note to the CSV output of ledgers. 2023-03-05 17:55:47 +08:00
1d0a79e33c Changed the CSV field name to be title-cased. 2023-03-05 17:55:47 +08:00
d4a690ebbc Removed the text of the action buttons of currency and account filters for the small screens, to fit in the screen. 2023-03-05 17:55:46 +08:00
68687897f3 Changed the icons for the reports and accounts to be more accessible. 2023-03-05 17:55:46 +08:00
a7250fd9bf Replaced transactions with reports in the navigation menu. 2023-03-05 17:55:46 +08:00
eabe80b790 Added ledger. 2023-03-05 17:55:38 +08:00
fe77f87110 Fixed a regular expression in the _parse_period_spec function of the period utility. 2023-03-05 14:24:51 +08:00
32c27d7c07 Fixed an error finding the end of month in the __get_month_spec method of the Period utility. 2023-03-05 12:06:16 +08:00
14b871b57a Fixed the format_amount filter to deal with negative numbers with decimals correctly. 2023-03-05 11:48:34 +08:00
9d5fce2752 Fixed the documentation of the Journal report. 2023-03-04 20:14:08 +08:00
d333151731 Revised the documentation of the __get_journal_list view. 2023-03-04 20:12:13 +08:00
b2e500a714 Fixed the documentation of the get_default_journal_list view. 2023-03-04 20:10:59 +08:00
b705795b44 Moved the ReportType enumeration from the "accounting.report.report_chooser" module to the new "accounting.report.report_type" module. 2023-03-04 19:56:07 +08:00
250f4ff1ae Revised the imports in the "accounting.report.reports" module 2023-03-04 19:52:45 +08:00
6bed180790 Renamed the TransactionTypeEnum enum to TransactionType. 2023-03-04 19:39:13 +08:00
10fbc3f638 Renamed the "accounting.transaction.dispatcher" module to "accounting.transaction.operators". 2023-03-04 19:36:53 +08:00
f65dc6fc42 Renamed the TransactionType class to TransactionOperator. 2023-03-04 19:36:07 +08:00
9833bac6e4 Added the TransactionTypeEnum in the new "accounting.utils.txn_types" module to remove the dependency from the "accounting.report" module to the "accounting.transaction" module. 2023-03-04 19:32:36 +08:00
7d412b20d7 Moved the material floating action button template to add new transactions from the "accounting/transaction/include" directory to the "accounting/include" directory, and renamed it from add-new-material-fab.html to add-txn-material-fab.htm, as it will also be used in the reports, not only the transaction management. 2023-03-04 18:40:00 +08:00
9bfcd3c50c Added the journal report as the first accounting report. 2023-03-04 18:31:33 +08:00
710c26d016 Fixed the documentation in the JavaScript SummeryHelper class. 2023-03-04 13:45:30 +08:00
24415018b7 Reordered the properties in the JavaScript SummeryHelper class. 2023-03-04 13:45:29 +08:00
c50b9a2000 Removed the unused tab and page classes from the templates of the summary editor. 2023-03-04 11:52:45 +08:00
af9bd14eed Removed the unused tab ID from the template of the summary editor. 2023-03-04 11:52:45 +08:00
9e1ff16e96 Fixed the aria-labelledby in the template of the summary editor. 2023-03-04 11:52:45 +08:00
f7c1fd77f2 Added blank lines and documentation to the template of the summary editor. 2023-03-04 11:52:45 +08:00
641315537d Replaced the traditional function expressions with ES6 arrow function expressions in the JavaScript for the transaction order, account order, currency form, and the speed dial for the material floating action buttons. 2023-03-04 11:52:45 +08:00
a895bd8560 Replaced the traditional function expressions with ES6 arrow function expressions in the JavaScript for the drop-and-drop reorder. 2023-03-04 11:52:44 +08:00
ca86a08f3e Replaced the traditional function expressions with ES6 arrow function expressions in the JavaScript for the account form. 2023-03-04 11:52:44 +08:00
e118422441 Replaced the traditional function expressions with ES6 arrow function expressions in the JavaScript for the account selector. 2023-03-04 11:52:44 +08:00
b3777cffbf Replaced the traditional function expressions with ES6 arrow function expressions in the JavaScript for the transaction form. 2023-03-04 11:52:44 +08:00
39c9c17007 Replaced the traditional function expressions with ES6 arrow function expressions in the JavaScript for the summary editor to avoid messing up with the "this" object. 2023-03-04 11:52:44 +08:00
3ab4eacf9f Moved the "accounting.transaction.template_globals" module to "accounting.template_globals", for the two template globals will be used in the reports beside the transaction management. 2023-03-04 07:06:03 +08:00
cff3d1b6bd Revised the code order in the init_app function in the "accounting" module. 2023-03-04 07:01:03 +08:00
f41db78831 Revised the summary helper so that when the summary is changed with the tag changed, the on-change callback is run to check the tag button status. 2023-03-04 07:01:03 +08:00
73f7d14e7b Fixed so that the values of the input fields are trimmed before composing the summary when they are changed. 2023-03-04 07:01:03 +08:00
f6ed6b10a7 Revised the summary editor to allow the "*" start character as the multiplication operation in addition to the "×" times character. 2023-03-04 07:01:03 +08:00
b5aaee4d15 Renamed the "number" tab plane to "annotation". 2023-03-04 07:01:03 +08:00
c849d6b3d4 Revised the numer tab plane in the summary editor. 2023-03-04 07:01:03 +08:00
a9908a7df4 Simplified the regular expression in the populate method of the GeneralTagTab class in the summary editor. 2023-03-04 07:01:02 +08:00
063c769158 Renamed the variables in the summary editor. 2023-03-04 07:01:02 +08:00
f8e9871300 Fixed to trim the summary when it is changed in the summary editor. 2023-03-04 07:01:02 +08:00
78a62a9575 Added a "note" field to the summary editor. 2023-03-04 07:01:02 +08:00
85fde6219e Fixed an HTML ID in the summary editor modal. 2023-03-04 07:01:02 +08:00
4eb9346d8d Renamed summary helper to summary editor. 2023-03-04 07:00:46 +08:00
11966a52ba Fixed a variable name in the #initializeAccountQuery method of the JavaScript AccountSelector class. 2023-03-04 06:57:35 +08:00
8cf81b5459 Revised the documentation of the "accounting.account.queries", "accounting.base_account.queries", "accounting.currency.queries", and "accounting.transaction.queries" modules. 2023-03-04 06:57:35 +08:00
cc958a39b3 Moved the format_amount and format_date template filters from the "accounting.transaction.template_filters" module to the "accounting.template_filters" module, and rename the filters from "accounting_txn_format_amount" and "accounting_txn_format_date" to "accounting_format_amount" and "accounting_format_date", respectively. They will not only be used in the transaction management, but also the reports. 2023-03-04 06:57:10 +08:00
9065686cc5 Split the "accounting.transaction.template" module into the "accounting.transaction.template_filters" and "accounting.transaction.template_globals" modules. 2023-03-03 18:28:59 +08:00
9a41cb10a1 Rewrote the summary helper, added the TabPlane classes so that the internal states of the summary helper is stored in the tab plane objects instead of passing the as parameters and variables. 2023-03-03 18:09:36 +08:00
6957e52d0d Renamed the "accounting.account.query", "accounting.base_account.query", "accounting.currency.query", and "accounting.transaction.query" modules to "accounting.account.queries", "accounting.base_account.queries", "accounting.currency.queries", and "accounting.transaction.queries", respectively. There will be more than one query in the next report module. 2023-03-03 01:12:36 +08:00
b2bc993416 Replaced the #populate method with the #parseAndPopulate method that is used both when starting the summary helper and when the summary input is updated. 2023-03-01 01:45:38 +08:00
453b3f0da5 Renamed the #tagInputOnChange method to #onTagInputChange in the JavaScript summary helper. 2023-03-01 01:31:25 +08:00
63ae3f0746 Replace the is_in_use pseudo property of the Account data model with the AccountOption class, and revised the #getAccountCodeUsedInForm method of the SummaryHelper, to solve the issue that the list of used accounts should be different for debit and credit entries. 2023-03-01 01:28:25 +08:00
da4cc6489f Removed the direction arrows from the tab navigation in the summary helper. 2023-03-01 00:59:40 +08:00
1102a3a4f3 Updated the translation. 2023-03-01 00:51:58 +08:00
14ed4ca354 Added the #initializeTagButtons and #tagInputOnChange methods to the JavaScript SummaryHelper to simplify the code. 2023-03-01 00:51:24 +08:00
535ff96ab3 Revised the JavaScript regular expressions used in the summary helper, as suggested by SonarQube for security. 2023-03-01 00:51:24 +08:00
57482f81fc Revised the transaction form to start a new journal entry with the journal entry form instead of the summary helper, because it feels strange when the user want to leave the summary empty. 2023-03-01 00:51:24 +08:00
a31ce3c400 Replaced the function-based JavaScript account selector with the AccountSelector class that does things better. 2023-03-01 00:51:11 +08:00
319f0aed90 Fixed a documentation in the JavaScript summary helper. 2023-02-28 22:54:20 +08:00
826dcf0f86 Revised the documentation of the JavaScript for the summary helper. 2023-02-28 22:47:04 +08:00
731acdced0 Revised the HTML in the summary helper template. 2023-02-28 22:41:56 +08:00