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
package/dist/project/index.js
CHANGED
|
@@ -152,6 +152,129 @@ export const project = defineModule({
|
|
|
152
152
|
category: 'Operations',
|
|
153
153
|
summary: 'Projects, tasks on a kanban, timesheets',
|
|
154
154
|
},
|
|
155
|
+
documents: [
|
|
156
|
+
{
|
|
157
|
+
key: 'project_plan',
|
|
158
|
+
name: 'Project plan',
|
|
159
|
+
model: 'project.plan',
|
|
160
|
+
layout: {
|
|
161
|
+
paper: 'A4',
|
|
162
|
+
header: '{{company.name}}',
|
|
163
|
+
footer: 'Page {{page}} of {{pages}}',
|
|
164
|
+
blocks: [
|
|
165
|
+
{ kind: 'heading', id: 'title', text: 'Project plan {{name}}: {{title}}', level: 1 },
|
|
166
|
+
{
|
|
167
|
+
kind: 'fields',
|
|
168
|
+
id: 'plan',
|
|
169
|
+
items: [
|
|
170
|
+
{ label: 'Type', bind: 'type.name' },
|
|
171
|
+
{ label: 'Written by', bind: 'requester.name' },
|
|
172
|
+
{ label: 'Project manager', bind: 'manager.name' },
|
|
173
|
+
{ label: 'Sponsor', bind: 'sponsor.name' },
|
|
174
|
+
{ label: 'Priority', bind: 'priority' },
|
|
175
|
+
{ label: 'Planned start', bind: 'dateStart' },
|
|
176
|
+
{ label: 'Planned end', bind: 'dateEnd' },
|
|
177
|
+
{ label: 'Estimated budget', bind: 'estimatedBudget' },
|
|
178
|
+
{ label: 'Approved budget', bind: 'approvedBudget' },
|
|
179
|
+
{ label: 'Approved on', bind: 'approvedAt' },
|
|
180
|
+
{ label: 'Status', bind: 'state' },
|
|
181
|
+
],
|
|
182
|
+
},
|
|
183
|
+
{ kind: 'text', id: 'objectives', text: 'Objectives: {{objectives}}' },
|
|
184
|
+
{ kind: 'text', id: 'outcome', text: 'Expected outcome: {{expectedOutcome}}' },
|
|
185
|
+
{ kind: 'text', id: 'goal', text: 'Strategic goal: {{strategicGoal}}' },
|
|
186
|
+
{ kind: 'text', id: 'about', text: '{{description}}' },
|
|
187
|
+
{ kind: 'signature', id: 'sign', labels: ['Project manager', 'Sponsor'] },
|
|
188
|
+
],
|
|
189
|
+
},
|
|
190
|
+
},
|
|
191
|
+
],
|
|
192
|
+
importTemplates: [
|
|
193
|
+
{
|
|
194
|
+
key: 'project_plan',
|
|
195
|
+
model: 'project.plan',
|
|
196
|
+
label: 'Project plan',
|
|
197
|
+
columns: [
|
|
198
|
+
{ header: 'Title', field: 'title' },
|
|
199
|
+
{ header: 'Project type', field: 'type' },
|
|
200
|
+
{ header: 'Written by', field: 'requester' },
|
|
201
|
+
{ header: 'Project manager', field: 'manager' },
|
|
202
|
+
{ header: 'Sponsor', field: 'sponsor' },
|
|
203
|
+
{ header: 'Priority', field: 'priority' },
|
|
204
|
+
{ header: 'Planned start', field: 'dateStart' },
|
|
205
|
+
{ header: 'Planned end', field: 'dateEnd' },
|
|
206
|
+
{ header: 'Description', field: 'description' },
|
|
207
|
+
{ header: 'Objectives', field: 'objectives' },
|
|
208
|
+
{ header: 'Expected outcome', field: 'expectedOutcome' },
|
|
209
|
+
{ header: 'Strategic goal', field: 'strategicGoal' },
|
|
210
|
+
{ header: 'Estimated budget', field: 'estimatedBudget' },
|
|
211
|
+
],
|
|
212
|
+
},
|
|
213
|
+
{
|
|
214
|
+
key: 'project_role',
|
|
215
|
+
model: 'project.role',
|
|
216
|
+
label: 'Project role',
|
|
217
|
+
columns: [
|
|
218
|
+
{ header: 'Name', field: 'name' },
|
|
219
|
+
{ header: 'Code', field: 'code' },
|
|
220
|
+
{ header: 'Default hourly cost', field: 'defaultHourlyCost' },
|
|
221
|
+
],
|
|
222
|
+
},
|
|
223
|
+
{
|
|
224
|
+
key: 'project_type',
|
|
225
|
+
model: 'project.type',
|
|
226
|
+
label: 'Project type',
|
|
227
|
+
columns: [
|
|
228
|
+
{ header: 'Name', field: 'name' },
|
|
229
|
+
{ header: 'Code', field: 'code' },
|
|
230
|
+
{ header: 'Description', field: 'description' },
|
|
231
|
+
],
|
|
232
|
+
},
|
|
233
|
+
{
|
|
234
|
+
key: 'project_task_category',
|
|
235
|
+
model: 'project.task.category',
|
|
236
|
+
label: 'Task category',
|
|
237
|
+
columns: [
|
|
238
|
+
{ header: 'Name', field: 'name' },
|
|
239
|
+
{ header: 'Code', field: 'code' },
|
|
240
|
+
{ header: 'Project type', field: 'type' },
|
|
241
|
+
],
|
|
242
|
+
},
|
|
243
|
+
{
|
|
244
|
+
key: 'project_task_stage',
|
|
245
|
+
model: 'project.task.stage',
|
|
246
|
+
label: 'Task stage',
|
|
247
|
+
columns: [
|
|
248
|
+
{ header: 'Name', field: 'name' },
|
|
249
|
+
{ header: 'Fold', field: 'fold' },
|
|
250
|
+
{ header: 'Closes the task', field: 'done' },
|
|
251
|
+
],
|
|
252
|
+
},
|
|
253
|
+
{
|
|
254
|
+
key: 'project_project',
|
|
255
|
+
model: 'project.project',
|
|
256
|
+
label: 'Project',
|
|
257
|
+
columns: [
|
|
258
|
+
{ header: 'Name', field: 'name' },
|
|
259
|
+
{ header: 'Project type', field: 'type' },
|
|
260
|
+
{ header: 'Programme', field: 'parentProject' },
|
|
261
|
+
{ header: 'Customer', field: 'partner' },
|
|
262
|
+
{ header: 'Project manager', field: 'manager' },
|
|
263
|
+
{ header: 'Sponsor', field: 'sponsor' },
|
|
264
|
+
{ header: 'Owner', field: 'owner' },
|
|
265
|
+
{ header: 'Priority', field: 'priority' },
|
|
266
|
+
{ header: 'Risk', field: 'riskLevel' },
|
|
267
|
+
{ header: 'Location', field: 'location' },
|
|
268
|
+
{ header: 'Phases › Name', field: 'phases.name' },
|
|
269
|
+
{ header: 'Phases › Code', field: 'phases.code' },
|
|
270
|
+
{ header: 'Phases › Manager', field: 'phases.manager' },
|
|
271
|
+
{ header: 'Phases › Start', field: 'phases.dateStart' },
|
|
272
|
+
{ header: 'Phases › End', field: 'phases.dateEnd' },
|
|
273
|
+
],
|
|
274
|
+
},
|
|
275
|
+
],
|
|
276
|
+
// Bangla for the labels it serves (RFC 0023 §3.1; `pnpm i18n:extract`).
|
|
277
|
+
i18n: { bn: () => import('./i18n/bn.js') },
|
|
155
278
|
accessLevels: {
|
|
156
279
|
user: { label: 'User (projects and tasks, own timesheets)', groups: ['project.user'] },
|
|
157
280
|
manager: {
|
package/dist/project/module.d.ts
CHANGED
|
@@ -11362,6 +11362,16 @@ export declare const projectShutro: import("../server/orm.js").Module<readonly [
|
|
|
11362
11362
|
readonly hasDefault: false;
|
|
11363
11363
|
readonly readonly: false;
|
|
11364
11364
|
}, string>;
|
|
11365
|
+
readonly lang: import("../server/orm.js").SelectionField<"bn" | "en", {
|
|
11366
|
+
readonly required: false;
|
|
11367
|
+
readonly computed: false;
|
|
11368
|
+
readonly inverse: false;
|
|
11369
|
+
readonly sequence: false;
|
|
11370
|
+
readonly computeName: undefined;
|
|
11371
|
+
readonly store: true;
|
|
11372
|
+
readonly hasDefault: false;
|
|
11373
|
+
readonly readonly: false;
|
|
11374
|
+
}>;
|
|
11365
11375
|
readonly phone: import("../server/orm.js").CharField<{
|
|
11366
11376
|
readonly required: false;
|
|
11367
11377
|
readonly computed: false;
|
|
@@ -11583,6 +11593,16 @@ export declare const projectShutro: import("../server/orm.js").Module<readonly [
|
|
|
11583
11593
|
readonly hasDefault: false;
|
|
11584
11594
|
readonly readonly: false;
|
|
11585
11595
|
}, string>;
|
|
11596
|
+
readonly lang: import("../server/orm.js").SelectionField<"bn" | "en", {
|
|
11597
|
+
readonly required: false;
|
|
11598
|
+
readonly computed: false;
|
|
11599
|
+
readonly inverse: false;
|
|
11600
|
+
readonly sequence: false;
|
|
11601
|
+
readonly computeName: undefined;
|
|
11602
|
+
readonly store: true;
|
|
11603
|
+
readonly hasDefault: false;
|
|
11604
|
+
readonly readonly: false;
|
|
11605
|
+
}>;
|
|
11586
11606
|
readonly phone: import("../server/orm.js").CharField<{
|
|
11587
11607
|
readonly required: false;
|
|
11588
11608
|
readonly computed: false;
|
package/dist/project/module.js
CHANGED
|
@@ -399,7 +399,11 @@ export const ProjectPlan = defineModel('project.plan', {
|
|
|
399
399
|
label: 'Sponsor',
|
|
400
400
|
help: 'Approves the plan first; a Projects manager when there is none.',
|
|
401
401
|
}),
|
|
402
|
-
priority: f.selection(PRIORITIES, {
|
|
402
|
+
priority: f.selection(PRIORITIES, {
|
|
403
|
+
required: true,
|
|
404
|
+
default: 'normal',
|
|
405
|
+
help: 'How important the plan is against the others.',
|
|
406
|
+
}),
|
|
403
407
|
dateStart: f.date({ label: 'Planned start' }),
|
|
404
408
|
dateEnd: f.date({ label: 'Planned end' }),
|
|
405
409
|
description: f.text(),
|
|
@@ -610,7 +614,11 @@ export const ProjectBudgetLine = defineModel('project.budget.line', {
|
|
|
610
614
|
}),
|
|
611
615
|
sequence: f.integer({ required: true, default: 10 }),
|
|
612
616
|
name: f.char({ required: true, label: 'What for' }),
|
|
613
|
-
category: f.selection(BUDGET_CATEGORIES, {
|
|
617
|
+
category: f.selection(BUDGET_CATEGORIES, {
|
|
618
|
+
required: true,
|
|
619
|
+
default: 'other',
|
|
620
|
+
help: 'What kind of cost the line plans for.',
|
|
621
|
+
}),
|
|
614
622
|
phase: f.many2one('project.phase', { ondelete: 'set null' }),
|
|
615
623
|
workPackage: f.many2one('project.work.package', {
|
|
616
624
|
ondelete: 'set null',
|
|
@@ -690,8 +698,17 @@ export const ProjectProject = defineModel('project.project', {
|
|
|
690
698
|
}),
|
|
691
699
|
sponsor: f.many2one('res.users', { ondelete: 'set null', label: 'Sponsor' }),
|
|
692
700
|
owner: f.many2one('res.users', { ondelete: 'set null', label: 'Owner' }),
|
|
693
|
-
priority: f.selection(PRIORITIES, {
|
|
694
|
-
|
|
701
|
+
priority: f.selection(PRIORITIES, {
|
|
702
|
+
required: true,
|
|
703
|
+
default: 'normal',
|
|
704
|
+
help: 'How important the project is against the others.',
|
|
705
|
+
}),
|
|
706
|
+
riskLevel: f.selection({ low: 'Low', medium: 'Medium', high: 'High', critical: 'Critical' }, {
|
|
707
|
+
required: true,
|
|
708
|
+
default: 'low',
|
|
709
|
+
label: 'Risk',
|
|
710
|
+
help: 'How risky the project is judged to be overall.',
|
|
711
|
+
}),
|
|
695
712
|
location: f.char(),
|
|
696
713
|
sequence: f.integer({ required: true, default: 10 }),
|
|
697
714
|
dateStart: f.date({ label: 'Start' }),
|
|
@@ -707,6 +724,7 @@ export const ProjectProject = defineModel('project.project', {
|
|
|
707
724
|
scale: 1,
|
|
708
725
|
store: true,
|
|
709
726
|
label: 'Progress %',
|
|
727
|
+
help: 'How much is done, from its tasks weighted by their planned hours.',
|
|
710
728
|
...compute('project.project', 'progress', [
|
|
711
729
|
'tasks.progress',
|
|
712
730
|
'tasks.done',
|
|
@@ -730,6 +748,7 @@ export const ProjectProject = defineModel('project.project', {
|
|
|
730
748
|
store: true,
|
|
731
749
|
label: 'Budget',
|
|
732
750
|
groups: MANAGERS_SEE,
|
|
751
|
+
help: 'The planned amounts of the budget lines added together.',
|
|
733
752
|
...compute('project.project', 'budget', ['budgetLines.planned'], (projects) => {
|
|
734
753
|
for (const p of projects)
|
|
735
754
|
p.budget = [...p.budgetLines].reduce((t, l) => t.plus(l.planned), orm.toDecimal(0));
|
|
@@ -764,7 +783,10 @@ export const ProjectProject = defineModel('project.project', {
|
|
|
764
783
|
}),
|
|
765
784
|
}),
|
|
766
785
|
/** What the figures say (written by the refresh, hourly and on demand). */
|
|
767
|
-
healthComputed: f.selection(HEALTH, {
|
|
786
|
+
healthComputed: f.selection(HEALTH, {
|
|
787
|
+
label: 'Health by the figures',
|
|
788
|
+
help: 'What the schedule, late milestones and costs say, checked every hour.',
|
|
789
|
+
}),
|
|
768
790
|
healthNotes: f.text({ label: 'Why', help: 'What the figures said at the last refresh.' }),
|
|
769
791
|
healthCheckedAt: f.datetime({ label: 'Checked' }),
|
|
770
792
|
healthOverride: f.selection(HEALTH, {
|
|
@@ -775,6 +797,7 @@ export const ProjectProject = defineModel('project.project', {
|
|
|
775
797
|
health: f.selection(HEALTH, {
|
|
776
798
|
store: true,
|
|
777
799
|
label: 'Health',
|
|
800
|
+
help: 'The manager’s health if set, else the health by the figures.',
|
|
778
801
|
...compute('project.project', 'health', ['healthOverride', 'healthComputed'], (projects) => {
|
|
779
802
|
for (const p of projects)
|
|
780
803
|
p.health = p.healthOverride ?? p.healthComputed ?? 'on_track';
|
|
@@ -785,6 +808,7 @@ export const ProjectProject = defineModel('project.project', {
|
|
|
785
808
|
store: true,
|
|
786
809
|
label: 'Labour cost',
|
|
787
810
|
groups: MANAGERS_SEE,
|
|
811
|
+
help: 'The cost of all the hours logged on the project’s timesheets.',
|
|
788
812
|
...compute('project.project', 'labourCost', ['timesheets.cost'], (projects) => {
|
|
789
813
|
for (const p of projects) {
|
|
790
814
|
let total = orm.toDecimal(0);
|
|
@@ -806,6 +830,7 @@ export const ProjectProject = defineModel('project.project', {
|
|
|
806
830
|
scale: 2,
|
|
807
831
|
store: true,
|
|
808
832
|
label: 'Hours spent',
|
|
833
|
+
help: 'The hours logged on all the project’s tasks.',
|
|
809
834
|
...compute('project.project', 'hours', ['tasks.effectiveHours'], (projects) => {
|
|
810
835
|
for (const p of projects) {
|
|
811
836
|
let total = orm.toDecimal(0);
|
|
@@ -906,7 +931,11 @@ const layerFields = {
|
|
|
906
931
|
manager: f.many2one('res.users', { ondelete: 'set null', label: 'Manager' }),
|
|
907
932
|
dateStart: f.date({ label: 'Start' }),
|
|
908
933
|
dateEnd: f.date({ label: 'End' }),
|
|
909
|
-
status: f.selection(STATUSES, {
|
|
934
|
+
status: f.selection(STATUSES, {
|
|
935
|
+
required: true,
|
|
936
|
+
default: 'draft',
|
|
937
|
+
help: 'Where the work stands, from draft to done.',
|
|
938
|
+
}),
|
|
910
939
|
description: f.text(),
|
|
911
940
|
/** Set by hand when the tasks do not tell the whole story (empty: computed). */
|
|
912
941
|
progressOverride: f.decimal({ scale: 1, label: 'Progress set by hand %' }),
|
|
@@ -935,13 +964,18 @@ export const ProjectPhase = defineModel('project.phase', {
|
|
|
935
964
|
responsible: f.many2one('res.users', { ondelete: 'set null' }),
|
|
936
965
|
/** Its end has passed and it is not done or cancelled (set by the refresh, hourly). */
|
|
937
966
|
late: f.boolean({ default: false, label: 'Late' }),
|
|
938
|
-
priority: f.selection(PRIORITIES, {
|
|
967
|
+
priority: f.selection(PRIORITIES, {
|
|
968
|
+
required: true,
|
|
969
|
+
default: 'normal',
|
|
970
|
+
help: 'How important the phase is within its project.',
|
|
971
|
+
}),
|
|
939
972
|
workPackages: f.one2many('project.work.package', 'phase', { label: 'Work packages' }),
|
|
940
973
|
tasks: f.one2many('project.task', 'phase'),
|
|
941
974
|
progress: f.decimal({
|
|
942
975
|
scale: 1,
|
|
943
976
|
store: true,
|
|
944
977
|
label: 'Progress %',
|
|
978
|
+
help: 'How much is done: set by hand, else from its tasks weighted by their planned hours.',
|
|
945
979
|
...compute('project.phase', 'progress', [
|
|
946
980
|
'progressOverride',
|
|
947
981
|
'tasks.progress',
|
|
@@ -1003,6 +1037,7 @@ export const ProjectWorkPackage = defineModel('project.work.package', {
|
|
|
1003
1037
|
scale: 1,
|
|
1004
1038
|
store: true,
|
|
1005
1039
|
label: 'Progress %',
|
|
1040
|
+
help: 'How much is done: set by hand, else from its tasks weighted by their planned hours.',
|
|
1006
1041
|
...compute('project.work.package', 'progress', [
|
|
1007
1042
|
'progressOverride',
|
|
1008
1043
|
'tasks.progress',
|
|
@@ -1078,13 +1113,14 @@ export const ProjectTask = defineModel('project.task', {
|
|
|
1078
1113
|
predecessors: f.one2many('project.task.link', 'successor', { label: 'Waits for' }),
|
|
1079
1114
|
successors: f.one2many('project.task.link', 'predecessor', { label: 'Followed by' }),
|
|
1080
1115
|
partner: f.many2one('res.partner', { checkCompany: true, label: 'Customer' }),
|
|
1081
|
-
priority: f.selection({ normal: 'Normal', high: 'High' }, { required: true, default: 'normal' }),
|
|
1116
|
+
priority: f.selection({ normal: 'Normal', high: 'High' }, { required: true, default: 'normal', help: 'How urgent the task is.' }),
|
|
1082
1117
|
deadline: f.date(),
|
|
1083
1118
|
plannedHours: f.decimal({ scale: 2, label: 'Planned hours' }),
|
|
1084
1119
|
effectiveHours: f.decimal({
|
|
1085
1120
|
scale: 2,
|
|
1086
1121
|
store: true,
|
|
1087
1122
|
label: 'Hours spent',
|
|
1123
|
+
help: 'The hours logged on the task’s timesheets.',
|
|
1088
1124
|
...compute('project.task', 'effectiveHours', ['timesheets.hours'], (tasks) => {
|
|
1089
1125
|
for (const t of tasks) {
|
|
1090
1126
|
let total = orm.toDecimal(0);
|
|
@@ -1106,6 +1142,7 @@ export const ProjectTask = defineModel('project.task', {
|
|
|
1106
1142
|
scale: 1,
|
|
1107
1143
|
store: true,
|
|
1108
1144
|
label: 'Progress %',
|
|
1145
|
+
help: 'Full once done; until then, the share of its sub-tasks done, weighted by their planned hours.',
|
|
1109
1146
|
...compute('project.task', 'progress', ['done', 'subtasks.done', 'subtasks.plannedHours', 'subtasks.active'], (tasks) => {
|
|
1110
1147
|
for (const t of tasks) {
|
|
1111
1148
|
if (t.done) {
|
|
@@ -1141,7 +1178,11 @@ export const ProjectTask = defineModel('project.task', {
|
|
|
1141
1178
|
label: 'Repeat every',
|
|
1142
1179
|
help: 'Once done, the next one is made with its dates moved by this many days, weeks or months.',
|
|
1143
1180
|
}),
|
|
1144
|
-
repeatUnit: f.selection({ day: 'Days', week: 'Weeks', month: 'Months' }, {
|
|
1181
|
+
repeatUnit: f.selection({ day: 'Days', week: 'Weeks', month: 'Months' }, {
|
|
1182
|
+
default: 'week',
|
|
1183
|
+
label: 'Repeat unit',
|
|
1184
|
+
help: 'Whether the repeat is counted in days, weeks or months.',
|
|
1185
|
+
}),
|
|
1145
1186
|
repeatUntil: f.date({ label: 'Repeat until' }),
|
|
1146
1187
|
nextTask: f.many2one('project.task', { ondelete: 'set null', label: 'Next one' }),
|
|
1147
1188
|
},
|
|
@@ -1295,7 +1336,7 @@ export const ProjectRisk = defineModel('project.risk', {
|
|
|
1295
1336
|
safety: 'Safety',
|
|
1296
1337
|
supply: 'Supply',
|
|
1297
1338
|
other: 'Other',
|
|
1298
|
-
}, { required: true, default: 'other' }),
|
|
1339
|
+
}, { required: true, default: 'other', help: 'What part of the project the risk threatens.' }),
|
|
1299
1340
|
probability: f.integer({
|
|
1300
1341
|
required: true,
|
|
1301
1342
|
default: 3,
|
|
@@ -1317,6 +1358,7 @@ export const ProjectRisk = defineModel('project.risk', {
|
|
|
1317
1358
|
level: f.selection(RISK_LEVELS, {
|
|
1318
1359
|
store: true,
|
|
1319
1360
|
label: 'Level',
|
|
1361
|
+
help: 'From the probability times the impact: up to 4 low, 9 medium, 15 high, above that critical.',
|
|
1320
1362
|
...compute('project.risk', 'level', ['probability', 'impact'], (risks) => {
|
|
1321
1363
|
for (const r of risks)
|
|
1322
1364
|
r.level = riskLevel((r.probability ?? 0) * (r.impact ?? 0));
|
|
@@ -1329,7 +1371,11 @@ export const ProjectRisk = defineModel('project.risk', {
|
|
|
1329
1371
|
mitigation: f.text({ help: 'What is done to make it less likely or less bad.' }),
|
|
1330
1372
|
contingency: f.text({ help: 'What is done if it happens.' }),
|
|
1331
1373
|
dueDate: f.date({ label: 'Review by' }),
|
|
1332
|
-
status: f.selection({ open: 'Open', mitigating: 'Being mitigated', occurred: 'Occurred', closed: 'Closed' }, {
|
|
1374
|
+
status: f.selection({ open: 'Open', mitigating: 'Being mitigated', occurred: 'Occurred', closed: 'Closed' }, {
|
|
1375
|
+
required: true,
|
|
1376
|
+
default: 'open',
|
|
1377
|
+
help: 'Where the risk stands: open, being dealt with, happened or closed.',
|
|
1378
|
+
}),
|
|
1333
1379
|
},
|
|
1334
1380
|
sqlConstraints: {
|
|
1335
1381
|
scale: {
|
|
@@ -1354,7 +1400,11 @@ export const ProjectIssue = defineModel('project.issue', {
|
|
|
1354
1400
|
}),
|
|
1355
1401
|
name: f.char({ required: true, label: 'Issue' }),
|
|
1356
1402
|
description: f.text(),
|
|
1357
|
-
severity: f.selection(RISK_LEVELS, {
|
|
1403
|
+
severity: f.selection(RISK_LEVELS, {
|
|
1404
|
+
required: true,
|
|
1405
|
+
default: 'medium',
|
|
1406
|
+
help: 'How serious the issue is for the project.',
|
|
1407
|
+
}),
|
|
1358
1408
|
raisedBy: f.many2one('res.users', {
|
|
1359
1409
|
default: (env) => env.userId,
|
|
1360
1410
|
ondelete: 'set null',
|
|
@@ -1362,7 +1412,11 @@ export const ProjectIssue = defineModel('project.issue', {
|
|
|
1362
1412
|
}),
|
|
1363
1413
|
owner: f.many2one('res.users', { ondelete: 'set null' }),
|
|
1364
1414
|
dueDate: f.date({ label: 'Resolve by' }),
|
|
1365
|
-
status: f.selection({ open: 'Open', in_progress: 'In progress', resolved: 'Resolved', closed: 'Closed' }, {
|
|
1415
|
+
status: f.selection({ open: 'Open', in_progress: 'In progress', resolved: 'Resolved', closed: 'Closed' }, {
|
|
1416
|
+
required: true,
|
|
1417
|
+
default: 'open',
|
|
1418
|
+
help: 'Where the issue stands, from open to resolved and closed.',
|
|
1419
|
+
}),
|
|
1366
1420
|
resolution: f.text(),
|
|
1367
1421
|
risk: f.many2one('project.risk', { ondelete: 'set null', label: 'From the risk' }),
|
|
1368
1422
|
},
|
|
@@ -1548,7 +1602,10 @@ export const ProjectStatusReport = defineModel('project.status.report', {
|
|
|
1548
1602
|
default: (env) => env.userId,
|
|
1549
1603
|
ondelete: 'restrict',
|
|
1550
1604
|
}),
|
|
1551
|
-
health: f.selection(HEALTH, {
|
|
1605
|
+
health: f.selection(HEALTH, {
|
|
1606
|
+
label: 'Health then',
|
|
1607
|
+
help: 'The project’s health when the report was written.',
|
|
1608
|
+
}),
|
|
1552
1609
|
progress: f.decimal({ scale: 1, label: 'Progress then %' }),
|
|
1553
1610
|
done: f.text({ label: 'Done this week' }),
|
|
1554
1611
|
next: f.text({ label: 'Next week' }),
|
|
@@ -1557,6 +1614,7 @@ export const ProjectStatusReport = defineModel('project.status.report', {
|
|
|
1557
1614
|
state: f.state({
|
|
1558
1615
|
states: { draft: 'Draft', sent: 'Sent' },
|
|
1559
1616
|
initial: 'draft',
|
|
1617
|
+
help: 'A draft can still be edited; once sent, it is posted on the project for its followers.',
|
|
1560
1618
|
transitions: {
|
|
1561
1619
|
send: {
|
|
1562
1620
|
from: ['draft'],
|
|
@@ -1660,6 +1718,7 @@ export const ProjectTimesheet = defineModel('project.timesheet', {
|
|
|
1660
1718
|
store: true,
|
|
1661
1719
|
label: 'Cost',
|
|
1662
1720
|
groups: MANAGERS_SEE,
|
|
1721
|
+
help: 'The hours at the person’s hourly cost in the project that day, else their role’s.',
|
|
1663
1722
|
...compute('project.timesheet', 'cost', [
|
|
1664
1723
|
'hours',
|
|
1665
1724
|
'user',
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// GENERATED by `pnpm generate:models` (Shutro’s generator). Do not edit. definitions-hash:
|
|
1
|
+
// GENERATED by `pnpm generate:models` (Shutro’s generator). Do not edit. definitions-hash: 34d960bd13bde47f
|
|
2
2
|
// Bindings of module `project_account`: import the definition API from here to get types scoped to what it can see.
|
|
3
3
|
export { defineModel, defineModule, extendModel, f, replace } from '../../server/orm.js';
|
|
4
4
|
import { definitions } from '../../server/orm.js';
|