shutro-erp 0.3.6 → 0.3.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/account_asset/.kosh/bindings.js +1 -1
- package/dist/account_asset/.kosh/schema.d.ts +530 -8
- package/dist/account_asset/i18n/bn.d.ts +2 -0
- package/dist/account_asset/i18n/bn.js +97 -0
- package/dist/account_asset/index.js +2 -0
- package/dist/account_asset/module.d.ts +4899 -1445
- package/dist/account_budget/.kosh/bindings.js +1 -1
- package/dist/account_budget/.kosh/schema.d.ts +1130 -56
- package/dist/account_budget/i18n/bn.d.ts +2 -0
- package/dist/account_budget/i18n/bn.js +63 -0
- package/dist/account_budget/index.js +14 -0
- package/dist/account_budget/module.d.ts +17958 -4532
- package/dist/account_budget/module.js +15 -0
- package/dist/account_portal/.kosh/bindings.js +1 -1
- package/dist/account_portal/.kosh/schema.d.ts +530 -8
- package/dist/account_portal/i18n/bn.d.ts +2 -0
- package/dist/account_portal/i18n/bn.js +6 -0
- package/dist/account_portal/index.js +2 -0
- package/dist/account_portal/module.d.ts +5167 -1693
- package/dist/accounting/.kosh/bindings.js +1 -1
- package/dist/accounting/.kosh/schema.d.ts +530 -8
- package/dist/accounting/closing.js +1 -0
- package/dist/accounting/fiscal.d.ts +578 -0
- package/dist/accounting/fiscal.js +401 -0
- package/dist/accounting/followups.d.ts +618 -0
- package/dist/accounting/followups.js +420 -0
- package/dist/accounting/i18n/bn.d.ts +2 -0
- package/dist/accounting/i18n/bn.js +425 -0
- package/dist/accounting/index.d.ts +2 -0
- package/dist/accounting/index.js +649 -2
- package/dist/accounting/module.d.ts +4998 -1451
- package/dist/accounting/module.js +124 -18
- package/dist/accounting/statements.d.ts +878 -0
- package/dist/accounting/statements.js +728 -0
- package/dist/accounting/web/BankReconcilePage.d.ts +9 -0
- package/dist/accounting/web/BankReconcilePage.js +138 -0
- package/dist/accounting/web/FollowupsPage.d.ts +8 -0
- package/dist/accounting/web/FollowupsPage.js +54 -0
- package/dist/accounting/web/PostingPreview.d.ts +8 -0
- package/dist/accounting/web/PostingPreview.js +26 -0
- package/dist/accounting/web/index.d.ts +3 -0
- package/dist/accounting/web/index.js +9 -0
- package/dist/accounting/web/messages.js +140 -0
- package/dist/approvals/.kosh/bindings.js +1 -1
- package/dist/approvals/.kosh/schema.d.ts +272 -4
- package/dist/approvals/demo.d.ts +7 -0
- package/dist/approvals/demo.js +41 -0
- package/dist/approvals/i18n/bn.d.ts +2 -0
- package/dist/approvals/i18n/bn.js +133 -0
- package/dist/approvals/index.d.ts +19 -1
- package/dist/approvals/index.js +477 -7
- package/dist/approvals/mails.d.ts +7 -2
- package/dist/approvals/mails.js +8 -3
- package/dist/approvals/module.d.ts +2930 -1
- package/dist/approvals/module.js +468 -7
- package/dist/approvals/web/Config.d.ts +12 -0
- package/dist/approvals/web/Config.js +60 -0
- package/dist/approvals/web/Matrix.d.ts +9 -0
- package/dist/approvals/web/Matrix.js +26 -0
- package/dist/approvals/web/index.d.ts +3 -1
- package/dist/approvals/web/index.js +8 -1
- package/dist/approvals/web/messages.js +92 -0
- package/dist/approvals_purchase/.kosh/bindings.js +15 -0
- package/dist/approvals_purchase/.kosh/schema.d.ts +1997 -0
- package/dist/approvals_purchase/i18n/bn.d.ts +2 -0
- package/dist/approvals_purchase/i18n/bn.js +5 -0
- package/dist/approvals_purchase/index.d.ts +3 -0
- package/dist/approvals_purchase/index.js +47 -0
- package/dist/approvals_purchase/module.d.ts +12670 -0
- package/dist/approvals_purchase/module.js +84 -0
- package/dist/attendance/.kosh/bindings.js +1 -1
- package/dist/attendance/.kosh/schema.d.ts +59 -1
- package/dist/attendance/i18n/bn.d.ts +2 -0
- package/dist/attendance/i18n/bn.js +147 -0
- package/dist/attendance/index.js +3 -1
- package/dist/attendance/module.d.ts +452 -8
- package/dist/automation/engine.js +1 -1
- package/dist/calendar/.kosh/bindings.js +1 -1
- package/dist/calendar/.kosh/schema.d.ts +2 -1
- package/dist/calendar/i18n/bn.d.ts +2 -0
- package/dist/calendar/i18n/bn.js +80 -0
- package/dist/calendar/index.js +77 -0
- package/dist/calendar/module.d.ts +26 -0
- package/dist/calendar/module.js +14 -4
- package/dist/cli/apps.js +25 -5
- package/dist/cli/init.js +14 -4
- package/dist/cli/templates.d.ts +1 -1
- package/dist/cli/templates.js +34 -5
- package/dist/contacts/.kosh/bindings.js +1 -1
- package/dist/contacts/.kosh/schema.d.ts +2 -1
- package/dist/contacts/i18n/bn.d.ts +2 -0
- package/dist/contacts/i18n/bn.js +67 -0
- package/dist/contacts/index.js +3 -0
- package/dist/contacts/module.d.ts +42 -0
- package/dist/contacts/module.js +6 -1
- package/dist/crm/.kosh/bindings.js +1 -1
- package/dist/crm/.kosh/schema.d.ts +2 -1
- package/dist/crm/i18n/bn.d.ts +2 -0
- package/dist/crm/i18n/bn.js +80 -0
- package/dist/crm/index.js +22 -0
- package/dist/crm/module.d.ts +20 -0
- package/dist/crm/module.js +4 -2
- package/dist/documents/.kosh/bindings.js +1 -1
- package/dist/documents/.kosh/schema.d.ts +2 -1
- package/dist/documents/i18n/bn.d.ts +2 -0
- package/dist/documents/i18n/bn.js +83 -0
- package/dist/documents/index.js +128 -1
- package/dist/documents/module.d.ts +20 -0
- package/dist/documents/module.js +1 -0
- package/dist/event/.kosh/bindings.js +1 -1
- package/dist/event/.kosh/schema.d.ts +2 -1
- package/dist/event/i18n/bn.d.ts +2 -0
- package/dist/event/i18n/bn.js +101 -0
- package/dist/event/index.js +66 -0
- package/dist/event/module.d.ts +20 -0
- package/dist/event/module.js +8 -1
- package/dist/event_account/.kosh/bindings.js +1 -1
- package/dist/event_account/.kosh/schema.d.ts +530 -8
- package/dist/event_account/i18n/bn.d.ts +2 -0
- package/dist/event_account/i18n/bn.js +5 -0
- package/dist/event_account/index.js +2 -0
- package/dist/event_account/module.d.ts +4905 -1431
- package/dist/expense/.kosh/bindings.js +1 -1
- package/dist/expense/.kosh/schema.d.ts +323 -2
- package/dist/expense/i18n/bn.d.ts +2 -0
- package/dist/expense/i18n/bn.js +155 -0
- package/dist/expense/index.js +8 -1
- package/dist/expense/module.d.ts +2715 -694
- package/dist/expense/module.js +3 -1
- package/dist/expense_account/.kosh/bindings.js +1 -1
- package/dist/expense_account/.kosh/schema.d.ts +587 -8
- package/dist/expense_account/i18n/bn.d.ts +2 -0
- package/dist/expense_account/i18n/bn.js +15 -0
- package/dist/expense_account/index.js +2 -0
- package/dist/expense_account/module.d.ts +8094 -2619
- package/dist/helpdesk/.kosh/bindings.js +1 -1
- package/dist/helpdesk/.kosh/schema.d.ts +2 -1
- package/dist/helpdesk/i18n/bn.d.ts +2 -0
- package/dist/helpdesk/i18n/bn.js +127 -0
- package/dist/helpdesk/index.js +2 -0
- package/dist/helpdesk/module.d.ts +20 -0
- package/dist/hr/.kosh/bindings.js +1 -1
- package/dist/hr/.kosh/schema.d.ts +59 -1
- package/dist/hr/demo.js +11 -1
- package/dist/hr/i18n/bn.d.ts +2 -0
- package/dist/hr/i18n/bn.js +126 -0
- package/dist/hr/index.d.ts +1 -1
- package/dist/hr/index.js +158 -12
- package/dist/hr/module.d.ts +932 -59
- package/dist/hr/module.js +114 -17
- package/dist/{mrp → indent}/.kosh/bindings.js +2 -2
- package/dist/indent/.kosh/schema.d.ts +2084 -0
- package/dist/indent/demo.d.ts +7 -0
- package/dist/indent/demo.js +48 -0
- package/dist/indent/i18n/bn.d.ts +2 -0
- package/dist/indent/i18n/bn.js +143 -0
- package/dist/indent/index.d.ts +3 -0
- package/dist/indent/index.js +450 -0
- package/dist/{mrp → indent}/module.d.ts +7164 -3075
- package/dist/indent/module.js +792 -0
- package/dist/indent_purchase/.kosh/bindings.d.ts +22 -0
- package/dist/indent_purchase/.kosh/bindings.js +15 -0
- package/dist/indent_purchase/.kosh/schema.d.ts +2710 -0
- package/dist/indent_purchase/i18n/bn.d.ts +2 -0
- package/dist/indent_purchase/i18n/bn.js +13 -0
- package/dist/indent_purchase/index.d.ts +3 -0
- package/dist/indent_purchase/index.js +61 -0
- package/dist/indent_purchase/module.d.ts +27950 -0
- package/dist/indent_purchase/module.js +163 -0
- package/dist/l10n_bd/.kosh/bindings.js +1 -1
- package/dist/l10n_bd/.kosh/schema.d.ts +530 -8
- package/dist/l10n_bd/i18n/bn.d.ts +2 -0
- package/dist/l10n_bd/i18n/bn.js +69 -0
- package/dist/l10n_bd/index.js +2 -0
- package/dist/l10n_bd/module.d.ts +5167 -1693
- package/dist/l10n_bd_payroll/.kosh/bindings.js +1 -1
- package/dist/l10n_bd_payroll/.kosh/schema.d.ts +587 -8
- package/dist/l10n_bd_payroll/i18n/bn.d.ts +2 -0
- package/dist/l10n_bd_payroll/i18n/bn.js +4 -0
- package/dist/l10n_bd_payroll/index.js +2 -0
- package/dist/l10n_bd_payroll/module.d.ts +5910 -1548
- package/dist/l10n_bd_pos/.kosh/bindings.d.ts +22 -0
- package/dist/{mrp_account → l10n_bd_pos}/.kosh/bindings.js +2 -2
- package/dist/{mrp_account → l10n_bd_pos}/.kosh/schema.d.ts +693 -651
- package/dist/l10n_bd_pos/i18n/bn.d.ts +2 -0
- package/dist/l10n_bd_pos/i18n/bn.js +32 -0
- package/dist/l10n_bd_pos/index.d.ts +3 -0
- package/dist/l10n_bd_pos/index.js +111 -0
- package/dist/{mrp_account → l10n_bd_pos}/module.d.ts +7402 -7647
- package/dist/l10n_bd_pos/module.js +43 -0
- package/dist/l10n_in/.kosh/bindings.js +1 -1
- package/dist/l10n_in/.kosh/schema.d.ts +530 -8
- package/dist/l10n_in/i18n/bn.d.ts +2 -0
- package/dist/l10n_in/i18n/bn.js +95 -0
- package/dist/l10n_in/index.js +2 -0
- package/dist/l10n_in/module.d.ts +6703 -1652
- package/dist/l10n_in/module.js +25 -5
- package/dist/l10n_in/web/GstSettings.js +2 -2
- package/dist/mail/inbound/handle.js +2 -4
- package/dist/mail/inbound/models.js +5 -3
- package/dist/mail/index.d.ts +12 -1
- package/dist/mail/index.js +139 -2
- package/dist/mail/send.d.ts +56 -0
- package/dist/mail/send.js +394 -0
- package/dist/mail/web/SendButton.d.ts +9 -0
- package/dist/mail/web/SendButton.js +71 -0
- package/dist/mail/web/SendSelected.d.ts +8 -0
- package/dist/mail/web/SendSelected.js +33 -0
- package/dist/mail/web/index.d.ts +2 -0
- package/dist/mail/web/index.js +6 -0
- package/dist/mail/web/messages.js +36 -0
- package/dist/maintenance/.kosh/bindings.js +1 -1
- package/dist/maintenance/.kosh/schema.d.ts +2 -1
- package/dist/maintenance/i18n/bn.d.ts +2 -0
- package/dist/maintenance/i18n/bn.js +132 -0
- package/dist/maintenance/index.js +85 -0
- package/dist/maintenance/module.d.ts +25 -0
- package/dist/maintenance/module.js +27 -9
- package/dist/maintenance_stock/.kosh/bindings.js +1 -1
- package/dist/maintenance_stock/.kosh/schema.d.ts +298 -2
- package/dist/maintenance_stock/i18n/bn.d.ts +2 -0
- package/dist/maintenance_stock/i18n/bn.js +21 -0
- package/dist/maintenance_stock/index.js +2 -0
- package/dist/maintenance_stock/module.d.ts +5302 -1256
- package/dist/maintenance_stock/module.js +1 -0
- package/dist/modules-sdk/apps.d.ts +10 -0
- package/dist/modules-sdk/apps.js +32 -0
- package/dist/modules-sdk/index.d.ts +1 -1
- package/dist/modules-sdk/manifest.d.ts +68 -2
- package/dist/payment/.kosh/bindings.js +1 -1
- package/dist/payment/.kosh/schema.d.ts +530 -8
- package/dist/payment/i18n/bn.d.ts +2 -0
- package/dist/payment/i18n/bn.js +59 -0
- package/dist/payment/index.js +85 -0
- package/dist/payment/module.d.ts +5134 -1660
- package/dist/payment/module.js +17 -3
- package/dist/payment/settle.js +1 -0
- package/dist/payroll/.kosh/bindings.js +1 -1
- package/dist/payroll/.kosh/schema.d.ts +59 -1
- package/dist/payroll/i18n/bn.d.ts +2 -0
- package/dist/payroll/i18n/bn.js +206 -0
- package/dist/payroll/index.js +2 -0
- package/dist/payroll/module.d.ts +936 -48
- package/dist/payroll_account/.kosh/bindings.js +1 -1
- package/dist/payroll_account/.kosh/schema.d.ts +587 -8
- package/dist/payroll_account/i18n/bn.d.ts +2 -0
- package/dist/payroll_account/i18n/bn.js +10 -0
- package/dist/payroll_account/index.js +2 -0
- package/dist/payroll_account/module.d.ts +7534 -3192
- package/dist/permissions/approvals.d.ts +97 -4
- package/dist/permissions/approvals.js +780 -31
- package/dist/permissions/index.d.ts +1 -1
- package/dist/permissions/index.js +2 -2
- package/dist/permissions/models.js +177 -5
- package/dist/permissions/routes.d.ts +3 -0
- package/dist/permissions/routes.js +36 -2
- package/dist/permissions/web/ApprovalPanel.js +43 -5
- package/dist/permissions/web/messages.js +52 -0
- package/dist/portal/.kosh/bindings.js +1 -1
- package/dist/portal/.kosh/schema.d.ts +2 -1
- package/dist/portal/documents.d.ts +3 -0
- package/dist/portal/documents.js +21 -1
- package/dist/portal/i18n/bn.d.ts +2 -0
- package/dist/portal/i18n/bn.js +33 -0
- package/dist/portal/index.js +2 -0
- package/dist/portal/module.d.ts +20 -0
- package/dist/portal/routes-documents.js +76 -0
- package/dist/pos/.kosh/bindings.js +1 -1
- package/dist/pos/.kosh/schema.d.ts +531 -8
- package/dist/pos/i18n/bn.d.ts +2 -0
- package/dist/pos/i18n/bn.js +133 -0
- package/dist/pos/index.js +83 -1
- package/dist/pos/module.d.ts +6888 -1777
- package/dist/pos/module.js +49 -5
- package/dist/pos/routes.js +80 -7
- package/dist/pos/web/Register.js +2 -5
- package/dist/pos_stock/.kosh/bindings.js +1 -1
- package/dist/pos_stock/.kosh/schema.d.ts +626 -9
- package/dist/pos_stock/i18n/bn.d.ts +2 -0
- package/dist/pos_stock/i18n/bn.js +6 -0
- package/dist/pos_stock/index.js +2 -0
- package/dist/pos_stock/module.d.ts +10798 -3276
- package/dist/product/.kosh/bindings.js +1 -1
- package/dist/product/.kosh/schema.d.ts +202 -1
- package/dist/product/i18n/bn.d.ts +2 -0
- package/dist/product/i18n/bn.js +175 -0
- package/dist/product/index.d.ts +1 -0
- package/dist/product/index.js +288 -1
- package/dist/product/module.d.ts +1725 -0
- package/dist/product/module.js +66 -6
- package/dist/product/pricelist.d.ts +575 -0
- package/dist/product/pricelist.js +257 -0
- package/dist/product/variants.d.ts +908 -0
- package/dist/product/variants.js +251 -0
- package/dist/production/.kosh/bindings.d.ts +22 -0
- package/dist/production/.kosh/bindings.js +15 -0
- package/dist/production/.kosh/schema.d.ts +2345 -0
- package/dist/{mrp → production}/demo.d.ts +1 -1
- package/dist/{mrp → production}/demo.js +5 -5
- package/dist/production/depth.d.ts +790 -0
- package/dist/production/depth.js +262 -0
- package/dist/production/i18n/bn.d.ts +2 -0
- package/dist/production/i18n/bn.js +350 -0
- package/dist/production/index.d.ts +6 -0
- package/dist/production/index.js +1256 -0
- package/dist/production/module.d.ts +17327 -0
- package/dist/production/module.js +1333 -0
- package/dist/production/plan.d.ts +921 -0
- package/dist/production/plan.js +511 -0
- package/dist/production/schedule.d.ts +656 -0
- package/dist/production/schedule.js +309 -0
- package/dist/production_account/.kosh/bindings.d.ts +22 -0
- package/dist/production_account/.kosh/bindings.js +15 -0
- package/dist/production_account/.kosh/schema.d.ts +3496 -0
- package/dist/production_account/i18n/bn.d.ts +2 -0
- package/dist/production_account/i18n/bn.js +93 -0
- package/dist/production_account/index.d.ts +4 -0
- package/dist/production_account/index.js +246 -0
- package/dist/production_account/module.d.ts +1192 -0
- package/dist/{mrp_account → production_account}/module.js +72 -18
- package/dist/production_account/overhead.d.ts +1195 -0
- package/dist/production_account/overhead.js +554 -0
- package/dist/project/.kosh/bindings.js +1 -1
- package/dist/project/.kosh/schema.d.ts +65 -2
- package/dist/project/i18n/bn.d.ts +2 -0
- package/dist/project/i18n/bn.js +383 -0
- package/dist/project/index.js +123 -0
- package/dist/project/module.d.ts +20 -0
- package/dist/project/module.js +73 -14
- package/dist/project_account/.kosh/bindings.js +1 -1
- package/dist/project_account/.kosh/schema.d.ts +530 -8
- package/dist/project_account/i18n/bn.d.ts +2 -0
- package/dist/project_account/i18n/bn.js +6 -0
- package/dist/project_account/index.js +2 -0
- package/dist/project_account/module.d.ts +4926 -1452
- package/dist/project_portal/.kosh/bindings.js +1 -1
- package/dist/project_portal/.kosh/schema.d.ts +65 -2
- package/dist/project_portal/i18n/bn.d.ts +2 -0
- package/dist/project_portal/i18n/bn.js +6 -0
- package/dist/project_portal/index.js +2 -0
- package/dist/project_portal/module.d.ts +40 -0
- package/dist/project_purchase/.kosh/bindings.js +1 -1
- package/dist/project_purchase/.kosh/schema.d.ts +1126 -53
- package/dist/project_purchase/i18n/bn.d.ts +2 -0
- package/dist/project_purchase/i18n/bn.js +4 -0
- package/dist/project_purchase/index.js +2 -0
- package/dist/project_purchase/module.d.ts +17912 -4446
- package/dist/purchase/.kosh/bindings.js +1 -1
- package/dist/purchase/.kosh/schema.d.ts +813 -3
- package/dist/purchase/comparison.d.ts +993 -0
- package/dist/purchase/comparison.js +415 -0
- package/dist/purchase/extras.d.ts +1509 -0
- package/dist/purchase/extras.js +445 -0
- package/dist/purchase/i18n/bn.d.ts +2 -0
- package/dist/purchase/i18n/bn.js +413 -0
- package/dist/purchase/index.d.ts +5 -0
- package/dist/purchase/index.js +1280 -4
- package/dist/purchase/module.d.ts +7139 -398
- package/dist/purchase/module.js +295 -11
- package/dist/purchase/request.d.ts +696 -0
- package/dist/purchase/request.js +446 -0
- package/dist/purchase/tender.d.ts +1208 -0
- package/dist/purchase/tender.js +507 -0
- package/dist/purchase/vendorprice.d.ts +340 -0
- package/dist/purchase/vendorprice.js +153 -0
- package/dist/purchase_account/.kosh/bindings.js +1 -1
- package/dist/purchase_account/.kosh/schema.d.ts +1130 -57
- package/dist/purchase_account/i18n/bn.d.ts +2 -0
- package/dist/purchase_account/i18n/bn.js +22 -0
- package/dist/purchase_account/index.js +19 -0
- package/dist/purchase_account/module.d.ts +12276 -2247
- package/dist/purchase_account/module.js +241 -9
- package/dist/purchase_portal/.kosh/bindings.js +1 -1
- package/dist/purchase_portal/.kosh/schema.d.ts +813 -3
- package/dist/purchase_portal/i18n/bn.d.ts +2 -0
- package/dist/purchase_portal/i18n/bn.js +5 -0
- package/dist/purchase_portal/index.js +2 -0
- package/dist/purchase_portal/module.d.ts +6849 -353
- package/dist/purchase_stock/.kosh/bindings.js +1 -1
- package/dist/purchase_stock/.kosh/schema.d.ts +910 -4
- package/dist/purchase_stock/i18n/bn.d.ts +2 -0
- package/dist/purchase_stock/i18n/bn.js +19 -0
- package/dist/purchase_stock/index.d.ts +1 -1
- package/dist/purchase_stock/index.js +29 -0
- package/dist/purchase_stock/module.d.ts +12410 -1864
- package/dist/purchase_stock/module.js +81 -9
- package/dist/purchase_stock/scorecard.d.ts +22 -0
- package/dist/purchase_stock/scorecard.js +77 -0
- package/dist/purchase_stock/web/Scorecard.d.ts +7 -0
- package/dist/purchase_stock/web/Scorecard.js +22 -0
- package/dist/purchase_stock/web/index.d.ts +11 -0
- package/dist/purchase_stock/web/index.js +16 -0
- package/dist/purchase_stock/web/messages.d.ts +2 -0
- package/dist/purchase_stock/web/messages.js +27 -0
- package/dist/purchase_stock_account/.kosh/bindings.js +1 -1
- package/dist/purchase_stock_account/.kosh/schema.d.ts +1286 -58
- package/dist/purchase_stock_account/i18n/bn.d.ts +2 -0
- package/dist/purchase_stock_account/i18n/bn.js +8 -0
- package/dist/purchase_stock_account/index.js +18 -0
- package/dist/purchase_stock_account/module.d.ts +7 -37995
- package/dist/purchase_stock_account/module.js +24 -3
- package/dist/recruitment/.kosh/bindings.js +1 -1
- package/dist/recruitment/.kosh/schema.d.ts +59 -1
- package/dist/recruitment/i18n/bn.d.ts +2 -0
- package/dist/recruitment/i18n/bn.js +93 -0
- package/dist/recruitment/index.js +64 -0
- package/dist/recruitment/module.d.ts +458 -8
- package/dist/recruitment/module.js +11 -3
- package/dist/reporting/documents.d.ts +5 -0
- package/dist/reporting/documents.js +11 -1
- package/dist/reporting/index.d.ts +1 -1
- package/dist/reporting/index.js +1 -1
- package/dist/reporting/web/CalendarView.d.ts +18 -5
- package/dist/reporting/web/CalendarView.js +163 -29
- package/dist/reporting/web/messages.js +18 -0
- package/dist/sale_account/.kosh/bindings.js +1 -1
- package/dist/sale_account/.kosh/schema.d.ts +642 -16
- package/dist/sale_account/i18n/bn.d.ts +2 -0
- package/dist/sale_account/i18n/bn.js +48 -0
- package/dist/sale_account/index.d.ts +1 -1
- package/dist/sale_account/index.js +102 -4
- package/dist/sale_account/module.d.ts +8254 -2212
- package/dist/sale_account/module.js +535 -46
- package/dist/sale_crm/.kosh/bindings.d.ts +22 -0
- package/dist/sale_crm/.kosh/bindings.js +15 -0
- package/dist/{mrp → sale_crm}/.kosh/schema.d.ts +389 -567
- package/dist/sale_crm/i18n/bn.d.ts +2 -0
- package/dist/sale_crm/i18n/bn.js +9 -0
- package/dist/sale_crm/index.d.ts +7 -0
- package/dist/sale_crm/index.js +104 -0
- package/dist/sale_crm/module.d.ts +5609 -0
- package/dist/sale_crm/module.js +73 -0
- package/dist/sale_portal/.kosh/bindings.js +1 -1
- package/dist/sale_portal/.kosh/schema.d.ts +291 -4
- package/dist/sale_portal/i18n/bn.d.ts +2 -0
- package/dist/sale_portal/i18n/bn.js +7 -0
- package/dist/sale_portal/index.js +10 -0
- package/dist/sale_portal/module.d.ts +2564 -294
- package/dist/sale_project/.kosh/bindings.js +1 -1
- package/dist/sale_project/.kosh/schema.d.ts +354 -5
- package/dist/sale_project/i18n/bn.d.ts +2 -0
- package/dist/sale_project/i18n/bn.js +12 -0
- package/dist/sale_project/index.js +2 -0
- package/dist/sale_project/module.d.ts +6249 -2402
- package/dist/sale_stock/.kosh/bindings.js +1 -1
- package/dist/sale_stock/.kosh/schema.d.ts +387 -5
- package/dist/sale_stock/i18n/bn.d.ts +2 -0
- package/dist/sale_stock/i18n/bn.js +15 -0
- package/dist/sale_stock/index.js +2 -0
- package/dist/sale_stock/module.d.ts +8057 -1759
- package/dist/sale_stock/module.js +20 -3
- package/dist/sales/.kosh/bindings.js +1 -1
- package/dist/sales/.kosh/schema.d.ts +291 -4
- package/dist/sales/i18n/bn.d.ts +2 -0
- package/dist/sales/i18n/bn.js +128 -0
- package/dist/sales/index.js +120 -5
- package/dist/sales/module.d.ts +3567 -633
- package/dist/sales/module.js +306 -11
- package/dist/server/api/duplicate.d.ts +14 -0
- package/dist/server/api/duplicate.js +75 -0
- package/dist/server/api/explain.d.ts +70 -0
- package/dist/server/api/explain.js +111 -0
- package/dist/server/api/metadata.d.ts +2 -0
- package/dist/server/api/metadata.js +9 -0
- package/dist/server/api/openapi.js +15 -0
- package/dist/server/api/rest.d.ts +1 -0
- package/dist/server/api/rest.js +76 -12
- package/dist/server/api/views.js +1 -1
- package/dist/server/apps.d.ts +16 -1
- package/dist/server/apps.js +164 -2
- package/dist/server/auth/base.js +2 -0
- package/dist/server/auth/service.d.ts +8 -0
- package/dist/server/auth/service.js +19 -0
- package/dist/server/events.d.ts +13 -0
- package/dist/server/events.js +22 -0
- package/dist/server/i18n.d.ts +27 -0
- package/dist/server/i18n.js +143 -0
- package/dist/server/index.d.ts +2 -0
- package/dist/server/index.js +2 -0
- package/dist/server/server.js +6 -0
- package/dist/settings/company.d.ts +3 -1
- package/dist/settings/company.js +26 -5
- package/dist/settings/routes.d.ts +10 -0
- package/dist/settings/routes.js +19 -3
- package/dist/settings/web/AppsPage.d.ts +3 -2
- package/dist/settings/web/AppsPage.js +26 -8
- package/dist/settings/web/CompaniesPage.js +91 -6
- package/dist/settings/web/messages.js +64 -0
- package/dist/sign/.kosh/bindings.js +1 -1
- package/dist/sign/.kosh/schema.d.ts +2 -1
- package/dist/sign/i18n/bn.d.ts +2 -0
- package/dist/sign/i18n/bn.js +97 -0
- package/dist/sign/index.d.ts +15 -0
- package/dist/sign/index.js +129 -1
- package/dist/sign/module.d.ts +40 -0
- package/dist/sign/module.js +11 -2
- package/dist/stock/.kosh/bindings.js +1 -1
- package/dist/stock/.kosh/schema.d.ts +298 -2
- package/dist/stock/i18n/bn.d.ts +2 -0
- package/dist/stock/i18n/bn.js +311 -0
- package/dist/stock/index.d.ts +3 -1
- package/dist/stock/index.js +442 -3
- package/dist/stock/ledger.d.ts +78 -0
- package/dist/stock/ledger.js +582 -0
- package/dist/stock/module.d.ts +5280 -2044
- package/dist/stock/module.js +222 -23
- package/dist/stock/replenish.js +16 -1
- package/dist/stock/returns.d.ts +157 -0
- package/dist/stock/returns.js +163 -0
- package/dist/stock/web/Ledger.d.ts +9 -0
- package/dist/stock/web/Ledger.js +108 -0
- package/dist/stock/web/Operations.d.ts +8 -0
- package/dist/stock/web/Operations.js +33 -0
- package/dist/stock/web/ReturnButton.d.ts +7 -0
- package/dist/stock/web/ReturnButton.js +62 -0
- package/dist/stock/web/index.d.ts +3 -0
- package/dist/stock/web/index.js +9 -0
- package/dist/stock/web/messages.js +154 -0
- package/dist/stock_account/.kosh/bindings.js +1 -1
- package/dist/stock_account/.kosh/schema.d.ts +682 -9
- package/dist/stock_account/i18n/bn.d.ts +2 -0
- package/dist/stock_account/i18n/bn.js +73 -0
- package/dist/stock_account/index.d.ts +1 -0
- package/dist/stock_account/index.js +131 -3
- package/dist/stock_account/landed.d.ts +429 -0
- package/dist/stock_account/landed.js +335 -0
- package/dist/stock_account/module.d.ts +11247 -3363
- package/dist/stock_account/module.js +135 -6
- package/dist/stock_account/web/LandedPreview.d.ts +7 -0
- package/dist/stock_account/web/LandedPreview.js +23 -0
- package/dist/stock_account/web/index.d.ts +11 -0
- package/dist/stock_account/web/index.js +16 -0
- package/dist/stock_account/web/messages.d.ts +2 -0
- package/dist/stock_account/web/messages.js +27 -0
- package/dist/todo/i18n/bn.d.ts +2 -0
- package/dist/todo/i18n/bn.js +66 -0
- package/dist/todo/index.js +59 -0
- package/dist/todo/module.d.ts +5 -0
- package/dist/todo/module.js +5 -3
- package/dist/trade_finance/.kosh/bindings.js +1 -1
- package/dist/trade_finance/.kosh/schema.d.ts +2 -1
- package/dist/trade_finance/i18n/bn.d.ts +2 -0
- package/dist/trade_finance/i18n/bn.js +162 -0
- package/dist/trade_finance/index.js +93 -0
- package/dist/trade_finance/module.d.ts +26 -0
- package/dist/trade_finance/module.js +27 -8
- package/dist/trade_finance_account/.kosh/bindings.js +1 -1
- package/dist/trade_finance_account/.kosh/schema.d.ts +530 -8
- package/dist/trade_finance_account/i18n/bn.d.ts +2 -0
- package/dist/trade_finance_account/i18n/bn.js +27 -0
- package/dist/trade_finance_account/index.js +2 -0
- package/dist/trade_finance_account/module.d.ts +4906 -1432
- package/dist/trade_finance_account/module.js +1 -0
- package/dist/trade_finance_purchase/.kosh/bindings.js +1 -1
- package/dist/trade_finance_purchase/.kosh/schema.d.ts +813 -3
- package/dist/trade_finance_purchase/i18n/bn.d.ts +2 -0
- package/dist/trade_finance_purchase/i18n/bn.js +6 -0
- package/dist/trade_finance_purchase/index.js +2 -0
- package/dist/trade_finance_purchase/module.d.ts +6909 -413
- package/dist/trade_finance_sale/.kosh/bindings.js +1 -1
- package/dist/trade_finance_sale/.kosh/schema.d.ts +291 -4
- package/dist/trade_finance_sale/i18n/bn.d.ts +2 -0
- package/dist/trade_finance_sale/i18n/bn.js +6 -0
- package/dist/trade_finance_sale/index.js +2 -0
- package/dist/trade_finance_sale/module.d.ts +2601 -331
- package/dist/ui/api.d.ts +2 -0
- package/dist/ui/app.d.ts +9 -0
- package/dist/ui/app.js +24 -4
- package/dist/ui/components/AppIcon.js +2 -2
- package/dist/ui/components/Explain.d.ts +69 -0
- package/dist/ui/components/Explain.js +62 -0
- package/dist/ui/context.d.ts +8 -1
- package/dist/ui/context.js +34 -1
- package/dist/ui/i18n/messages.d.ts +36 -0
- package/dist/ui/i18n/messages.js +72 -0
- package/dist/ui/index.d.ts +2 -1
- package/dist/ui/index.js +1 -0
- package/dist/ui/registry.d.ts +14 -0
- package/dist/ui/registry.js +10 -0
- package/dist/ui/views/FormView.d.ts +6 -0
- package/dist/ui/views/FormView.js +47 -10
- package/dist/ui/views/ListView.d.ts +8 -0
- package/dist/ui/views/ListView.js +10 -3
- package/dist/ui/views/StatsRow.js +2 -1
- package/dist/views/extend.js +12 -0
- package/dist/views/types.d.ts +13 -2
- package/dist/views/validate.js +8 -1
- package/dist/website/.kosh/bindings.js +1 -1
- package/dist/website/.kosh/schema.d.ts +2 -1
- package/dist/website/i18n/bn.d.ts +2 -0
- package/dist/website/i18n/bn.js +113 -0
- package/dist/website/index.js +36 -0
- package/dist/website/module.d.ts +20 -0
- package/dist/website/module.js +29 -5
- package/dist/website_crm/.kosh/bindings.js +1 -1
- package/dist/website_crm/.kosh/schema.d.ts +2 -1
- package/dist/website_crm/i18n/bn.d.ts +2 -0
- package/dist/website_crm/i18n/bn.js +5 -0
- package/dist/website_crm/index.js +2 -0
- package/dist/website_crm/module.d.ts +40 -0
- package/dist/website_sale/.kosh/bindings.js +1 -1
- package/dist/website_sale/.kosh/schema.d.ts +642 -17
- package/dist/website_sale/i18n/bn.d.ts +2 -0
- package/dist/website_sale/i18n/bn.js +132 -0
- package/dist/website_sale/index.js +83 -1
- package/dist/website_sale/module.d.ts +18705 -5550
- package/dist/website_sale/module.js +32 -10
- package/dist/website_sale/shop.js +22 -9
- package/dist/website_sale_stock/.kosh/bindings.js +1 -1
- package/dist/website_sale_stock/.kosh/schema.d.ts +737 -18
- package/dist/website_sale_stock/i18n/bn.d.ts +2 -0
- package/dist/website_sale_stock/i18n/bn.js +4 -0
- package/dist/website_sale_stock/index.js +2 -0
- package/dist/website_sale_stock/module.d.ts +10 -24997
- package/dist/website_sale_stock/module.js +7 -3
- package/package.json +36 -8
- package/dist/mrp/index.d.ts +0 -3
- package/dist/mrp/index.js +0 -393
- package/dist/mrp/module.js +0 -757
- package/dist/mrp_account/index.d.ts +0 -3
- package/dist/mrp_account/index.js +0 -22
- /package/dist/{mrp → approvals_purchase}/.kosh/bindings.d.ts +0 -0
- /package/dist/{mrp_account → indent}/.kosh/bindings.d.ts +0 -0
|
@@ -18,9 +18,13 @@ import { messagingShutro } from '../messaging/index.js';
|
|
|
18
18
|
import { approvalGuard, permissionsShutro, requestApprovals } from '../permissions/index.js';
|
|
19
19
|
import { computeTaxes, productShutro, taxRule } from '../product/index.js';
|
|
20
20
|
import { reportingShutro } from '../reporting/index.js';
|
|
21
|
+
import { emitting } from '../server/index.js';
|
|
21
22
|
import { orm } from '../server/orm.js';
|
|
22
23
|
import { check, compute, defineModel, defineModule, extendModel, f, method, onchange, record, records, ref, } from './.kosh/bindings.js';
|
|
24
|
+
import { AccountFiscalPosition, AccountFiscalPositionAccount, AccountFiscalPositionTax, applyFiscalPositions, CategoryAccounts, determineAccounts, PartnerAccounts, ProductAccounts, } from './fiscal.js';
|
|
25
|
+
import { AccountFollowup, AccountFollowupLevel, AccountFollowupSent } from './followups.js';
|
|
23
26
|
import { postPayments } from './payments.js';
|
|
27
|
+
import { AccountBankStatement, AccountBankStatementLine, AccountReconcileRule, } from './statements.js';
|
|
24
28
|
const READ = ['read'];
|
|
25
29
|
const WRITE = ['read', 'write', 'create'];
|
|
26
30
|
const ALL = ['read', 'write', 'create', 'unlink', 'export', 'import'];
|
|
@@ -164,7 +168,10 @@ export const AccountAccount = defineModel('account.account', {
|
|
|
164
168
|
a.displayName = `${a.code} ${a.name}`;
|
|
165
169
|
}),
|
|
166
170
|
}),
|
|
167
|
-
type: f.selection(ACCOUNT_TYPES, {
|
|
171
|
+
type: f.selection(ACCOUNT_TYPES, {
|
|
172
|
+
required: true,
|
|
173
|
+
help: 'Where the account appears in the balance sheet or the profit and loss, and whether it holds receivables, payables or money.',
|
|
174
|
+
}),
|
|
168
175
|
/** Lines on this account are matched against each other (receivables, payables, suspense). */
|
|
169
176
|
reconcile: f.boolean({ default: false, label: 'Allow reconciliation' }),
|
|
170
177
|
currency: f.many2one('res.currency', { label: 'Account currency' }),
|
|
@@ -186,9 +193,17 @@ export const AccountJournal = defineModel('account.journal', {
|
|
|
186
193
|
fields: {
|
|
187
194
|
code: f.char({ required: true, size: 8 }),
|
|
188
195
|
name: f.char({ required: true, translate: true }),
|
|
189
|
-
type: f.selection(JOURNAL_TYPES, {
|
|
196
|
+
type: f.selection(JOURNAL_TYPES, {
|
|
197
|
+
required: true,
|
|
198
|
+
default: 'general',
|
|
199
|
+
help: 'What the journal records: sales, purchases, cash, bank or miscellaneous entries.',
|
|
200
|
+
}),
|
|
190
201
|
/** Cash and bank journals: the account of the money; sales and purchases: the default income / expense. */
|
|
191
202
|
defaultAccount: f.many2one('account.account', { checkCompany: true, label: 'Default account' }),
|
|
203
|
+
/** A bank feed adapter's name (RFC 0029 §3.1): its lines are pulled into statements. */
|
|
204
|
+
bankFeed: f.char({ label: 'Bank feed' }),
|
|
205
|
+
/** Where the feed's last pull ended. */
|
|
206
|
+
bankFeedCursor: f.char({ label: 'Feed cursor' }),
|
|
192
207
|
},
|
|
193
208
|
sqlConstraints: {
|
|
194
209
|
codeUnique: {
|
|
@@ -229,7 +244,11 @@ export const AccountFiscalYear = defineModel('account.fiscal.year', {
|
|
|
229
244
|
name: f.char({ required: true }),
|
|
230
245
|
dateFrom: f.date({ required: true, label: 'From' }),
|
|
231
246
|
dateTo: f.date({ required: true, label: 'To' }),
|
|
232
|
-
state: f.selection({ open: 'Open', closed: 'Closed' }, {
|
|
247
|
+
state: f.selection({ open: 'Open', closed: 'Closed' }, {
|
|
248
|
+
required: true,
|
|
249
|
+
default: 'open',
|
|
250
|
+
help: 'A closed year has its result moved to retained earnings and accepts no more entries on or before its lock date.',
|
|
251
|
+
}),
|
|
233
252
|
/** Set when the year closes: nothing is posted on or before it. */
|
|
234
253
|
lockDate: f.date({ label: 'Lock date' }),
|
|
235
254
|
/** The entry that moved the year's result to retained earnings (closing.ts). */
|
|
@@ -379,7 +398,11 @@ export const AccountTaxComponent = defineModel('account.tax.component', {
|
|
|
379
398
|
name: f.char({ required: true, translate: true }),
|
|
380
399
|
/** Its part of the tax's amount: 0.5 for half. */
|
|
381
400
|
share: f.decimal({ scale: 4, required: true, default: '1' }),
|
|
382
|
-
scope: f.selection({ always: 'Always', intra: 'Within the state', inter: 'Between states or abroad' }, {
|
|
401
|
+
scope: f.selection({ always: 'Always', intra: 'Within the state', inter: 'Between states or abroad' }, {
|
|
402
|
+
required: true,
|
|
403
|
+
default: 'always',
|
|
404
|
+
help: 'When this part of the tax applies: always, only for supplies within the state, or only between states and abroad.',
|
|
405
|
+
}),
|
|
383
406
|
/** What the returns call it: CGST, SGST, IGST, CESS. */
|
|
384
407
|
code: f.char({ size: 16 }),
|
|
385
408
|
account: f.many2one('account.account'),
|
|
@@ -508,7 +531,12 @@ export const AccountMove = defineModel('account.move', {
|
|
|
508
531
|
}),
|
|
509
532
|
journal: f.many2one('account.journal', { required: true, checkCompany: true }),
|
|
510
533
|
date: f.date({ required: true, default: (env) => env.today() }),
|
|
511
|
-
kind: f.selection(MOVE_KINDS, {
|
|
534
|
+
kind: f.selection(MOVE_KINDS, {
|
|
535
|
+
required: true,
|
|
536
|
+
default: 'entry',
|
|
537
|
+
label: 'Type',
|
|
538
|
+
help: 'A journal entry, or the kind of document: customer or vendor invoice, credit note or debit note.',
|
|
539
|
+
}),
|
|
512
540
|
partner: f.many2one('res.partner', { checkCompany: true }),
|
|
513
541
|
ref: f.char({ label: 'Reference' }),
|
|
514
542
|
currency: f.many2one('res.currency', { required: true }),
|
|
@@ -530,12 +558,14 @@ export const AccountMove = defineModel('account.move', {
|
|
|
530
558
|
currency: 'companyCurrency',
|
|
531
559
|
store: true,
|
|
532
560
|
label: 'Debit',
|
|
561
|
+
help: 'The sum of the debits of the entry’s lines, in the company currency.',
|
|
533
562
|
...moveTotals,
|
|
534
563
|
}),
|
|
535
564
|
amountCredit: f.monetary({
|
|
536
565
|
currency: 'companyCurrency',
|
|
537
566
|
store: true,
|
|
538
567
|
label: 'Credit',
|
|
568
|
+
help: 'The sum of the credits of the entry’s lines, in the company currency.',
|
|
539
569
|
...moveTotals,
|
|
540
570
|
}),
|
|
541
571
|
// Documents
|
|
@@ -572,18 +602,33 @@ export const AccountMove = defineModel('account.move', {
|
|
|
572
602
|
}),
|
|
573
603
|
}),
|
|
574
604
|
paymentTerm: f.many2one('account.payment.term', { label: 'Payment terms' }),
|
|
605
|
+
/** Maps taxes and accounts when posted (RFC 0029 §3.5); empty: the partner's, or one that applies by itself. */
|
|
606
|
+
fiscalPosition: f.many2one('account.fiscal.position', {
|
|
607
|
+
ondelete: 'restrict',
|
|
608
|
+
checkCompany: true,
|
|
609
|
+
label: 'Fiscal position',
|
|
610
|
+
help: 'Maps taxes and accounts when posted; empty: the partner’s, or one that applies by itself.',
|
|
611
|
+
}),
|
|
575
612
|
invoiceOrigin: f.char({ label: 'Source document' }),
|
|
576
613
|
amountUntaxed: f.monetary({
|
|
577
614
|
currency: 'currency',
|
|
578
615
|
store: true,
|
|
579
616
|
label: 'Untaxed',
|
|
617
|
+
help: 'The sum of the product lines before taxes, in the document’s currency.',
|
|
618
|
+
...documentTotals,
|
|
619
|
+
}),
|
|
620
|
+
amountTax: f.monetary({
|
|
621
|
+
currency: 'currency',
|
|
622
|
+
store: true,
|
|
623
|
+
label: 'Taxes',
|
|
624
|
+
help: 'The taxes of the product lines, in the document’s currency.',
|
|
580
625
|
...documentTotals,
|
|
581
626
|
}),
|
|
582
|
-
amountTax: f.monetary({ currency: 'currency', store: true, label: 'Taxes', ...documentTotals }),
|
|
583
627
|
amountTotal: f.monetary({
|
|
584
628
|
currency: 'currency',
|
|
585
629
|
store: true,
|
|
586
630
|
label: 'Total',
|
|
631
|
+
help: 'The untaxed amount plus the taxes: what the document is for.',
|
|
587
632
|
...documentTotals,
|
|
588
633
|
}),
|
|
589
634
|
/** What is still due on a posted document, in its currency. */
|
|
@@ -591,6 +636,7 @@ export const AccountMove = defineModel('account.move', {
|
|
|
591
636
|
currency: 'currency',
|
|
592
637
|
store: true,
|
|
593
638
|
label: 'Amount due',
|
|
639
|
+
help: 'What is still to be paid on the posted document after the payments and credit notes matched with it.',
|
|
594
640
|
...moveResidual,
|
|
595
641
|
}),
|
|
596
642
|
paymentState: f.selection({
|
|
@@ -598,7 +644,12 @@ export const AccountMove = defineModel('account.move', {
|
|
|
598
644
|
not_paid: 'Not paid',
|
|
599
645
|
partial: 'Partially paid',
|
|
600
646
|
paid: 'Paid',
|
|
601
|
-
}, {
|
|
647
|
+
}, {
|
|
648
|
+
store: true,
|
|
649
|
+
label: 'Payment',
|
|
650
|
+
help: 'Whether the posted document is not paid, partially paid or paid, from what is still due on it.',
|
|
651
|
+
...moveResidual,
|
|
652
|
+
}),
|
|
602
653
|
payments: f.many2many('account.payment', { label: 'Paid by' }),
|
|
603
654
|
state: f.state({
|
|
604
655
|
states: {
|
|
@@ -608,6 +659,7 @@ export const AccountMove = defineModel('account.move', {
|
|
|
608
659
|
cancel: 'Cancelled',
|
|
609
660
|
},
|
|
610
661
|
initial: 'draft',
|
|
662
|
+
help: 'A draft can be changed; a bill may wait for approval; a posted entry is in the books and is corrected only by a reversal.',
|
|
611
663
|
transitions: {
|
|
612
664
|
/** Bills: ask the approvers the amount needs (none needed: post right after). */
|
|
613
665
|
submit: {
|
|
@@ -795,7 +847,12 @@ export const AccountMoveLine = defineModel('account.move.line', {
|
|
|
795
847
|
product: 'Product',
|
|
796
848
|
tax: 'Tax',
|
|
797
849
|
counterpart: 'Receivable / payable',
|
|
798
|
-
}, {
|
|
850
|
+
}, {
|
|
851
|
+
required: true,
|
|
852
|
+
default: 'entry',
|
|
853
|
+
label: 'Kind',
|
|
854
|
+
help: 'A line of a journal entry, a product line of a document, or a tax or receivable / payable line made at posting.',
|
|
855
|
+
}),
|
|
799
856
|
/** The document this is a product line of (null on entry lines and generated lines). */
|
|
800
857
|
invoice: f.many2one('account.move', {
|
|
801
858
|
store: true,
|
|
@@ -824,6 +881,7 @@ export const AccountMoveLine = defineModel('account.move.line', {
|
|
|
824
881
|
currency: 'currency',
|
|
825
882
|
store: true,
|
|
826
883
|
label: 'Subtotal',
|
|
884
|
+
help: 'Quantity times unit price less the discount, before taxes, in the document’s currency.',
|
|
827
885
|
...compute('account.move.line', 'subtotal', [
|
|
828
886
|
'lineKind',
|
|
829
887
|
'quantity',
|
|
@@ -846,6 +904,7 @@ export const AccountMoveLine = defineModel('account.move.line', {
|
|
|
846
904
|
currency: 'currency',
|
|
847
905
|
store: true,
|
|
848
906
|
label: 'Tax',
|
|
907
|
+
help: 'The taxes of this product line, in the document’s currency.',
|
|
849
908
|
...compute('account.move.line', 'taxAmount', [
|
|
850
909
|
'lineKind',
|
|
851
910
|
'quantity',
|
|
@@ -875,6 +934,7 @@ export const AccountMoveLine = defineModel('account.move.line', {
|
|
|
875
934
|
balance: f.monetary({
|
|
876
935
|
currency: 'companyCurrency',
|
|
877
936
|
store: true,
|
|
937
|
+
help: 'Debit minus credit, in the company currency.',
|
|
878
938
|
// companyCurrency too: money reads are null until it is stored, and the sides may never change again.
|
|
879
939
|
...compute('account.move.line', 'balance', ['debit', 'credit', 'companyCurrency'], (lines) => {
|
|
880
940
|
for (const l of lines)
|
|
@@ -894,6 +954,7 @@ export const AccountMoveLine = defineModel('account.move.line', {
|
|
|
894
954
|
accountType: f.selection(ACCOUNT_TYPES, {
|
|
895
955
|
store: true,
|
|
896
956
|
label: 'Account type',
|
|
957
|
+
help: 'The type of the line’s account, for grouping in the reports.',
|
|
897
958
|
...compute('account.move.line', 'accountType', ['account.type'], (lines) => {
|
|
898
959
|
for (const l of lines)
|
|
899
960
|
l.accountType = l.account?.type ?? null;
|
|
@@ -917,12 +978,14 @@ export const AccountMoveLine = defineModel('account.move.line', {
|
|
|
917
978
|
currency: 'companyCurrency',
|
|
918
979
|
store: true,
|
|
919
980
|
label: 'Residual',
|
|
981
|
+
help: 'What is still unmatched on this receivable or payable line, in the company currency.',
|
|
920
982
|
...lineResiduals,
|
|
921
983
|
}),
|
|
922
984
|
amountResidualCurrency: f.monetary({
|
|
923
985
|
currency: 'currency',
|
|
924
986
|
store: true,
|
|
925
987
|
label: 'Residual in currency',
|
|
988
|
+
help: 'What is still unmatched on this receivable or payable line, in the entry’s currency.',
|
|
926
989
|
...lineResiduals,
|
|
927
990
|
}),
|
|
928
991
|
reconciled: f.boolean({ store: true, ...lineResiduals }),
|
|
@@ -979,6 +1042,8 @@ async function currentTx(env) {
|
|
|
979
1042
|
*/
|
|
980
1043
|
async function postMoves(moves) {
|
|
981
1044
|
const env = moves.env;
|
|
1045
|
+
// The fiscal position of each document, and its taxes mapped, before anything is computed (RFC 0029 §3.5).
|
|
1046
|
+
await applyFiscalPositions(env, moves.ids);
|
|
982
1047
|
const loaded = await moves.load({
|
|
983
1048
|
lines: { taxes: { components: true } },
|
|
984
1049
|
partner: true,
|
|
@@ -1041,8 +1106,10 @@ async function postMoves(moves) {
|
|
|
1041
1106
|
.model('account.move')
|
|
1042
1107
|
.browse([m.id])
|
|
1043
1108
|
.productLineAccounts();
|
|
1109
|
+
// Each line's account: its own, an app's, the product's, its category's or the journal's, then the position.
|
|
1110
|
+
const determined = await determineAccounts(env, m.id, proposed);
|
|
1044
1111
|
for (const l of products) {
|
|
1045
|
-
const account =
|
|
1112
|
+
const account = determined.lines.get(l.id)?.account ?? null;
|
|
1046
1113
|
if (account === null)
|
|
1047
1114
|
throw fail(['lines'], `Line "${l.name ?? ''}" has no account and the journal ${m.journal.code} has no default account.`, 'Set the account on the line, or a default account on the journal.');
|
|
1048
1115
|
const subtotal = round(l.subtotal?.amount ?? orm.toDecimal(0));
|
|
@@ -1151,7 +1218,8 @@ async function postMoves(moves) {
|
|
|
1151
1218
|
}
|
|
1152
1219
|
}
|
|
1153
1220
|
// Customers' documents settle on the receivable account, vendors' on the payable one.
|
|
1154
|
-
|
|
1221
|
+
// The partner's account, else the company's, through the fiscal position.
|
|
1222
|
+
const counterpart = determined.counterpart.account === null ? null : { id: determined.counterpart.account };
|
|
1155
1223
|
if (counterpart === null)
|
|
1156
1224
|
throw fail(['partner'], `The company has no ${customer ? 'receivable' : 'payable'} account.`, 'Install a chart of accounts (Accounting › Configuration), or set the account on the company.');
|
|
1157
1225
|
// One counterpart line per payment term part, the whole rounded total allocated between them.
|
|
@@ -1175,7 +1243,7 @@ async function postMoves(moves) {
|
|
|
1175
1243
|
{
|
|
1176
1244
|
move: m.id,
|
|
1177
1245
|
lineKind: 'counterpart',
|
|
1178
|
-
account: counterpart.id,
|
|
1246
|
+
account: orm.asId(counterpart.id, 'account.account'),
|
|
1179
1247
|
partner: m.partner.id,
|
|
1180
1248
|
name: m.ref ?? m.invoiceOrigin ?? m.name,
|
|
1181
1249
|
dateMaturity: due,
|
|
@@ -1284,8 +1352,17 @@ export const AccountWithholding = defineModel('account.withholding', {
|
|
|
1284
1352
|
fields: {
|
|
1285
1353
|
name: f.char({ required: true, translate: true }),
|
|
1286
1354
|
sequence: f.integer({ required: true, default: 10 }),
|
|
1287
|
-
direction: f.selection({ vendor: 'We withhold when paying vendors', customer: 'Customers withhold from us' }, {
|
|
1288
|
-
|
|
1355
|
+
direction: f.selection({ vendor: 'We withhold when paying vendors', customer: 'Customers withhold from us' }, {
|
|
1356
|
+
required: true,
|
|
1357
|
+
default: 'vendor',
|
|
1358
|
+
help: 'Whether we keep the amount back when paying vendors, or customers keep it back when paying us.',
|
|
1359
|
+
}),
|
|
1360
|
+
base: f.selection({ untaxed: 'Untaxed amount', tax: 'Tax amount', total: 'Total' }, {
|
|
1361
|
+
required: true,
|
|
1362
|
+
default: 'untaxed',
|
|
1363
|
+
label: 'Computed on',
|
|
1364
|
+
help: 'The part of the document the rate is applied to: the untaxed amount, the tax or the total.',
|
|
1365
|
+
}),
|
|
1289
1366
|
/** 0.05 for 5 %. */
|
|
1290
1367
|
rate: f.decimal({ scale: 4, required: true, default: '0' }),
|
|
1291
1368
|
/** A document whose total is below it is not withheld from. */
|
|
@@ -1307,6 +1384,12 @@ export const AccountWithholding = defineModel('account.withholding', {
|
|
|
1307
1384
|
/** The withholdings that apply to a partner (vendor or customer): what a payment of their documents proposes. */
|
|
1308
1385
|
export const PartnerWithholdings = extendModel('res.partner', {
|
|
1309
1386
|
fields: {
|
|
1387
|
+
/** Invoices and credit notes emailed with their PDF once posted (RFC 0029 §3.3). */
|
|
1388
|
+
sendInvoicesByEmail: f.boolean({
|
|
1389
|
+
default: false,
|
|
1390
|
+
label: 'Send invoices by email',
|
|
1391
|
+
help: 'Each invoice and credit note is emailed with its PDF when it is posted.',
|
|
1392
|
+
}),
|
|
1310
1393
|
withholdings: f.many2many('account.withholding', {
|
|
1311
1394
|
relation: 'res_partner_withholding_rel',
|
|
1312
1395
|
label: 'Withholdings',
|
|
@@ -1355,7 +1438,12 @@ export const AccountPayment = defineModel('account.payment', {
|
|
|
1355
1438
|
p.name = p.move?.name ?? orm.UNNUMBERED;
|
|
1356
1439
|
}),
|
|
1357
1440
|
}),
|
|
1358
|
-
kind: f.selection({ inbound: 'Receive', outbound: 'Send' }, {
|
|
1441
|
+
kind: f.selection({ inbound: 'Receive', outbound: 'Send' }, {
|
|
1442
|
+
required: true,
|
|
1443
|
+
default: 'inbound',
|
|
1444
|
+
label: 'Direction',
|
|
1445
|
+
help: 'Whether the money is received from the partner or sent to them.',
|
|
1446
|
+
}),
|
|
1359
1447
|
partner: f.many2one('res.partner', { required: true, checkCompany: true }),
|
|
1360
1448
|
journal: f.many2one('account.journal', { required: true, checkCompany: true }),
|
|
1361
1449
|
date: f.date({ required: true, default: (env) => env.today() }),
|
|
@@ -1370,6 +1458,7 @@ export const AccountPayment = defineModel('account.payment', {
|
|
|
1370
1458
|
currency: 'currency',
|
|
1371
1459
|
store: true,
|
|
1372
1460
|
label: 'Withheld',
|
|
1461
|
+
help: 'The sum of the amounts withheld (VDS, TDS); with the amount paid, it settles the documents.',
|
|
1373
1462
|
...compute('account.payment', 'amountWithheld', ['withholdings.amount'], (payments) => {
|
|
1374
1463
|
for (const p of payments)
|
|
1375
1464
|
p.amountWithheld = p.withholdings.sum('amount', p.currency);
|
|
@@ -1379,12 +1468,13 @@ export const AccountPayment = defineModel('account.payment', {
|
|
|
1379
1468
|
state: f.state({
|
|
1380
1469
|
states: { draft: 'Draft', posted: 'Posted', cancel: 'Cancelled' },
|
|
1381
1470
|
initial: 'draft',
|
|
1471
|
+
help: 'A draft payment can be changed; posting records it in the journal and matches it with the documents it pays.',
|
|
1382
1472
|
transitions: {
|
|
1383
|
-
post: {
|
|
1473
|
+
post: emitting('account.payment.posted', {
|
|
1384
1474
|
from: ['draft'],
|
|
1385
1475
|
to: 'posted',
|
|
1386
1476
|
before: records('account.payment', (payments) => postPayments(payments)),
|
|
1387
|
-
},
|
|
1477
|
+
}),
|
|
1388
1478
|
cancel: { from: ['draft'], to: 'cancel' },
|
|
1389
1479
|
redraft: { from: ['cancel'], to: 'draft' },
|
|
1390
1480
|
},
|
|
@@ -1404,7 +1494,7 @@ const sequence = (type, prefix) => orm.defineSequence({
|
|
|
1404
1494
|
});
|
|
1405
1495
|
export const accountingShutro = defineModule({
|
|
1406
1496
|
name: 'accounting',
|
|
1407
|
-
version: '0.
|
|
1497
|
+
version: '0.8.0',
|
|
1408
1498
|
migrations: [
|
|
1409
1499
|
{
|
|
1410
1500
|
version: '0.2.0',
|
|
@@ -1437,6 +1527,15 @@ export const accountingShutro = defineModule({
|
|
|
1437
1527
|
sequence('general', 'MISC'),
|
|
1438
1528
|
],
|
|
1439
1529
|
models: [
|
|
1530
|
+
AccountBankStatement,
|
|
1531
|
+
AccountBankStatementLine,
|
|
1532
|
+
AccountReconcileRule,
|
|
1533
|
+
AccountFollowupLevel,
|
|
1534
|
+
AccountFollowup,
|
|
1535
|
+
AccountFollowupSent,
|
|
1536
|
+
AccountFiscalPosition,
|
|
1537
|
+
AccountFiscalPositionTax,
|
|
1538
|
+
AccountFiscalPositionAccount,
|
|
1440
1539
|
ResCurrencyRate,
|
|
1441
1540
|
ResBankAccount,
|
|
1442
1541
|
AccountWithholding,
|
|
@@ -1484,5 +1583,12 @@ export const accountingShutro = defineModule({
|
|
|
1484
1583
|
record('account.payment.term.line', 'term_half_now', { term: ref('account.payment.term', 'accounting.term_half'), days: 0, percent: '50' }, { noupdate: true }),
|
|
1485
1584
|
record('account.payment.term.line', 'term_half_later', { term: ref('account.payment.term', 'accounting.term_half'), days: 30, percent: '50' }, { noupdate: true }),
|
|
1486
1585
|
],
|
|
1487
|
-
extensions: [
|
|
1586
|
+
extensions: [
|
|
1587
|
+
CompanyAccounting,
|
|
1588
|
+
TaxAccounts,
|
|
1589
|
+
PartnerWithholdings,
|
|
1590
|
+
PartnerAccounts,
|
|
1591
|
+
ProductAccounts,
|
|
1592
|
+
CategoryAccounts,
|
|
1593
|
+
],
|
|
1488
1594
|
});
|