Commit Graph

  • 403942dfc0 Added a missing semicolon in the saveOriginalEntry method of the JavaScript JournalEntryEditor class. imacat 2023-03-18 20:30:54 +08:00
  • 35dc513760 Revised the #initializeSummaryEditors method of the JavaScript JournalEntryEditor class to construct the SummaryEditor instances with the entry type instead of the form element. Replaced the form element with the entry type in the constructor of the SummaryEditor class. Removed the unused accounting-summary-editor class and data-entry-type attributes from the template of the summary editor. imacat 2023-03-18 19:44:15 +08:00
  • 01861f0b6a Merged the code in the #initializeAccountSelectors method into the constructor in the JavaScript JournalEntryEditor class. imacat 2023-03-18 19:38:04 +08:00
  • 8c10f1e96a Revised the ledger not to show the accumulated balance of the nominal accounts. The accumulated balance does not make sense for nominal accounts. imacat 2023-03-18 19:34:03 +08:00
  • 5f7fc0b8e8 Added the is_real pseudo property to the Account data model, and changed the is_nominal pseudo property to be the opposite of the is_real pseudo property. imacat 2023-03-18 19:33:41 +08:00
  • 700c179774 Applied the is_nominal pseudo property to the __get_brought_forward_entry method of the EntryCollector of the ledger. imacat 2023-03-18 19:21:33 +08:00
  • cabe02f7d0 Added the is_nominal pseudo property to the Account data model. imacat 2023-03-18 19:20:50 +08:00
  • 5ceb9f2e83 Fixed and renamed the "__query_currency_period" method of the AccountCollector of the balance sheet to "__query_current_period". imacat 2023-03-18 19:16:54 +08:00
  • fe1c7669b6 Added owner's equity accounts (base code starts with "3") when calculating the change of owner's equity in the specified period. imacat 2023-03-18 19:16:10 +08:00
  • 4eac10981f Added owner's equity (base code starts with "3") to the accounts that can take offset. imacat 2023-03-18 19:14:35 +08:00
  • c869bccc04 Reordered the methods of the Account data model. imacat 2023-03-18 19:06:12 +08:00
  • 61c111db69 Revised the journal, the ledger, the income and expenses log, and the search result to show the last page first as the default upon pagination. imacat 2023-03-18 19:00:56 +08:00
  • 34f63c1cdf Renamed the "isOriginalEntry", "is-original-entry", "is_original_entry", and "isOriginalEntry()" methods and properties of journal entries to "isNeedOffset", "is-need-offset", "is_need_offset", and "isNeedOffset()", to be clear and understandable. imacat 2023-03-18 18:55:31 +08:00
  • a643d9e811 Renamed the isAccountOffsetNeeded parameter to isAccountNeedOffset in the saveSummaryWithAccount method of the JournalEntryEditor class. imacat 2023-03-18 18:44:57 +08:00
  • 2239ddfad1 Revised the JavaScript to initialize the AccountSelector instances in JournalEntryEditor, so that the journal entry editor holds the AccountSelector instances. It can find the AccountSelector instance without needing to invoke its static methods. Removed the redundant static methods from the AccountSelector class. imacat 2023-03-18 18:41:04 +08:00
  • 12fbe36b9a Revised the JavaScript to initialize the SummaryEditor instances in JournalEntryEditor, so that the journal entry editor holds the SummaryEditor instances. It can find the SummaryEditor instance without needing to invoke its static methods. Removed the redundant static methods from the SummaryEditor class. imacat 2023-03-18 18:25:17 +08:00
  • 46e34bb89a Removed setting the redundant "entryType" dataset from the "onAddNew" and "onEdit" methods of the JournalEntryEditor class. It is not used anymore. imacat 2023-03-18 18:11:32 +08:00
  • c9453d3023 Removed the redundant "entryType" parameter from the static "start" method of JavaScript AccountSelector. imacat 2023-03-18 18:04:23 +08:00
  • fc766724c4 Removed the redundant "summary" parameter from the "#onOpen" and static "start" methods of JavaScript SummaryEditor. imacat 2023-03-18 18:00:54 +08:00
  • 38c394c0af Added the TransactionForm instance to the constructor of the JournalEntryEditor instance, so that the journal entry editor holds an instance of the transaction form, too. It does not need to find the transaction form all the way from the side property that may not be available. Retired the redundant getTransactionForm method from the JournalEntryEditor class. imacat 2023-03-18 17:52:37 +08:00
  • 67e2b06d37 Revised the JavaScript to initialize the JournalEntryEditor in TransactionForm, so that the transaction form holds the JournalEntryEditor instance. The DebitCreditSideSubForm and JournalEntrySubForm instances can find the JournalEntryEditor instance from the parent form, without needing to invoke its static methods. Removed the redundant static methods from the JournalEntryEditor class. imacat 2023-03-18 17:40:54 +08:00
  • be10a8d99e Revised the coding style with the JavaScript arrow functions for the transaction form. imacat 2023-03-18 17:15:51 +08:00
  • fbeec600b7 Replaced the long parameter list with the JournalEntryEditor instance in the save method of the JavaScript JournalEntrySubForm sub-form, to simplify the code. imacat 2023-03-18 14:56:26 +08:00
  • 1a54592d4c Added the amount attribute to the JavaScript JournalEntryEditor class to pass the amount to the JournalEntrySubForm without exposing the amount input element. imacat 2023-03-18 14:44:29 +08:00
  • 94a527caf2 Replaces the datasets with object attributes to store the column values in the JavaScript JournalEntryEditor class. imacat 2023-03-18 10:41:17 +08:00
  • 0a1bbbdd47 Replaced the isOriginalEntry dataset attribute with the isNeedOffset property in the JavaScript JournalEntryEditor. It does not make sense to store that information in the HTML. imacat 2023-03-18 09:47:57 +08:00
  • 82b63e4bd4 Revised the coding style in the JavaScript journal entry editor. imacat 2023-03-18 04:02:48 +08:00
  • e1d1aff0c1 Simplified the code in the #resetDeleteCurrencyButtons method of the JavaScript TransactionForm form. imacat 2023-03-18 03:55:55 +08:00
  • 2e5f9ee01f Simplified the text data in the TestData clas in testlib_offset.py. imacat 2023-03-18 03:41:51 +08:00
  • f901a0020f Revised the amount limitation tests in the OffsetTestCase test case, to be clear. imacat 2023-03-18 03:38:07 +08:00
  • fc2be75c3b Changed the type of the amount property in the testing JournalEntryData data model from string to Decimal. imacat 2023-03-18 03:21:47 +08:00
  • 96c131940b Revised the date limitation tests in the OffsetTestCase test case, to be clear. imacat 2023-03-18 03:08:08 +08:00
  • b9435a255b Added the "/.errors" route to the application in the "create_test_app" function in testlib.py, to make it easier to test. imacat 2023-03-18 02:59:28 +08:00
  • 56045f0faf Removed the unused __entry pseudo property from the JournalEntryForm form. imacat 2023-03-17 22:52:38 +08:00
  • 08d1e60238 Fixed the journal, the ledger, the income ane expenses log, and the search result to respect the transaction number before the debit/credit and the journal entry nuber. imacat 2023-03-17 22:39:29 +08:00
  • d88b3ac770 Added to track the net balance and offset of the original entries. imacat 2023-03-17 22:32:01 +08:00
  • 40e329d37f Reordered the validators in the "accounting.transaction.forms.journal_entry" module. imacat 2023-03-16 20:42:32 +08:00
  • 23a0721d8d Added assert in the be function in the "accounting.utils.cast" module, to insure the correctness of the expression received. imacat 2023-03-15 23:23:01 +08:00
  • 2b2c665eb6 Replaced the if checks with assert in the IsBalanced validator of the currency sub-form of the transaction form, the NoOffsetNominalAccount validator of the account form, and the CodeUnique validator of the currency form. imacat 2023-03-15 22:25:24 +08:00
  • 954173a2c2 Removed the unused list-group-item-success class from style.css. imacat 2023-03-15 01:20:43 +08:00
  • 91e6dc6668 Removed an excess tailing blank line from the "accounting.currency.views" module. imacat 2023-03-15 01:06:53 +08:00
  • e9d8a8fcd8 Added the "accounting.utils.cast" module to cast the things to the expected type in order to supress the warnings from PyCharm. imacat 2023-03-15 01:06:15 +08:00
  • 4c84686395 Removed an unused import from the "accounting" module. imacat 2023-03-15 00:51:56 +08:00
  • 61fd1849ed Removed the annotation future import from the "accounting.transaction.utils.account_option", "accounting.transaction.forms.journal_entry", and "accounting.transaction.forms.reorder" modules. imacat 2023-03-14 21:51:19 +08:00
  • a67158f8f6 Moved the CodeUnique validator from an inner class of the CurrencyForm form to an independent class, and removed the annotation future import from the "accounting.currency.forms" module. imacat 2023-03-14 21:48:11 +08:00
  • 5c6bfd8b49 Revised the coding style of the NeedSomeCurrencies validator. imacat 2023-03-14 21:42:02 +08:00
  • d9ecf51c6d Added the "create_test_app" function in testlib.py to replace "create_app" to prevent common mistakes. Added a get_csrf_token_view route to the application, and changed the get_csrf_token function to retrieve the CSRF token with the route without parsing the HTML for the CSRF token. imacat 2023-03-14 21:28:35 +08:00
  • 5d31eb9172 Removed the unnecessary future annotation import from the "accounting.transaction.forms.transaction" module. imacat 2023-03-14 20:44:06 +08:00
  • fadce244c5 Revised the type hint and the coding style of the NeedSomeCurrencies validator. imacat 2023-03-14 20:43:28 +08:00
  • cbe7c6ca6d Added dummy.js to .gitignore and MANIFEST.in for exclusion. imacat 2023-03-14 09:11:35 +08:00
  • b03938fb2e Added test_temp.py to the exclusion in MANIFEST.in. imacat 2023-03-14 08:48:40 +08:00
  • 8061a23fdc Renamed the AbstractUserUtils class to UserUtilityInterface, and added the can_view and can_edit functions to the UserUtilityInterface interface. There is no need to separately supply two additional can_view and can_edit callbacks. imacat 2023-03-14 08:16:32 +08:00
  • cd8a480cd0 Revised the documentation of the AbstractUserUtils class. imacat 2023-03-14 07:59:37 +08:00
  • b8b87714eb Revised the documentation of the JavaScript summary editor. imacat 2023-03-14 01:17:54 +08:00
  • bf2f96621d Revised so that when the account selector finds the codes from the form, the journal entry editor is used to find the form instead of messing-up with the TransactionForm class and its static method that was a shortcut to the private instance method of the same name. imacat 2023-03-13 23:18:52 +08:00
  • 2d771f04be Fixed so that saving the journal entry from the journal entry editor triggers updating the total of the debit or credit side, which in turn triggers validating the balance if it is on a transfer form. This fixed the problem that deleting a journal entry updates total but not re-validating the balance. imacat 2023-03-13 22:53:10 +08:00
  • 3a12472d4b Fixed the indent in the template of the account selector. imacat 2023-03-13 21:39:05 +08:00
  • d5a686a5d8 Removed trailing blank spaces from the JavaScript summary editor. imacat 2023-03-13 21:14:16 +08:00
  • 690f89e29a Removed the unused accounting-debit-account-code and accounting-credit-account-code HTML classes. imacat 2023-03-13 21:06:23 +08:00
  • 82a6a53dc4 Revised the account selector to find the account codes from the form through the TransactionForm class, but not finding the codes by itself. imacat 2023-03-13 21:04:39 +08:00
  • cdd31b1047 Added the missing documentation to the static initialize method of JavaScript TransactionForm class. imacat 2023-03-13 20:49:33 +08:00
  • 5bad949cfa Fixed the documentation of the entryType parameter in the constructor of the JavaScript DebitCreditSideSubForm sub-form. imacat 2023-03-13 20:47:03 +08:00
  • 3826646d06 Reordered the journal entry editor and put the summary first and the account later. imacat 2023-03-13 20:08:47 +08:00
  • 74071e8997 Removed the unused static validateAccount method from the JavaScript journal entry editor. imacat 2023-03-13 20:04:55 +08:00
  • 3ce34803f3 Moved the journal entry editor from the transaction-form.js to a new independent JavaScript file journal-entry-editor.js. imacat 2023-03-13 20:00:58 +08:00
  • 232f73172f Removed the prefix from the journal entry sub-form. imacat 2023-03-13 19:57:07 +08:00
  • ff1bb7142b Removed the unused data-prefix attribute from the currency sub-forms of the transaction form. imacat 2023-03-13 19:52:04 +08:00
  • 7155bf635a Removed the data-entry-type attribute from the journal entry editor form. The entry type is passed by the object. There is no need to store this information in the HTML anymore. imacat 2023-03-13 19:49:43 +08:00
  • c306ff8009 Revised the JavaScript journal entry editor and account selector so that the account selector work with the journal entry editor and does not get into the detail of the journal entry editor. imacat 2023-03-13 19:47:29 +08:00
  • b344abce06 Added the #prefix property to the journal entry editor to simplify the consistency. imacat 2023-03-13 18:40:15 +08:00
  • b3c666c872 Fixed the addJournalEntry method of the DebitCreditSideSubForm sub-form to re-validate the whole side after a new journal entry is added. imacat 2023-03-13 18:36:11 +08:00
  • 6a671cac84 Revised the JavaScript journal entry editor and summary editor so that the summary editor work with the journal entry editor and does not get into the detail of the journal entry editor. imacat 2023-03-13 18:34:17 +08:00
  • fe87c3a7de Fixed the documentation of the #side property of the JavaScript JournalEntryEditor class. imacat 2023-03-13 17:54:56 +08:00
  • 2013f8cbd9 Removed the initializeNewJournalEntry method from the JavaScript SummaryEditor. It does not do meaningful things at all. imacat 2023-03-13 17:51:51 +08:00
  • 2325842471 Fixed the documentation of the JavaScript for the transaction form. imacat 2023-03-13 17:43:24 +08:00
  • c80e58b049 Renamed the journal entry form to journal entry editor, to be clear. imacat 2023-03-13 17:26:29 +08:00
  • be0ae5eba4 Replaced the function-based JavaScript with the object-oriented TransactionForm, CurrencySubForm, DebitCreditSideSubForm, JournalEntrySubForm, and JournalEntryForm classes for the transaction form. imacat 2023-03-13 17:17:01 +08:00
  • 2b84f64554 Replaced the function-based JavaScript with the object-oriented AccountForm class for the currency form. imacat 2023-03-12 21:40:25 +08:00
  • 0a658a76e8 Replaced the function-based JavaScript with the object-oriented AccountForm class for the account form. imacat 2023-03-12 18:01:11 +08:00
  • 50dc79d865 Added the missing is-invalid class on errors to the currency field in the currency sub-forms of the transaction form. imacat 2023-03-12 16:50:23 +08:00
  • 8e5377a416 Replaced the payable account with the petty-cash account in the SummeryEditorTestCase test case. imacat 2023-03-12 01:33:35 +08:00
  • 4299fd6fbd Revised the code in the JavaScript initializeBaseAccountSelector function in the account form. imacat 2023-03-11 23:36:07 +08:00
  • 1d6a53f7cd Revised the account form so that the if-offset-needed option is only available for real accounts. imacat 2023-03-11 23:31:09 +08:00
  • bb2993b0c0 Reordered the code in the "accounting.transaction.forms.journal_entry" module. imacat 2023-03-11 20:35:50 +08:00
  • f6946c1165 Revised the IsBalanced validator so that it no longer need the __future__ annotation. imacat 2023-03-11 19:08:10 +08:00
  • 8e219d8006 Fixed the type hint of the form parameter in the NeedSomeJournalEntries validator. imacat 2023-03-11 19:07:43 +08:00
  • 53565eb9e6 Changed the IsBalanced validator from an inner class inside the TransferCurrencyForm form to an independent class. imacat 2023-03-11 19:07:12 +08:00
  • 965e78d8ad Revised the rule for the accounts that need offset in the accounting-init-accounts console command. imacat 2023-03-11 16:58:22 +08:00
  • 74b81d3e23 Renamed the offset_original_id column to original_entry_id, and the offset_original relationship to original_entry in the JournalEntry data model. imacat 2023-03-11 12:40:51 +08:00
  • a0fba6387f Added the order to the search report. imacat 2023-03-11 01:01:05 +08:00
  • d28bdf2064 Revised the parameter order in the template of the currency sub-form of the transaction form. imacat 2023-03-10 16:44:44 +08:00
  • edf0c00e34 Shortened the names of the #filterAccountOptions, #getAccountCodeUsedInForm, and #shouldAccountOptionShow methods to #filterOptions, #getCodesUsedInForm, and #shouldOptionShow, respectively, in the JavaScript AccountSelector class. imacat 2023-03-10 14:03:38 +08:00
  • 107d161379 Removed a debug output from the JavaScript AccountSelector class. imacat 2023-03-10 14:01:06 +08:00
  • f2c184f769 Rewrote the JavaScript AccountSelector to store the page elements in the object. imacat 2023-03-10 12:51:37 +08:00
  • b45986ecfc Fixed the parameter type for the JavaScript AccountSelector class. imacat 2023-03-10 12:03:06 +08:00
  • a2c2452ec5 Added a missing blank line to the JavaScript AccountSelector class. imacat 2023-03-10 12:00:53 +08:00
  • 5194258b48 Removed the redundant #init method from the JavaScript AccountSelector class. imacat 2023-03-10 12:00:33 +08:00
  • 3fe7eb41ac Removed the unused "__in_use_account_id" property from the TransactionForm form. imacat 2023-03-10 09:17:55 +08:00
  • 7fb9e2f0a1 Added missing documentation to the OptionLink data model in the "accounting.report.utils.option_link" module. imacat 2023-03-10 09:16:32 +08:00
  • 1d443f7b76 Renamed the "accounting.transaction.form" module to "accounting.transaction.forms". It only contains forms now. imacat 2023-03-10 09:13:47 +08:00