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
|
@@ -0,0 +1,3496 @@
|
|
|
1
|
+
// GENERATED by `pnpm generate:models` (Shutro’s generator). Do not edit. definitions-hash: 8a3ddb4a64ea2477
|
|
2
|
+
// Schema view of module `production_account` (RFC 0002 §7.7): the models it owns or depends on, with the extensions it can see.
|
|
3
|
+
import type { F } from '../../server/orm.js';
|
|
4
|
+
|
|
5
|
+
/** Model name → model type (RFC 0002 §7.7). */
|
|
6
|
+
export interface SchemaView {
|
|
7
|
+
readonly 'account.account': AccountAccount;
|
|
8
|
+
readonly 'account.analytic': AccountAnalytic;
|
|
9
|
+
readonly 'account.bank.statement': AccountBankStatement;
|
|
10
|
+
readonly 'account.bank.statement.line': AccountBankStatementLine;
|
|
11
|
+
readonly 'account.fiscal.position': AccountFiscalPosition;
|
|
12
|
+
readonly 'account.fiscal.position.account': AccountFiscalPositionAccount;
|
|
13
|
+
readonly 'account.fiscal.position.tax': AccountFiscalPositionTax;
|
|
14
|
+
readonly 'account.fiscal.year': AccountFiscalYear;
|
|
15
|
+
readonly 'account.followup': AccountFollowup;
|
|
16
|
+
readonly 'account.followup.level': AccountFollowupLevel;
|
|
17
|
+
readonly 'account.followup.sent': AccountFollowupSent;
|
|
18
|
+
readonly 'account.full.reconcile': AccountFullReconcile;
|
|
19
|
+
readonly 'account.journal': AccountJournal;
|
|
20
|
+
readonly 'account.move': AccountMove;
|
|
21
|
+
readonly 'account.move.line': AccountMoveLine;
|
|
22
|
+
readonly 'account.partial.reconcile': AccountPartialReconcile;
|
|
23
|
+
readonly 'account.payment': AccountPayment;
|
|
24
|
+
readonly 'account.payment.term': AccountPaymentTerm;
|
|
25
|
+
readonly 'account.payment.term.line': AccountPaymentTermLine;
|
|
26
|
+
readonly 'account.payment.withholding': AccountPaymentWithholding;
|
|
27
|
+
readonly 'account.reconcile.rule': AccountReconcileRule;
|
|
28
|
+
readonly 'account.tax': AccountTax;
|
|
29
|
+
readonly 'account.tax.component': AccountTaxComponent;
|
|
30
|
+
readonly 'account.withholding': AccountWithholding;
|
|
31
|
+
readonly 'approval.delegation': ApprovalDelegation;
|
|
32
|
+
readonly 'approval.event': ApprovalEvent;
|
|
33
|
+
readonly 'approval.level': ApprovalLevel;
|
|
34
|
+
readonly 'approval.link': ApprovalLink;
|
|
35
|
+
readonly 'approval.policy': ApprovalPolicy;
|
|
36
|
+
readonly 'approval.request': ApprovalRequest;
|
|
37
|
+
readonly 'approval.vote': ApprovalVote;
|
|
38
|
+
readonly 'audit.event': AuditEvent;
|
|
39
|
+
readonly 'auth.api_key': AuthApiKey;
|
|
40
|
+
readonly 'auth.credential': AuthCredential;
|
|
41
|
+
readonly 'auth.policy': AuthPolicy;
|
|
42
|
+
readonly 'auth.session': AuthSession;
|
|
43
|
+
readonly 'auth.user_grant': AuthUserGrant;
|
|
44
|
+
readonly 'auth.user_group': AuthUserGroup;
|
|
45
|
+
readonly 'kosh.image': KoshImage;
|
|
46
|
+
readonly 'kosh.saved_view': KoshSavedView;
|
|
47
|
+
readonly 'kosh.setting': KoshSetting;
|
|
48
|
+
readonly 'mail.activity': MailActivity;
|
|
49
|
+
readonly 'mail.activity.type': MailActivityType;
|
|
50
|
+
readonly 'mail.channel': MailChannel;
|
|
51
|
+
readonly 'mail.channel.member': MailChannelMember;
|
|
52
|
+
readonly 'mail.follower': MailFollower;
|
|
53
|
+
readonly 'mail.message': MailMessage;
|
|
54
|
+
readonly 'mail.message.reaction': MailMessageReaction;
|
|
55
|
+
readonly 'oauth.app': OauthApp;
|
|
56
|
+
readonly 'oauth.code': OauthCode;
|
|
57
|
+
readonly 'oauth.grant': OauthGrant;
|
|
58
|
+
readonly 'oauth.token': OauthToken;
|
|
59
|
+
readonly 'product.attribute': ProductAttribute;
|
|
60
|
+
readonly 'product.attribute.value': ProductAttributeValue;
|
|
61
|
+
readonly 'product.category': ProductCategory;
|
|
62
|
+
readonly 'product.pricelist': ProductPricelist;
|
|
63
|
+
readonly 'product.pricelist.rule': ProductPricelistRule;
|
|
64
|
+
readonly 'product.product': ProductProduct;
|
|
65
|
+
readonly 'product.template': ProductTemplate;
|
|
66
|
+
readonly 'product.template.exclusion': ProductTemplateExclusion;
|
|
67
|
+
readonly 'product.template.line': ProductTemplateLine;
|
|
68
|
+
readonly 'production.bom': ProductionBom;
|
|
69
|
+
readonly 'production.bom.byproduct': ProductionBomByproduct;
|
|
70
|
+
readonly 'production.bom.cost': ProductionBomCost;
|
|
71
|
+
readonly 'production.bom.eligibility': ProductionBomEligibility;
|
|
72
|
+
readonly 'production.bom.line': ProductionBomLine;
|
|
73
|
+
readonly 'production.bom.operation': ProductionBomOperation;
|
|
74
|
+
readonly 'production.bom.spec': ProductionBomSpec;
|
|
75
|
+
readonly 'production.costing': ProductionCosting;
|
|
76
|
+
readonly 'production.costing.line': ProductionCostingLine;
|
|
77
|
+
readonly 'production.order': ProductionOrder;
|
|
78
|
+
readonly 'production.order.component': ProductionOrderComponent;
|
|
79
|
+
readonly 'production.order.overhead': ProductionOrderOverhead;
|
|
80
|
+
readonly 'production.overhead.allocation': ProductionOverheadAllocation;
|
|
81
|
+
readonly 'production.overhead.allocation.line': ProductionOverheadAllocationLine;
|
|
82
|
+
readonly 'production.overhead.allocation.share': ProductionOverheadAllocationShare;
|
|
83
|
+
readonly 'production.plan': ProductionPlan;
|
|
84
|
+
readonly 'production.plan.line': ProductionPlanLine;
|
|
85
|
+
readonly 'production.plan.material': ProductionPlanMaterial;
|
|
86
|
+
readonly 'production.product.spec': ProductionProductSpec;
|
|
87
|
+
readonly 'production.schedule': ProductionSchedule;
|
|
88
|
+
readonly 'production.schedule.component': ProductionScheduleComponent;
|
|
89
|
+
readonly 'production.shift': ProductionShift;
|
|
90
|
+
readonly 'production.spec.parameter': ProductionSpecParameter;
|
|
91
|
+
readonly 'production.workcenter': ProductionWorkcenter;
|
|
92
|
+
readonly 'production.workorder': ProductionWorkorder;
|
|
93
|
+
readonly 'report.dashboard': ReportDashboard;
|
|
94
|
+
readonly 'report.output': ReportOutput;
|
|
95
|
+
readonly 'report.schedule': ReportSchedule;
|
|
96
|
+
readonly 'report.spreadsheet': ReportSpreadsheet;
|
|
97
|
+
readonly 'report.template': ReportTemplate;
|
|
98
|
+
readonly 'res.bank.account': ResBankAccount;
|
|
99
|
+
readonly 'res.company': ResCompany;
|
|
100
|
+
readonly 'res.currency': ResCurrency;
|
|
101
|
+
readonly 'res.currency.rate': ResCurrencyRate;
|
|
102
|
+
readonly 'res.partner': ResPartner;
|
|
103
|
+
readonly 'res.partner.tag': ResPartnerTag;
|
|
104
|
+
readonly 'res.segment': ResSegment;
|
|
105
|
+
readonly 'res.users': ResUsers;
|
|
106
|
+
readonly 'stock.count': StockCount;
|
|
107
|
+
readonly 'stock.count.line': StockCountLine;
|
|
108
|
+
readonly 'stock.landed.cost': StockLandedCost;
|
|
109
|
+
readonly 'stock.landed.cost.line': StockLandedCostLine;
|
|
110
|
+
readonly 'stock.location': StockLocation;
|
|
111
|
+
readonly 'stock.lot': StockLot;
|
|
112
|
+
readonly 'stock.lot.line': StockLotLine;
|
|
113
|
+
readonly 'stock.move': StockMove;
|
|
114
|
+
readonly 'stock.picking': StockPicking;
|
|
115
|
+
readonly 'stock.picking.charge': StockPickingCharge;
|
|
116
|
+
readonly 'stock.picking.extra': StockPickingExtra;
|
|
117
|
+
readonly 'stock.putaway': StockPutaway;
|
|
118
|
+
readonly 'stock.quant': StockQuant;
|
|
119
|
+
readonly 'stock.reorder': StockReorder;
|
|
120
|
+
readonly 'stock.reservation': StockReservation;
|
|
121
|
+
readonly 'stock.return.reason': StockReturnReason;
|
|
122
|
+
readonly 'stock.scrap': StockScrap;
|
|
123
|
+
readonly 'stock.valuation.layer': StockValuationLayer;
|
|
124
|
+
readonly 'stock.warehouse': StockWarehouse;
|
|
125
|
+
readonly 'storage.attachment': StorageAttachment;
|
|
126
|
+
readonly 'uom.uom': UomUom;
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
/** `account.account` (owner: accounting). */
|
|
130
|
+
export interface AccountAccount {
|
|
131
|
+
readonly name: 'account.account';
|
|
132
|
+
readonly fields: {
|
|
133
|
+
readonly id: F.Id<'account.account'>;
|
|
134
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
135
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
136
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
137
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
138
|
+
readonly displayName: F.Char<{ readonly readonly: true; readonly compute: true }>;
|
|
139
|
+
readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
140
|
+
readonly company: F.Many2one<'res.company', { readonly required: true; readonly default: true }>;
|
|
141
|
+
readonly code: F.Char<{ readonly required: true }>;
|
|
142
|
+
readonly name: F.Char<{ readonly required: true; readonly translate: true }>;
|
|
143
|
+
readonly type: F.Selection<'asset_receivable' | 'asset_cash' | 'asset_current' | 'asset_prepayments' | 'asset_fixed' | 'asset_non_current' | 'liability_payable' | 'liability_current' | 'liability_non_current' | 'equity' | 'equity_unaffected' | 'income' | 'income_other' | 'expense' | 'expense_direct_cost' | 'expense_depreciation' | 'off_balance', { readonly required: true }>;
|
|
144
|
+
readonly reconcile: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
145
|
+
readonly currency: F.Many2one<'res.currency'>;
|
|
146
|
+
readonly note: F.Text;
|
|
147
|
+
};
|
|
148
|
+
readonly methods: AccountAccountMethods;
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
/** Methods of `account.account`: declared ones and transitions. */
|
|
152
|
+
export interface AccountAccountMethods extends F.Methods<typeof import('../../accounting/index.js').accountingShutro, 'account.account'> {
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
/** `account.analytic` (owner: accounting). */
|
|
156
|
+
export interface AccountAnalytic {
|
|
157
|
+
readonly name: 'account.analytic';
|
|
158
|
+
readonly fields: {
|
|
159
|
+
readonly id: F.Id<'account.analytic'>;
|
|
160
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
161
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
162
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
163
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
164
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
165
|
+
readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
166
|
+
readonly company: F.Many2one<'res.company', { readonly required: true; readonly default: true }>;
|
|
167
|
+
readonly code: F.Char;
|
|
168
|
+
readonly name: F.Char<{ readonly required: true; readonly translate: true }>;
|
|
169
|
+
readonly parent: F.Many2one<'account.analytic'>;
|
|
170
|
+
readonly note: F.Text;
|
|
171
|
+
};
|
|
172
|
+
readonly methods: AccountAnalyticMethods;
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
/** Methods of `account.analytic`: declared ones and transitions. */
|
|
176
|
+
export interface AccountAnalyticMethods extends F.Methods<typeof import('../../accounting/index.js').accountingShutro, 'account.analytic'> {
|
|
177
|
+
}
|
|
178
|
+
|
|
179
|
+
/** `account.bank.statement` (owner: accounting). */
|
|
180
|
+
export interface AccountBankStatement {
|
|
181
|
+
readonly name: 'account.bank.statement';
|
|
182
|
+
readonly fields: {
|
|
183
|
+
readonly id: F.Id<'account.bank.statement'>;
|
|
184
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
185
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
186
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
187
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
188
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
189
|
+
readonly company: F.Many2one<'res.company', { readonly required: true; readonly default: true }>;
|
|
190
|
+
readonly name: F.Char<{ readonly required: true }>;
|
|
191
|
+
readonly journal: F.Many2one<'account.journal', { readonly required: true }>;
|
|
192
|
+
readonly date: F.DateOnly<{ readonly required: true }>;
|
|
193
|
+
readonly balanceStart: F.Decimal<{ readonly default: true }>;
|
|
194
|
+
readonly balanceEnd: F.Decimal<{ readonly default: true }>;
|
|
195
|
+
readonly lines: F.One2many<'account.bank.statement.line', { readonly required: true }>;
|
|
196
|
+
readonly state: F.State<'open' | 'done', { readonly required: true; readonly readonly: true; readonly default: true }>;
|
|
197
|
+
};
|
|
198
|
+
readonly methods: AccountBankStatementMethods;
|
|
199
|
+
}
|
|
200
|
+
|
|
201
|
+
/** Methods of `account.bank.statement`: declared ones and transitions. */
|
|
202
|
+
export interface AccountBankStatementMethods extends F.Methods<typeof import('../../accounting/index.js').accountingShutro, 'account.bank.statement'> {
|
|
203
|
+
readonly 'close': () => Promise<void>;
|
|
204
|
+
readonly 'reopen': () => Promise<void>;
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
/** `account.bank.statement.line` (owner: accounting). */
|
|
208
|
+
export interface AccountBankStatementLine {
|
|
209
|
+
readonly name: 'account.bank.statement.line';
|
|
210
|
+
readonly fields: {
|
|
211
|
+
readonly id: F.Id<'account.bank.statement.line'>;
|
|
212
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
213
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
214
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
215
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
216
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
217
|
+
readonly statement: F.Many2one<'account.bank.statement', { readonly required: true }>;
|
|
218
|
+
readonly date: F.DateOnly<{ readonly required: true }>;
|
|
219
|
+
readonly label: F.Char<{ readonly required: true }>;
|
|
220
|
+
readonly reference: F.Char;
|
|
221
|
+
readonly partner: F.Many2one<'res.partner'>;
|
|
222
|
+
readonly amount: F.Decimal<{ readonly required: true }>;
|
|
223
|
+
readonly uniqueKey: F.Char;
|
|
224
|
+
readonly payment: F.Many2one<'account.payment'>;
|
|
225
|
+
readonly move: F.Many2one<'account.move'>;
|
|
226
|
+
readonly rule: F.Many2one<'account.reconcile.rule'>;
|
|
227
|
+
readonly state: F.Selection<'open' | 'matched', { readonly required: true; readonly default: true }>;
|
|
228
|
+
};
|
|
229
|
+
readonly methods: AccountBankStatementLineMethods;
|
|
230
|
+
}
|
|
231
|
+
|
|
232
|
+
/** Methods of `account.bank.statement.line`: declared ones and transitions. */
|
|
233
|
+
export interface AccountBankStatementLineMethods extends F.Methods<typeof import('../../accounting/index.js').accountingShutro, 'account.bank.statement.line'> {
|
|
234
|
+
}
|
|
235
|
+
|
|
236
|
+
/** `account.fiscal.position` (owner: accounting). */
|
|
237
|
+
export interface AccountFiscalPosition {
|
|
238
|
+
readonly name: 'account.fiscal.position';
|
|
239
|
+
readonly fields: {
|
|
240
|
+
readonly id: F.Id<'account.fiscal.position'>;
|
|
241
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
242
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
243
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
244
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
245
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
246
|
+
readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
247
|
+
readonly company: F.Many2one<'res.company', { readonly required: true; readonly default: true }>;
|
|
248
|
+
readonly name: F.Char<{ readonly required: true; readonly translate: true }>;
|
|
249
|
+
readonly sequence: F.Integer<{ readonly default: true }>;
|
|
250
|
+
readonly autoApply: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
251
|
+
readonly countries: F.Char;
|
|
252
|
+
readonly states: F.Char;
|
|
253
|
+
readonly vatRequired: F.Selection<'any' | 'with' | 'without', { readonly required: true; readonly default: true }>;
|
|
254
|
+
readonly note: F.Text<{ readonly translate: true }>;
|
|
255
|
+
readonly taxes: F.One2many<'account.fiscal.position.tax', { readonly required: true }>;
|
|
256
|
+
readonly accounts: F.One2many<'account.fiscal.position.account', { readonly required: true }>;
|
|
257
|
+
};
|
|
258
|
+
readonly methods: AccountFiscalPositionMethods;
|
|
259
|
+
}
|
|
260
|
+
|
|
261
|
+
/** Methods of `account.fiscal.position`: declared ones and transitions. */
|
|
262
|
+
export interface AccountFiscalPositionMethods extends F.Methods<typeof import('../../accounting/index.js').accountingShutro, 'account.fiscal.position'> {
|
|
263
|
+
}
|
|
264
|
+
|
|
265
|
+
/** `account.fiscal.position.account` (owner: accounting). */
|
|
266
|
+
export interface AccountFiscalPositionAccount {
|
|
267
|
+
readonly name: 'account.fiscal.position.account';
|
|
268
|
+
readonly fields: {
|
|
269
|
+
readonly id: F.Id<'account.fiscal.position.account'>;
|
|
270
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
271
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
272
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
273
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
274
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
275
|
+
readonly position: F.Many2one<'account.fiscal.position', { readonly required: true }>;
|
|
276
|
+
readonly accountSrc: F.Many2one<'account.account', { readonly required: true }>;
|
|
277
|
+
readonly accountDest: F.Many2one<'account.account', { readonly required: true }>;
|
|
278
|
+
};
|
|
279
|
+
readonly methods: AccountFiscalPositionAccountMethods;
|
|
280
|
+
}
|
|
281
|
+
|
|
282
|
+
/** Methods of `account.fiscal.position.account`: declared ones and transitions. */
|
|
283
|
+
export interface AccountFiscalPositionAccountMethods extends F.Methods<typeof import('../../accounting/index.js').accountingShutro, 'account.fiscal.position.account'> {
|
|
284
|
+
}
|
|
285
|
+
|
|
286
|
+
/** `account.fiscal.position.tax` (owner: accounting). */
|
|
287
|
+
export interface AccountFiscalPositionTax {
|
|
288
|
+
readonly name: 'account.fiscal.position.tax';
|
|
289
|
+
readonly fields: {
|
|
290
|
+
readonly id: F.Id<'account.fiscal.position.tax'>;
|
|
291
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
292
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
293
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
294
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
295
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
296
|
+
readonly position: F.Many2one<'account.fiscal.position', { readonly required: true }>;
|
|
297
|
+
readonly taxSrc: F.Many2one<'account.tax', { readonly required: true }>;
|
|
298
|
+
readonly taxDest: F.Many2one<'account.tax'>;
|
|
299
|
+
};
|
|
300
|
+
readonly methods: AccountFiscalPositionTaxMethods;
|
|
301
|
+
}
|
|
302
|
+
|
|
303
|
+
/** Methods of `account.fiscal.position.tax`: declared ones and transitions. */
|
|
304
|
+
export interface AccountFiscalPositionTaxMethods extends F.Methods<typeof import('../../accounting/index.js').accountingShutro, 'account.fiscal.position.tax'> {
|
|
305
|
+
}
|
|
306
|
+
|
|
307
|
+
/** `account.fiscal.year` (owner: accounting). */
|
|
308
|
+
export interface AccountFiscalYear {
|
|
309
|
+
readonly name: 'account.fiscal.year';
|
|
310
|
+
readonly fields: {
|
|
311
|
+
readonly id: F.Id<'account.fiscal.year'>;
|
|
312
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
313
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
314
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
315
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
316
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
317
|
+
readonly company: F.Many2one<'res.company', { readonly required: true; readonly default: true }>;
|
|
318
|
+
readonly name: F.Char<{ readonly required: true }>;
|
|
319
|
+
readonly dateFrom: F.DateOnly<{ readonly required: true }>;
|
|
320
|
+
readonly dateTo: F.DateOnly<{ readonly required: true }>;
|
|
321
|
+
readonly state: F.Selection<'open' | 'closed', { readonly required: true; readonly default: true }>;
|
|
322
|
+
readonly lockDate: F.DateOnly;
|
|
323
|
+
readonly closingMove: F.Many2one<'account.move'>;
|
|
324
|
+
readonly reopenReason: F.Char;
|
|
325
|
+
};
|
|
326
|
+
readonly methods: AccountFiscalYearMethods;
|
|
327
|
+
}
|
|
328
|
+
|
|
329
|
+
/** Methods of `account.fiscal.year`: declared ones and transitions. */
|
|
330
|
+
export interface AccountFiscalYearMethods extends F.Methods<typeof import('../../accounting/index.js').accountingShutro, 'account.fiscal.year'> {
|
|
331
|
+
}
|
|
332
|
+
|
|
333
|
+
/** `account.followup` (owner: accounting). */
|
|
334
|
+
export interface AccountFollowup {
|
|
335
|
+
readonly name: 'account.followup';
|
|
336
|
+
readonly fields: {
|
|
337
|
+
readonly id: F.Id<'account.followup'>;
|
|
338
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
339
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
340
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
341
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
342
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
343
|
+
readonly company: F.Many2one<'res.company', { readonly required: true; readonly default: true }>;
|
|
344
|
+
readonly partner: F.Many2one<'res.partner', { readonly required: true }>;
|
|
345
|
+
readonly level: F.Many2one<'account.followup.level'>;
|
|
346
|
+
readonly sentAt: F.Datetime;
|
|
347
|
+
readonly pausedUntil: F.DateOnly;
|
|
348
|
+
readonly pauseNote: F.Char;
|
|
349
|
+
};
|
|
350
|
+
readonly methods: AccountFollowupMethods;
|
|
351
|
+
}
|
|
352
|
+
|
|
353
|
+
/** Methods of `account.followup`: declared ones and transitions. */
|
|
354
|
+
export interface AccountFollowupMethods extends F.Methods<typeof import('../../accounting/index.js').accountingShutro, 'account.followup'> {
|
|
355
|
+
}
|
|
356
|
+
|
|
357
|
+
/** `account.followup.level` (owner: accounting). */
|
|
358
|
+
export interface AccountFollowupLevel {
|
|
359
|
+
readonly name: 'account.followup.level';
|
|
360
|
+
readonly fields: {
|
|
361
|
+
readonly id: F.Id<'account.followup.level'>;
|
|
362
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
363
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
364
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
365
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
366
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
367
|
+
readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
368
|
+
readonly company: F.Many2one<'res.company', { readonly required: true; readonly default: true }>;
|
|
369
|
+
readonly name: F.Char<{ readonly required: true; readonly translate: true }>;
|
|
370
|
+
readonly days: F.Integer<{ readonly required: true; readonly default: true }>;
|
|
371
|
+
readonly sendEmail: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
372
|
+
readonly sendSms: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
373
|
+
readonly sendWhatsapp: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
374
|
+
readonly subject: F.Char<{ readonly required: true; readonly translate: true }>;
|
|
375
|
+
readonly body: F.Text<{ readonly required: true; readonly translate: true }>;
|
|
376
|
+
readonly shortText: F.Char<{ readonly translate: true }>;
|
|
377
|
+
readonly blockSales: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
378
|
+
};
|
|
379
|
+
readonly methods: AccountFollowupLevelMethods;
|
|
380
|
+
}
|
|
381
|
+
|
|
382
|
+
/** Methods of `account.followup.level`: declared ones and transitions. */
|
|
383
|
+
export interface AccountFollowupLevelMethods extends F.Methods<typeof import('../../accounting/index.js').accountingShutro, 'account.followup.level'> {
|
|
384
|
+
}
|
|
385
|
+
|
|
386
|
+
/** `account.followup.sent` (owner: accounting). */
|
|
387
|
+
export interface AccountFollowupSent {
|
|
388
|
+
readonly name: 'account.followup.sent';
|
|
389
|
+
readonly fields: {
|
|
390
|
+
readonly id: F.Id<'account.followup.sent'>;
|
|
391
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
392
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
393
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
394
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
395
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
396
|
+
readonly company: F.Many2one<'res.company', { readonly required: true; readonly default: true }>;
|
|
397
|
+
readonly partner: F.Many2one<'res.partner', { readonly required: true }>;
|
|
398
|
+
readonly level: F.Many2one<'account.followup.level'>;
|
|
399
|
+
readonly amount: F.Char;
|
|
400
|
+
readonly invoices: F.Many2many<'account.move', { readonly required: true }>;
|
|
401
|
+
readonly channels: F.Char;
|
|
402
|
+
readonly automatic: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
403
|
+
};
|
|
404
|
+
readonly methods: AccountFollowupSentMethods;
|
|
405
|
+
}
|
|
406
|
+
|
|
407
|
+
/** Methods of `account.followup.sent`: declared ones and transitions. */
|
|
408
|
+
export interface AccountFollowupSentMethods extends F.Methods<typeof import('../../accounting/index.js').accountingShutro, 'account.followup.sent'> {
|
|
409
|
+
}
|
|
410
|
+
|
|
411
|
+
/** `account.full.reconcile` (owner: accounting). */
|
|
412
|
+
export interface AccountFullReconcile {
|
|
413
|
+
readonly name: 'account.full.reconcile';
|
|
414
|
+
readonly fields: {
|
|
415
|
+
readonly id: F.Id<'account.full.reconcile'>;
|
|
416
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
417
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
418
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
419
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
420
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
421
|
+
readonly name: F.Char<{ readonly required: true }>;
|
|
422
|
+
readonly lines: F.One2many<'account.move.line', { readonly required: true }>;
|
|
423
|
+
readonly partials: F.One2many<'account.partial.reconcile', { readonly required: true }>;
|
|
424
|
+
};
|
|
425
|
+
readonly methods: AccountFullReconcileMethods;
|
|
426
|
+
}
|
|
427
|
+
|
|
428
|
+
/** Methods of `account.full.reconcile`: declared ones and transitions. */
|
|
429
|
+
export interface AccountFullReconcileMethods extends F.Methods<typeof import('../../accounting/index.js').accountingShutro, 'account.full.reconcile'> {
|
|
430
|
+
}
|
|
431
|
+
|
|
432
|
+
/** `account.journal` (owner: accounting). */
|
|
433
|
+
export interface AccountJournal {
|
|
434
|
+
readonly name: 'account.journal';
|
|
435
|
+
readonly fields: {
|
|
436
|
+
readonly id: F.Id<'account.journal'>;
|
|
437
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
438
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
439
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
440
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
441
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
442
|
+
readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
443
|
+
readonly company: F.Many2one<'res.company', { readonly required: true; readonly default: true }>;
|
|
444
|
+
readonly code: F.Char<{ readonly required: true }>;
|
|
445
|
+
readonly name: F.Char<{ readonly required: true; readonly translate: true }>;
|
|
446
|
+
readonly type: F.Selection<'sale' | 'purchase' | 'cash' | 'bank' | 'general', { readonly required: true; readonly default: true }>;
|
|
447
|
+
readonly defaultAccount: F.Many2one<'account.account'>;
|
|
448
|
+
readonly bankFeed: F.Char;
|
|
449
|
+
readonly bankFeedCursor: F.Char;
|
|
450
|
+
};
|
|
451
|
+
readonly methods: AccountJournalMethods;
|
|
452
|
+
}
|
|
453
|
+
|
|
454
|
+
/** Methods of `account.journal`: declared ones and transitions. */
|
|
455
|
+
export interface AccountJournalMethods extends F.Methods<typeof import('../../accounting/index.js').accountingShutro, 'account.journal'> {
|
|
456
|
+
}
|
|
457
|
+
|
|
458
|
+
/** `account.move` (owner: accounting). */
|
|
459
|
+
export interface AccountMove {
|
|
460
|
+
readonly name: 'account.move';
|
|
461
|
+
readonly fields: {
|
|
462
|
+
readonly id: F.Id<'account.move'>;
|
|
463
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
464
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
465
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
466
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
467
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
468
|
+
readonly company: F.Many2one<'res.company', { readonly required: true; readonly default: true }>;
|
|
469
|
+
readonly name: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
470
|
+
readonly numberSale: F.Char<{ readonly readonly: true; readonly sequence: true }>;
|
|
471
|
+
readonly numberPurchase: F.Char<{ readonly readonly: true; readonly sequence: true }>;
|
|
472
|
+
readonly numberCash: F.Char<{ readonly readonly: true; readonly sequence: true }>;
|
|
473
|
+
readonly numberBank: F.Char<{ readonly readonly: true; readonly sequence: true }>;
|
|
474
|
+
readonly numberGeneral: F.Char<{ readonly readonly: true; readonly sequence: true }>;
|
|
475
|
+
readonly journal: F.Many2one<'account.journal', { readonly required: true }>;
|
|
476
|
+
readonly date: F.DateOnly<{ readonly required: true; readonly default: true }>;
|
|
477
|
+
readonly kind: F.Selection<'entry' | 'out_invoice' | 'out_refund' | 'in_invoice' | 'in_refund' | 'out_debit' | 'in_debit', { readonly required: true; readonly default: true }>;
|
|
478
|
+
readonly partner: F.Many2one<'res.partner'>;
|
|
479
|
+
readonly ref: F.Char;
|
|
480
|
+
readonly currency: F.Many2one<'res.currency', { readonly required: true }>;
|
|
481
|
+
readonly rate: F.Decimal;
|
|
482
|
+
readonly companyCurrency: F.Many2one<'res.currency', { readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
483
|
+
readonly narration: F.Text;
|
|
484
|
+
readonly lines: F.One2many<'account.move.line', { readonly required: true }>;
|
|
485
|
+
readonly invoiceLines: F.One2many<'account.move.line', { readonly required: true }>;
|
|
486
|
+
readonly amountDebit: F.Monetary<'companyCurrency', { readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
487
|
+
readonly amountCredit: F.Monetary<'companyCurrency', { readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
488
|
+
readonly dateDue: F.DateOnly;
|
|
489
|
+
readonly paymentDetails: F.Text<{ readonly readonly: true; readonly compute: true }>;
|
|
490
|
+
readonly paymentTerm: F.Many2one<'account.payment.term'>;
|
|
491
|
+
readonly fiscalPosition: F.Many2one<'account.fiscal.position'>;
|
|
492
|
+
readonly invoiceOrigin: F.Char;
|
|
493
|
+
readonly amountUntaxed: F.Monetary<'currency', { readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
494
|
+
readonly amountTax: F.Monetary<'currency', { readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
495
|
+
readonly amountTotal: F.Monetary<'currency', { readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
496
|
+
readonly amountResidual: F.Monetary<'currency', { readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
497
|
+
readonly paymentState: F.Selection<'not_applicable' | 'not_paid' | 'partial' | 'paid', { readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
498
|
+
readonly payments: F.Many2many<'account.payment', { readonly required: true }>;
|
|
499
|
+
readonly state: F.State<'draft' | 'to_approve' | 'posted' | 'cancel', { readonly required: true; readonly readonly: true; readonly default: true }>;
|
|
500
|
+
readonly postedAt: F.Datetime;
|
|
501
|
+
readonly postedTx: F.Char;
|
|
502
|
+
readonly reversalOf: F.Many2one<'account.move'>;
|
|
503
|
+
readonly debitOf: F.Many2one<'account.move'>;
|
|
504
|
+
readonly placeOfSupply: F.Char;
|
|
505
|
+
readonly reversedBy: F.Many2one<'account.move'>;
|
|
506
|
+
};
|
|
507
|
+
readonly methods: AccountMoveMethods;
|
|
508
|
+
}
|
|
509
|
+
|
|
510
|
+
/** Methods of `account.move`: declared ones and transitions. */
|
|
511
|
+
export interface AccountMoveMethods extends F.Methods<typeof import('../../accounting/index.js').accountingShutro, 'account.move'> {
|
|
512
|
+
readonly 'cancel': () => Promise<void>;
|
|
513
|
+
readonly 'post': () => Promise<void>;
|
|
514
|
+
readonly 'redraft': () => Promise<void>;
|
|
515
|
+
readonly 'reject': () => Promise<void>;
|
|
516
|
+
readonly 'submit': () => Promise<void>;
|
|
517
|
+
}
|
|
518
|
+
|
|
519
|
+
/** `account.move.line` (owner: accounting). */
|
|
520
|
+
export interface AccountMoveLine {
|
|
521
|
+
readonly name: 'account.move.line';
|
|
522
|
+
readonly fields: {
|
|
523
|
+
readonly id: F.Id<'account.move.line'>;
|
|
524
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
525
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
526
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
527
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
528
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
529
|
+
readonly move: F.Many2one<'account.move', { readonly required: true }>;
|
|
530
|
+
readonly account: F.Many2one<'account.account'>;
|
|
531
|
+
readonly partner: F.Many2one<'res.partner'>;
|
|
532
|
+
readonly name: F.Char;
|
|
533
|
+
readonly date: F.DateOnly<{ readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
534
|
+
readonly dateMaturity: F.DateOnly;
|
|
535
|
+
readonly companyCurrency: F.Many2one<'res.currency', { readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
536
|
+
readonly currency: F.Many2one<'res.currency', { readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
537
|
+
readonly debit: F.Monetary<'companyCurrency', { readonly required: true; readonly default: true }>;
|
|
538
|
+
readonly credit: F.Monetary<'companyCurrency', { readonly required: true; readonly default: true }>;
|
|
539
|
+
readonly amountCurrency: F.Monetary<'currency'>;
|
|
540
|
+
readonly lineKind: F.Selection<'entry' | 'product' | 'tax' | 'counterpart', { readonly required: true; readonly default: true }>;
|
|
541
|
+
readonly invoice: F.Many2one<'account.move', { readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
542
|
+
readonly product: F.Many2one<'product.product'>;
|
|
543
|
+
readonly analytic: F.Many2one<'account.analytic'>;
|
|
544
|
+
readonly quantity: F.Decimal<{ readonly default: true }>;
|
|
545
|
+
readonly priceUnit: F.Decimal<{ readonly default: true }>;
|
|
546
|
+
readonly discount: F.Decimal<{ readonly default: true }>;
|
|
547
|
+
readonly taxes: F.Many2many<'account.tax', { readonly required: true }>;
|
|
548
|
+
readonly tax: F.Many2one<'account.tax', { readonly readonly: true }>;
|
|
549
|
+
readonly subtotal: F.Monetary<'currency', { readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
550
|
+
readonly taxAmount: F.Monetary<'currency', { readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
551
|
+
readonly taxLineOf: F.Many2one<'account.tax'>;
|
|
552
|
+
readonly taxComponent: F.Many2one<'account.tax.component'>;
|
|
553
|
+
readonly taxReverseCharge: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
554
|
+
readonly taxBase: F.Monetary<'currency'>;
|
|
555
|
+
readonly balance: F.Monetary<'companyCurrency', { readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
556
|
+
readonly posted: F.Bool<{ readonly required: true; readonly readonly: true; readonly default: true; readonly compute: true; readonly store: true }>;
|
|
557
|
+
readonly accountType: F.Selection<'asset_receivable' | 'asset_cash' | 'asset_current' | 'asset_prepayments' | 'asset_fixed' | 'asset_non_current' | 'liability_payable' | 'liability_current' | 'liability_non_current' | 'equity' | 'equity_unaffected' | 'income' | 'income_other' | 'expense' | 'expense_direct_cost' | 'expense_depreciation' | 'off_balance', { readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
558
|
+
readonly taxReport: F.Many2one<'account.tax', { readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
559
|
+
readonly partialsAsDebit: F.One2many<'account.partial.reconcile', { readonly required: true }>;
|
|
560
|
+
readonly partialsAsCredit: F.One2many<'account.partial.reconcile', { readonly required: true }>;
|
|
561
|
+
readonly fullReconcile: F.Many2one<'account.full.reconcile'>;
|
|
562
|
+
readonly amountResidual: F.Monetary<'companyCurrency', { readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
563
|
+
readonly amountResidualCurrency: F.Monetary<'currency', { readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
564
|
+
readonly reconciled: F.Bool<{ readonly required: true; readonly readonly: true; readonly default: true; readonly compute: true; readonly store: true }>;
|
|
565
|
+
};
|
|
566
|
+
readonly methods: AccountMoveLineMethods;
|
|
567
|
+
}
|
|
568
|
+
|
|
569
|
+
/** Methods of `account.move.line`: declared ones and transitions. */
|
|
570
|
+
export interface AccountMoveLineMethods extends F.Methods<typeof import('../../accounting/index.js').accountingShutro, 'account.move.line'> {
|
|
571
|
+
}
|
|
572
|
+
|
|
573
|
+
/** `account.partial.reconcile` (owner: accounting). */
|
|
574
|
+
export interface AccountPartialReconcile {
|
|
575
|
+
readonly name: 'account.partial.reconcile';
|
|
576
|
+
readonly fields: {
|
|
577
|
+
readonly id: F.Id<'account.partial.reconcile'>;
|
|
578
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
579
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
580
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
581
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
582
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
583
|
+
readonly debitLine: F.Many2one<'account.move.line', { readonly required: true }>;
|
|
584
|
+
readonly creditLine: F.Many2one<'account.move.line', { readonly required: true }>;
|
|
585
|
+
readonly amount: F.Decimal<{ readonly required: true }>;
|
|
586
|
+
readonly amountCurrency: F.Decimal;
|
|
587
|
+
readonly currency: F.Many2one<'res.currency'>;
|
|
588
|
+
readonly exchangeMove: F.Many2one<'account.move'>;
|
|
589
|
+
readonly fullReconcile: F.Many2one<'account.full.reconcile'>;
|
|
590
|
+
};
|
|
591
|
+
readonly methods: AccountPartialReconcileMethods;
|
|
592
|
+
}
|
|
593
|
+
|
|
594
|
+
/** Methods of `account.partial.reconcile`: declared ones and transitions. */
|
|
595
|
+
export interface AccountPartialReconcileMethods extends F.Methods<typeof import('../../accounting/index.js').accountingShutro, 'account.partial.reconcile'> {
|
|
596
|
+
}
|
|
597
|
+
|
|
598
|
+
/** `account.payment` (owner: accounting). */
|
|
599
|
+
export interface AccountPayment {
|
|
600
|
+
readonly name: 'account.payment';
|
|
601
|
+
readonly fields: {
|
|
602
|
+
readonly id: F.Id<'account.payment'>;
|
|
603
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
604
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
605
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
606
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
607
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
608
|
+
readonly company: F.Many2one<'res.company', { readonly required: true; readonly default: true }>;
|
|
609
|
+
readonly name: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
610
|
+
readonly kind: F.Selection<'inbound' | 'outbound', { readonly required: true; readonly default: true }>;
|
|
611
|
+
readonly partner: F.Many2one<'res.partner', { readonly required: true }>;
|
|
612
|
+
readonly journal: F.Many2one<'account.journal', { readonly required: true }>;
|
|
613
|
+
readonly date: F.DateOnly<{ readonly required: true; readonly default: true }>;
|
|
614
|
+
readonly currency: F.Many2one<'res.currency', { readonly required: true }>;
|
|
615
|
+
readonly amount: F.Monetary<'currency', { readonly required: true }>;
|
|
616
|
+
readonly memo: F.Char;
|
|
617
|
+
readonly documents: F.Many2many<'account.move', { readonly required: true }>;
|
|
618
|
+
readonly withholdings: F.One2many<'account.payment.withholding', { readonly required: true }>;
|
|
619
|
+
readonly amountWithheld: F.Monetary<'currency', { readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
620
|
+
readonly move: F.Many2one<'account.move'>;
|
|
621
|
+
readonly state: F.State<'draft' | 'posted' | 'cancel', { readonly required: true; readonly readonly: true; readonly default: true }>;
|
|
622
|
+
};
|
|
623
|
+
readonly methods: AccountPaymentMethods;
|
|
624
|
+
}
|
|
625
|
+
|
|
626
|
+
/** Methods of `account.payment`: declared ones and transitions. */
|
|
627
|
+
export interface AccountPaymentMethods extends F.Methods<typeof import('../../accounting/index.js').accountingShutro, 'account.payment'> {
|
|
628
|
+
readonly 'cancel': () => Promise<void>;
|
|
629
|
+
readonly 'post': () => Promise<void>;
|
|
630
|
+
readonly 'redraft': () => Promise<void>;
|
|
631
|
+
}
|
|
632
|
+
|
|
633
|
+
/** `account.payment.term` (owner: accounting). */
|
|
634
|
+
export interface AccountPaymentTerm {
|
|
635
|
+
readonly name: 'account.payment.term';
|
|
636
|
+
readonly fields: {
|
|
637
|
+
readonly id: F.Id<'account.payment.term'>;
|
|
638
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
639
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
640
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
641
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
642
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
643
|
+
readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
644
|
+
readonly name: F.Char<{ readonly required: true; readonly translate: true }>;
|
|
645
|
+
readonly note: F.Text;
|
|
646
|
+
readonly lines: F.One2many<'account.payment.term.line', { readonly required: true }>;
|
|
647
|
+
};
|
|
648
|
+
readonly methods: AccountPaymentTermMethods;
|
|
649
|
+
}
|
|
650
|
+
|
|
651
|
+
/** Methods of `account.payment.term`: declared ones and transitions. */
|
|
652
|
+
export interface AccountPaymentTermMethods extends F.Methods<typeof import('../../accounting/index.js').accountingShutro, 'account.payment.term'> {
|
|
653
|
+
}
|
|
654
|
+
|
|
655
|
+
/** `account.payment.term.line` (owner: accounting). */
|
|
656
|
+
export interface AccountPaymentTermLine {
|
|
657
|
+
readonly name: 'account.payment.term.line';
|
|
658
|
+
readonly fields: {
|
|
659
|
+
readonly id: F.Id<'account.payment.term.line'>;
|
|
660
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
661
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
662
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
663
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
664
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
665
|
+
readonly term: F.Many2one<'account.payment.term', { readonly required: true }>;
|
|
666
|
+
readonly days: F.Integer<{ readonly required: true; readonly default: true }>;
|
|
667
|
+
readonly percent: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
668
|
+
};
|
|
669
|
+
readonly methods: AccountPaymentTermLineMethods;
|
|
670
|
+
}
|
|
671
|
+
|
|
672
|
+
/** Methods of `account.payment.term.line`: declared ones and transitions. */
|
|
673
|
+
export interface AccountPaymentTermLineMethods extends F.Methods<typeof import('../../accounting/index.js').accountingShutro, 'account.payment.term.line'> {
|
|
674
|
+
}
|
|
675
|
+
|
|
676
|
+
/** `account.payment.withholding` (owner: accounting). */
|
|
677
|
+
export interface AccountPaymentWithholding {
|
|
678
|
+
readonly name: 'account.payment.withholding';
|
|
679
|
+
readonly fields: {
|
|
680
|
+
readonly id: F.Id<'account.payment.withholding'>;
|
|
681
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
682
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
683
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
684
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
685
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
686
|
+
readonly payment: F.Many2one<'account.payment', { readonly required: true }>;
|
|
687
|
+
readonly withholding: F.Many2one<'account.withholding', { readonly required: true }>;
|
|
688
|
+
readonly currency: F.Many2one<'res.currency', { readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
689
|
+
readonly base: F.Monetary<'currency'>;
|
|
690
|
+
readonly amount: F.Monetary<'currency', { readonly required: true }>;
|
|
691
|
+
};
|
|
692
|
+
readonly methods: AccountPaymentWithholdingMethods;
|
|
693
|
+
}
|
|
694
|
+
|
|
695
|
+
/** Methods of `account.payment.withholding`: declared ones and transitions. */
|
|
696
|
+
export interface AccountPaymentWithholdingMethods extends F.Methods<typeof import('../../accounting/index.js').accountingShutro, 'account.payment.withholding'> {
|
|
697
|
+
}
|
|
698
|
+
|
|
699
|
+
/** `account.reconcile.rule` (owner: accounting). */
|
|
700
|
+
export interface AccountReconcileRule {
|
|
701
|
+
readonly name: 'account.reconcile.rule';
|
|
702
|
+
readonly fields: {
|
|
703
|
+
readonly id: F.Id<'account.reconcile.rule'>;
|
|
704
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
705
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
706
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
707
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
708
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
709
|
+
readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
710
|
+
readonly company: F.Many2one<'res.company', { readonly required: true; readonly default: true }>;
|
|
711
|
+
readonly name: F.Char<{ readonly required: true }>;
|
|
712
|
+
readonly sequence: F.Integer<{ readonly default: true }>;
|
|
713
|
+
readonly journals: F.Many2many<'account.journal', { readonly required: true }>;
|
|
714
|
+
readonly labelContains: F.Char;
|
|
715
|
+
readonly direction: F.Selection<'both' | 'in' | 'out', { readonly required: true; readonly default: true }>;
|
|
716
|
+
readonly amountMin: F.Decimal;
|
|
717
|
+
readonly amountMax: F.Decimal;
|
|
718
|
+
readonly partner: F.Many2one<'res.partner'>;
|
|
719
|
+
readonly outcome: F.Selection<'match' | 'write_off' | 'suggest', { readonly required: true; readonly default: true }>;
|
|
720
|
+
readonly writeOffAccount: F.Many2one<'account.account'>;
|
|
721
|
+
readonly writeOffLabel: F.Char;
|
|
722
|
+
readonly hits: F.Integer<{ readonly default: true }>;
|
|
723
|
+
};
|
|
724
|
+
readonly methods: AccountReconcileRuleMethods;
|
|
725
|
+
}
|
|
726
|
+
|
|
727
|
+
/** Methods of `account.reconcile.rule`: declared ones and transitions. */
|
|
728
|
+
export interface AccountReconcileRuleMethods extends F.Methods<typeof import('../../accounting/index.js').accountingShutro, 'account.reconcile.rule'> {
|
|
729
|
+
}
|
|
730
|
+
|
|
731
|
+
/** `account.tax` (owner: product; extended by: accounting). */
|
|
732
|
+
export interface AccountTax {
|
|
733
|
+
readonly name: 'account.tax';
|
|
734
|
+
readonly fields: {
|
|
735
|
+
readonly id: F.Id<'account.tax'>;
|
|
736
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
737
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
738
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
739
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
740
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
741
|
+
readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
742
|
+
readonly name: F.Char<{ readonly required: true; readonly translate: true }>;
|
|
743
|
+
readonly use: F.Selection<'sale' | 'purchase', { readonly required: true; readonly default: true }>;
|
|
744
|
+
readonly sequence: F.Integer<{ readonly required: true; readonly default: true }>;
|
|
745
|
+
readonly amountType: F.Selection<'percent' | 'fixed', { readonly required: true; readonly default: true }>;
|
|
746
|
+
readonly rate: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
747
|
+
readonly fixedAmount: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
748
|
+
readonly affectsBase: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
749
|
+
readonly priceIncluded: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
750
|
+
readonly reverseCharge: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
751
|
+
readonly account: F.Many2one<'account.account'>; // accounting
|
|
752
|
+
readonly refundAccount: F.Many2one<'account.account'>; // accounting
|
|
753
|
+
readonly reverseChargeAccount: F.Many2one<'account.account'>; // accounting
|
|
754
|
+
readonly components: F.One2many<'account.tax.component', { readonly required: true }>; // accounting
|
|
755
|
+
};
|
|
756
|
+
readonly methods: AccountTaxMethods;
|
|
757
|
+
}
|
|
758
|
+
|
|
759
|
+
/** Methods of `account.tax`: declared ones and transitions. */
|
|
760
|
+
export interface AccountTaxMethods extends F.Methods<typeof import('../../product/index.js').productShutro, 'account.tax'>, F.Methods<typeof import('../../accounting/index.js').accountingShutro, 'account.tax'> {
|
|
761
|
+
}
|
|
762
|
+
|
|
763
|
+
/** `account.tax.component` (owner: accounting). */
|
|
764
|
+
export interface AccountTaxComponent {
|
|
765
|
+
readonly name: 'account.tax.component';
|
|
766
|
+
readonly fields: {
|
|
767
|
+
readonly id: F.Id<'account.tax.component'>;
|
|
768
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
769
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
770
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
771
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
772
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
773
|
+
readonly tax: F.Many2one<'account.tax', { readonly required: true }>;
|
|
774
|
+
readonly sequence: F.Integer<{ readonly required: true; readonly default: true }>;
|
|
775
|
+
readonly name: F.Char<{ readonly required: true; readonly translate: true }>;
|
|
776
|
+
readonly share: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
777
|
+
readonly scope: F.Selection<'always' | 'intra' | 'inter', { readonly required: true; readonly default: true }>;
|
|
778
|
+
readonly code: F.Char;
|
|
779
|
+
readonly account: F.Many2one<'account.account'>;
|
|
780
|
+
readonly refundAccount: F.Many2one<'account.account'>;
|
|
781
|
+
readonly reverseChargeAccount: F.Many2one<'account.account'>;
|
|
782
|
+
};
|
|
783
|
+
readonly methods: AccountTaxComponentMethods;
|
|
784
|
+
}
|
|
785
|
+
|
|
786
|
+
/** Methods of `account.tax.component`: declared ones and transitions. */
|
|
787
|
+
export interface AccountTaxComponentMethods extends F.Methods<typeof import('../../accounting/index.js').accountingShutro, 'account.tax.component'> {
|
|
788
|
+
}
|
|
789
|
+
|
|
790
|
+
/** `account.withholding` (owner: accounting). */
|
|
791
|
+
export interface AccountWithholding {
|
|
792
|
+
readonly name: 'account.withholding';
|
|
793
|
+
readonly fields: {
|
|
794
|
+
readonly id: F.Id<'account.withholding'>;
|
|
795
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
796
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
797
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
798
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
799
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
800
|
+
readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
801
|
+
readonly company: F.Many2one<'res.company', { readonly required: true; readonly default: true }>;
|
|
802
|
+
readonly name: F.Char<{ readonly required: true; readonly translate: true }>;
|
|
803
|
+
readonly sequence: F.Integer<{ readonly required: true; readonly default: true }>;
|
|
804
|
+
readonly direction: F.Selection<'vendor' | 'customer', { readonly required: true; readonly default: true }>;
|
|
805
|
+
readonly base: F.Selection<'untaxed' | 'tax' | 'total', { readonly required: true; readonly default: true }>;
|
|
806
|
+
readonly rate: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
807
|
+
readonly threshold: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
808
|
+
readonly account: F.Many2one<'account.account', { readonly required: true }>;
|
|
809
|
+
};
|
|
810
|
+
readonly methods: AccountWithholdingMethods;
|
|
811
|
+
}
|
|
812
|
+
|
|
813
|
+
/** Methods of `account.withholding`: declared ones and transitions. */
|
|
814
|
+
export interface AccountWithholdingMethods extends F.Methods<typeof import('../../accounting/index.js').accountingShutro, 'account.withholding'> {
|
|
815
|
+
}
|
|
816
|
+
|
|
817
|
+
/** `approval.delegation` (owner: permissions). */
|
|
818
|
+
export interface ApprovalDelegation {
|
|
819
|
+
readonly name: 'approval.delegation';
|
|
820
|
+
readonly fields: {
|
|
821
|
+
readonly id: F.Id<'approval.delegation'>;
|
|
822
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
823
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
824
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
825
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
826
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
827
|
+
readonly user: F.Many2one<'res.users', { readonly required: true; readonly default: true }>;
|
|
828
|
+
readonly delegate: F.Many2one<'res.users', { readonly required: true }>;
|
|
829
|
+
readonly dateFrom: F.DateOnly<{ readonly required: true }>;
|
|
830
|
+
readonly dateTo: F.DateOnly<{ readonly required: true }>;
|
|
831
|
+
readonly note: F.Char;
|
|
832
|
+
};
|
|
833
|
+
readonly methods: ApprovalDelegationMethods;
|
|
834
|
+
}
|
|
835
|
+
|
|
836
|
+
/** Methods of `approval.delegation`: declared ones and transitions. */
|
|
837
|
+
export interface ApprovalDelegationMethods extends F.Methods<typeof import('../../permissions/index.js').permissionsShutro, 'approval.delegation'> {
|
|
838
|
+
}
|
|
839
|
+
|
|
840
|
+
/** `approval.event` (owner: permissions). */
|
|
841
|
+
export interface ApprovalEvent {
|
|
842
|
+
readonly name: 'approval.event';
|
|
843
|
+
readonly fields: {
|
|
844
|
+
readonly id: F.Id<'approval.event'>;
|
|
845
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
846
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
847
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
848
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
849
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
850
|
+
readonly request: F.Many2one<'approval.request', { readonly required: true }>;
|
|
851
|
+
readonly at: F.Datetime<{ readonly required: true }>;
|
|
852
|
+
readonly user: F.Many2one<'res.users'>;
|
|
853
|
+
readonly kind: F.Selection<'created' | 'started' | 'voted' | 'approved' | 'rejected' | 'sent_back' | 'cancelled' | 'skipped' | 'reminded' | 'escalated' | 'auto' | 'reassigned' | 'synced' | 'notified', { readonly required: true }>;
|
|
854
|
+
readonly note: F.Text;
|
|
855
|
+
};
|
|
856
|
+
readonly methods: ApprovalEventMethods;
|
|
857
|
+
}
|
|
858
|
+
|
|
859
|
+
/** Methods of `approval.event`: declared ones and transitions. */
|
|
860
|
+
export interface ApprovalEventMethods extends F.Methods<typeof import('../../permissions/index.js').permissionsShutro, 'approval.event'> {
|
|
861
|
+
}
|
|
862
|
+
|
|
863
|
+
/** `approval.level` (owner: permissions). */
|
|
864
|
+
export interface ApprovalLevel {
|
|
865
|
+
readonly name: 'approval.level';
|
|
866
|
+
readonly fields: {
|
|
867
|
+
readonly id: F.Id<'approval.level'>;
|
|
868
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
869
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
870
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
871
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
872
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
873
|
+
readonly policy: F.Many2one<'approval.policy', { readonly required: true }>;
|
|
874
|
+
readonly sequence: F.Integer<{ readonly default: true }>;
|
|
875
|
+
readonly name: F.Char<{ readonly required: true }>;
|
|
876
|
+
readonly condition: F.Json;
|
|
877
|
+
readonly approverKind: F.Selection<'role' | 'users' | 'manager' | 'department_head' | 'department_approvers' | 'employee' | 'field' | 'record', { readonly required: true; readonly default: true }>;
|
|
878
|
+
readonly extraUsers: F.Many2many<'res.users', { readonly required: true }>;
|
|
879
|
+
readonly backupUsers: F.Many2many<'res.users', { readonly required: true }>;
|
|
880
|
+
readonly approverRole: F.Char;
|
|
881
|
+
readonly approverUsers: F.Many2many<'res.users', { readonly required: true }>;
|
|
882
|
+
readonly approverField: F.Char;
|
|
883
|
+
readonly quorum: F.Selection<'any' | 'all' | 'count', { readonly required: true; readonly default: true }>;
|
|
884
|
+
readonly quorumCount: F.Integer;
|
|
885
|
+
readonly deadlineHours: F.Integer;
|
|
886
|
+
readonly escalateRole: F.Char;
|
|
887
|
+
};
|
|
888
|
+
readonly methods: ApprovalLevelMethods;
|
|
889
|
+
}
|
|
890
|
+
|
|
891
|
+
/** Methods of `approval.level`: declared ones and transitions. */
|
|
892
|
+
export interface ApprovalLevelMethods extends F.Methods<typeof import('../../permissions/index.js').permissionsShutro, 'approval.level'> {
|
|
893
|
+
}
|
|
894
|
+
|
|
895
|
+
/** `approval.link` (owner: permissions). */
|
|
896
|
+
export interface ApprovalLink {
|
|
897
|
+
readonly name: 'approval.link';
|
|
898
|
+
readonly fields: {
|
|
899
|
+
readonly id: F.Id<'approval.link'>;
|
|
900
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
901
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
902
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
903
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
904
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
905
|
+
readonly request: F.Many2one<'approval.request', { readonly required: true }>;
|
|
906
|
+
readonly user: F.Many2one<'res.users', { readonly required: true }>;
|
|
907
|
+
readonly tokenHash: F.Char<{ readonly required: true }>;
|
|
908
|
+
readonly expiresAt: F.Datetime<{ readonly required: true }>;
|
|
909
|
+
readonly usedAt: F.Datetime;
|
|
910
|
+
};
|
|
911
|
+
readonly methods: ApprovalLinkMethods;
|
|
912
|
+
}
|
|
913
|
+
|
|
914
|
+
/** Methods of `approval.link`: declared ones and transitions. */
|
|
915
|
+
export interface ApprovalLinkMethods extends F.Methods<typeof import('../../permissions/index.js').permissionsShutro, 'approval.link'> {
|
|
916
|
+
}
|
|
917
|
+
|
|
918
|
+
/** `approval.policy` (owner: permissions). */
|
|
919
|
+
export interface ApprovalPolicy {
|
|
920
|
+
readonly name: 'approval.policy';
|
|
921
|
+
readonly fields: {
|
|
922
|
+
readonly id: F.Id<'approval.policy'>;
|
|
923
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
924
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
925
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
926
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
927
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
928
|
+
readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
929
|
+
readonly name: F.Char<{ readonly required: true }>;
|
|
930
|
+
readonly targetModel: F.Char<{ readonly required: true }>;
|
|
931
|
+
readonly sequence: F.Integer<{ readonly default: true }>;
|
|
932
|
+
readonly company: F.Many2one<'res.company'>;
|
|
933
|
+
readonly companies: F.Many2many<'res.company', { readonly required: true }>;
|
|
934
|
+
readonly segment: F.Many2one<'res.segment'>;
|
|
935
|
+
readonly onApproved: F.Char;
|
|
936
|
+
readonly onRejected: F.Char;
|
|
937
|
+
readonly onSentBack: F.Char;
|
|
938
|
+
readonly onWithdrawn: F.Char;
|
|
939
|
+
readonly reasonRequired: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
940
|
+
readonly condition: F.Json;
|
|
941
|
+
readonly whenNobody: F.Selection<'refuse' | 'admins' | 'skip', { readonly required: true; readonly default: true }>;
|
|
942
|
+
readonly skipDuplicates: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
943
|
+
readonly syncPending: F.Selection<'off' | 'add' | 'replace', { readonly required: true; readonly default: true }>;
|
|
944
|
+
readonly notifyOnSync: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
945
|
+
readonly levels: F.One2many<'approval.level', { readonly required: true }>;
|
|
946
|
+
};
|
|
947
|
+
readonly methods: ApprovalPolicyMethods;
|
|
948
|
+
}
|
|
949
|
+
|
|
950
|
+
/** Methods of `approval.policy`: declared ones and transitions. */
|
|
951
|
+
export interface ApprovalPolicyMethods extends F.Methods<typeof import('../../permissions/index.js').permissionsShutro, 'approval.policy'> {
|
|
952
|
+
}
|
|
953
|
+
|
|
954
|
+
/** `approval.request` (owner: permissions). */
|
|
955
|
+
export interface ApprovalRequest {
|
|
956
|
+
readonly name: 'approval.request';
|
|
957
|
+
readonly fields: {
|
|
958
|
+
readonly id: F.Id<'approval.request'>;
|
|
959
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
960
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
961
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
962
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
963
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
964
|
+
readonly policy: F.Many2one<'approval.policy'>;
|
|
965
|
+
readonly level: F.Many2one<'approval.level'>;
|
|
966
|
+
readonly levelName: F.Char<{ readonly required: true }>;
|
|
967
|
+
readonly sequence: F.Integer<{ readonly required: true }>;
|
|
968
|
+
readonly targetModel: F.Char<{ readonly required: true }>;
|
|
969
|
+
readonly targetId: F.Integer<{ readonly required: true }>;
|
|
970
|
+
readonly company: F.Many2one<'res.company'>;
|
|
971
|
+
readonly approverRole: F.Char;
|
|
972
|
+
readonly approvers: F.Many2many<'res.users', { readonly required: true }>;
|
|
973
|
+
readonly backups: F.Many2many<'res.users', { readonly required: true }>;
|
|
974
|
+
readonly required: F.Integer<{ readonly required: true; readonly default: true }>;
|
|
975
|
+
readonly round: F.Integer<{ readonly required: true; readonly default: true }>;
|
|
976
|
+
readonly votes: F.One2many<'approval.vote', { readonly required: true }>;
|
|
977
|
+
readonly dueAt: F.Datetime;
|
|
978
|
+
readonly remindedAt: F.Datetime;
|
|
979
|
+
readonly escalatedTo: F.Char;
|
|
980
|
+
readonly escalatedAt: F.Datetime;
|
|
981
|
+
readonly startedAt: F.Datetime;
|
|
982
|
+
readonly explanation: F.Text;
|
|
983
|
+
readonly state: F.Selection<'pending' | 'approved' | 'rejected' | 'sent_back' | 'cancelled', { readonly required: true; readonly default: true }>;
|
|
984
|
+
readonly requestedBy: F.Many2one<'res.users'>;
|
|
985
|
+
readonly decidedBy: F.Many2one<'res.users'>;
|
|
986
|
+
readonly decidedAt: F.Datetime;
|
|
987
|
+
readonly comment: F.Text;
|
|
988
|
+
};
|
|
989
|
+
readonly methods: ApprovalRequestMethods;
|
|
990
|
+
}
|
|
991
|
+
|
|
992
|
+
/** Methods of `approval.request`: declared ones and transitions. */
|
|
993
|
+
export interface ApprovalRequestMethods extends F.Methods<typeof import('../../permissions/index.js').permissionsShutro, 'approval.request'> {
|
|
994
|
+
}
|
|
995
|
+
|
|
996
|
+
/** `approval.vote` (owner: permissions). */
|
|
997
|
+
export interface ApprovalVote {
|
|
998
|
+
readonly name: 'approval.vote';
|
|
999
|
+
readonly fields: {
|
|
1000
|
+
readonly id: F.Id<'approval.vote'>;
|
|
1001
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1002
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1003
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1004
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1005
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
1006
|
+
readonly request: F.Many2one<'approval.request', { readonly required: true }>;
|
|
1007
|
+
readonly user: F.Many2one<'res.users', { readonly required: true }>;
|
|
1008
|
+
readonly decision: F.Selection<'approve' | 'reject' | 'send_back', { readonly required: true }>;
|
|
1009
|
+
readonly comment: F.Text;
|
|
1010
|
+
readonly at: F.Datetime<{ readonly required: true }>;
|
|
1011
|
+
readonly onBehalfOf: F.Many2one<'res.users'>;
|
|
1012
|
+
readonly ip: F.Char;
|
|
1013
|
+
readonly auto: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
1014
|
+
readonly asBackup: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
1015
|
+
};
|
|
1016
|
+
readonly methods: ApprovalVoteMethods;
|
|
1017
|
+
}
|
|
1018
|
+
|
|
1019
|
+
/** Methods of `approval.vote`: declared ones and transitions. */
|
|
1020
|
+
export interface ApprovalVoteMethods extends F.Methods<typeof import('../../permissions/index.js').permissionsShutro, 'approval.vote'> {
|
|
1021
|
+
}
|
|
1022
|
+
|
|
1023
|
+
/** `audit.event` (owner: base). */
|
|
1024
|
+
export interface AuditEvent {
|
|
1025
|
+
readonly name: 'audit.event';
|
|
1026
|
+
readonly fields: {
|
|
1027
|
+
readonly id: F.Id<'audit.event'>;
|
|
1028
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1029
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1030
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1031
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1032
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
1033
|
+
readonly kind: F.Char<{ readonly required: true }>;
|
|
1034
|
+
readonly actor: F.Many2one<'res.users'>;
|
|
1035
|
+
readonly company: F.Many2one<'res.company'>;
|
|
1036
|
+
readonly targetModel: F.Char;
|
|
1037
|
+
readonly targetId: F.Integer;
|
|
1038
|
+
readonly summary: F.Char<{ readonly required: true }>;
|
|
1039
|
+
readonly details: F.Json;
|
|
1040
|
+
readonly ip: F.Char;
|
|
1041
|
+
};
|
|
1042
|
+
readonly methods: AuditEventMethods;
|
|
1043
|
+
}
|
|
1044
|
+
|
|
1045
|
+
/** Methods of `audit.event`: declared ones and transitions. */
|
|
1046
|
+
export interface AuditEventMethods extends F.Methods<typeof import('../../server/index.js').baseShutro, 'audit.event'> {
|
|
1047
|
+
}
|
|
1048
|
+
|
|
1049
|
+
/** `auth.api_key` (owner: base). */
|
|
1050
|
+
export interface AuthApiKey {
|
|
1051
|
+
readonly name: 'auth.api_key';
|
|
1052
|
+
readonly fields: {
|
|
1053
|
+
readonly id: F.Id<'auth.api_key'>;
|
|
1054
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1055
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1056
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1057
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1058
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
1059
|
+
readonly name: F.Char<{ readonly required: true }>;
|
|
1060
|
+
readonly user: F.Many2one<'res.users', { readonly required: true }>;
|
|
1061
|
+
readonly tokenHash: F.Char<{ readonly required: true }>;
|
|
1062
|
+
readonly prefix: F.Char<{ readonly required: true }>;
|
|
1063
|
+
readonly scopes: F.Text<{ readonly required: true }>;
|
|
1064
|
+
readonly expiresAt: F.Datetime<{ readonly required: true }>;
|
|
1065
|
+
readonly lastUsedAt: F.Datetime;
|
|
1066
|
+
readonly lastUsedIp: F.Char;
|
|
1067
|
+
readonly revoked: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
1068
|
+
readonly issuedBy: F.Many2one<'res.users'>;
|
|
1069
|
+
};
|
|
1070
|
+
readonly methods: AuthApiKeyMethods;
|
|
1071
|
+
}
|
|
1072
|
+
|
|
1073
|
+
/** Methods of `auth.api_key`: declared ones and transitions. */
|
|
1074
|
+
export interface AuthApiKeyMethods extends F.Methods<typeof import('../../server/index.js').baseShutro, 'auth.api_key'> {
|
|
1075
|
+
}
|
|
1076
|
+
|
|
1077
|
+
/** `auth.credential` (owner: base). */
|
|
1078
|
+
export interface AuthCredential {
|
|
1079
|
+
readonly name: 'auth.credential';
|
|
1080
|
+
readonly fields: {
|
|
1081
|
+
readonly id: F.Id<'auth.credential'>;
|
|
1082
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1083
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1084
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1085
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1086
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
1087
|
+
readonly user: F.Many2one<'res.users', { readonly required: true }>;
|
|
1088
|
+
readonly passwordHash: F.Char;
|
|
1089
|
+
readonly totpSecret: F.Char;
|
|
1090
|
+
readonly totpEnabled: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
1091
|
+
readonly recoveryCodes: F.Json;
|
|
1092
|
+
};
|
|
1093
|
+
readonly methods: AuthCredentialMethods;
|
|
1094
|
+
}
|
|
1095
|
+
|
|
1096
|
+
/** Methods of `auth.credential`: declared ones and transitions. */
|
|
1097
|
+
export interface AuthCredentialMethods extends F.Methods<typeof import('../../server/index.js').baseShutro, 'auth.credential'> {
|
|
1098
|
+
}
|
|
1099
|
+
|
|
1100
|
+
/** `auth.policy` (owner: base). */
|
|
1101
|
+
export interface AuthPolicy {
|
|
1102
|
+
readonly name: 'auth.policy';
|
|
1103
|
+
readonly fields: {
|
|
1104
|
+
readonly id: F.Id<'auth.policy'>;
|
|
1105
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1106
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1107
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1108
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1109
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
1110
|
+
readonly twoFactor: F.Selection<'administrators' | 'everyone', { readonly required: true; readonly default: true }>;
|
|
1111
|
+
readonly sessionDays: F.Integer;
|
|
1112
|
+
};
|
|
1113
|
+
readonly methods: AuthPolicyMethods;
|
|
1114
|
+
}
|
|
1115
|
+
|
|
1116
|
+
/** Methods of `auth.policy`: declared ones and transitions. */
|
|
1117
|
+
export interface AuthPolicyMethods extends F.Methods<typeof import('../../server/index.js').baseShutro, 'auth.policy'> {
|
|
1118
|
+
}
|
|
1119
|
+
|
|
1120
|
+
/** `auth.session` (owner: base). */
|
|
1121
|
+
export interface AuthSession {
|
|
1122
|
+
readonly name: 'auth.session';
|
|
1123
|
+
readonly fields: {
|
|
1124
|
+
readonly id: F.Id<'auth.session'>;
|
|
1125
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1126
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1127
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1128
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1129
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
1130
|
+
readonly tokenHash: F.Char<{ readonly required: true }>;
|
|
1131
|
+
readonly csrfHash: F.Char<{ readonly required: true }>;
|
|
1132
|
+
readonly user: F.Many2one<'res.users', { readonly required: true }>;
|
|
1133
|
+
readonly twoFactorVerified: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
1134
|
+
readonly secondFactor: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
1135
|
+
readonly expiresAt: F.Datetime<{ readonly required: true }>;
|
|
1136
|
+
readonly lastSeenAt: F.Datetime<{ readonly required: true }>;
|
|
1137
|
+
readonly revoked: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
1138
|
+
readonly ip: F.Char;
|
|
1139
|
+
readonly userAgent: F.Char;
|
|
1140
|
+
};
|
|
1141
|
+
readonly methods: AuthSessionMethods;
|
|
1142
|
+
}
|
|
1143
|
+
|
|
1144
|
+
/** Methods of `auth.session`: declared ones and transitions. */
|
|
1145
|
+
export interface AuthSessionMethods extends F.Methods<typeof import('../../server/index.js').baseShutro, 'auth.session'> {
|
|
1146
|
+
}
|
|
1147
|
+
|
|
1148
|
+
/** `auth.user_grant` (owner: base). */
|
|
1149
|
+
export interface AuthUserGrant {
|
|
1150
|
+
readonly name: 'auth.user_grant';
|
|
1151
|
+
readonly fields: {
|
|
1152
|
+
readonly id: F.Id<'auth.user_grant'>;
|
|
1153
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1154
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1155
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1156
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1157
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
1158
|
+
readonly user: F.Many2one<'res.users', { readonly required: true }>;
|
|
1159
|
+
readonly company: F.Many2one<'res.company'>;
|
|
1160
|
+
readonly grant: F.Char<{ readonly required: true }>;
|
|
1161
|
+
readonly expiresAt: F.Datetime;
|
|
1162
|
+
readonly reason: F.Char<{ readonly required: true }>;
|
|
1163
|
+
};
|
|
1164
|
+
readonly methods: AuthUserGrantMethods;
|
|
1165
|
+
}
|
|
1166
|
+
|
|
1167
|
+
/** Methods of `auth.user_grant`: declared ones and transitions. */
|
|
1168
|
+
export interface AuthUserGrantMethods extends F.Methods<typeof import('../../server/index.js').baseShutro, 'auth.user_grant'> {
|
|
1169
|
+
}
|
|
1170
|
+
|
|
1171
|
+
/** `auth.user_group` (owner: base). */
|
|
1172
|
+
export interface AuthUserGroup {
|
|
1173
|
+
readonly name: 'auth.user_group';
|
|
1174
|
+
readonly fields: {
|
|
1175
|
+
readonly id: F.Id<'auth.user_group'>;
|
|
1176
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1177
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1178
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1179
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1180
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
1181
|
+
readonly user: F.Many2one<'res.users', { readonly required: true }>;
|
|
1182
|
+
readonly company: F.Many2one<'res.company'>;
|
|
1183
|
+
readonly group: F.Char<{ readonly required: true }>;
|
|
1184
|
+
};
|
|
1185
|
+
readonly methods: AuthUserGroupMethods;
|
|
1186
|
+
}
|
|
1187
|
+
|
|
1188
|
+
/** Methods of `auth.user_group`: declared ones and transitions. */
|
|
1189
|
+
export interface AuthUserGroupMethods extends F.Methods<typeof import('../../server/index.js').baseShutro, 'auth.user_group'> {
|
|
1190
|
+
}
|
|
1191
|
+
|
|
1192
|
+
/** `kosh.image` (owner: base). */
|
|
1193
|
+
export interface KoshImage {
|
|
1194
|
+
readonly name: 'kosh.image';
|
|
1195
|
+
readonly fields: {
|
|
1196
|
+
readonly id: F.Id<'kosh.image'>;
|
|
1197
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1198
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1199
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1200
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1201
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
1202
|
+
readonly ownerModel: F.Char<{ readonly required: true }>;
|
|
1203
|
+
readonly ownerId: F.Integer<{ readonly required: true }>;
|
|
1204
|
+
readonly mime: F.Char<{ readonly required: true }>;
|
|
1205
|
+
readonly data: F.Text<{ readonly required: true }>;
|
|
1206
|
+
readonly hash: F.Char<{ readonly required: true }>;
|
|
1207
|
+
};
|
|
1208
|
+
readonly methods: KoshImageMethods;
|
|
1209
|
+
}
|
|
1210
|
+
|
|
1211
|
+
/** Methods of `kosh.image`: declared ones and transitions. */
|
|
1212
|
+
export interface KoshImageMethods extends F.Methods<typeof import('../../server/index.js').baseShutro, 'kosh.image'> {
|
|
1213
|
+
}
|
|
1214
|
+
|
|
1215
|
+
/** `kosh.saved_view` (owner: base). */
|
|
1216
|
+
export interface KoshSavedView {
|
|
1217
|
+
readonly name: 'kosh.saved_view';
|
|
1218
|
+
readonly fields: {
|
|
1219
|
+
readonly id: F.Id<'kosh.saved_view'>;
|
|
1220
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1221
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1222
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1223
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1224
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
1225
|
+
readonly name: F.Char<{ readonly required: true }>;
|
|
1226
|
+
readonly targetModel: F.Char<{ readonly required: true }>;
|
|
1227
|
+
readonly viewType: F.Char<{ readonly required: true; readonly default: true }>;
|
|
1228
|
+
readonly state: F.Json<unknown, { readonly required: true }>;
|
|
1229
|
+
readonly shared: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
1230
|
+
readonly isDefault: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
1231
|
+
};
|
|
1232
|
+
readonly methods: KoshSavedViewMethods;
|
|
1233
|
+
}
|
|
1234
|
+
|
|
1235
|
+
/** Methods of `kosh.saved_view`: declared ones and transitions. */
|
|
1236
|
+
export interface KoshSavedViewMethods extends F.Methods<typeof import('../../server/index.js').baseShutro, 'kosh.saved_view'> {
|
|
1237
|
+
}
|
|
1238
|
+
|
|
1239
|
+
/** `kosh.setting` (owner: base). */
|
|
1240
|
+
export interface KoshSetting {
|
|
1241
|
+
readonly name: 'kosh.setting';
|
|
1242
|
+
readonly fields: {
|
|
1243
|
+
readonly id: F.Id<'kosh.setting'>;
|
|
1244
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1245
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1246
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1247
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1248
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
1249
|
+
readonly key: F.Char<{ readonly required: true }>;
|
|
1250
|
+
readonly value: F.Json;
|
|
1251
|
+
};
|
|
1252
|
+
readonly methods: KoshSettingMethods;
|
|
1253
|
+
}
|
|
1254
|
+
|
|
1255
|
+
/** Methods of `kosh.setting`: declared ones and transitions. */
|
|
1256
|
+
export interface KoshSettingMethods extends F.Methods<typeof import('../../server/index.js').baseShutro, 'kosh.setting'> {
|
|
1257
|
+
}
|
|
1258
|
+
|
|
1259
|
+
/** `mail.activity` (owner: messaging). */
|
|
1260
|
+
export interface MailActivity {
|
|
1261
|
+
readonly name: 'mail.activity';
|
|
1262
|
+
readonly fields: {
|
|
1263
|
+
readonly id: F.Id<'mail.activity'>;
|
|
1264
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1265
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1266
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1267
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1268
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
1269
|
+
readonly resModel: F.Char<{ readonly required: true }>;
|
|
1270
|
+
readonly resId: F.Integer<{ readonly required: true }>;
|
|
1271
|
+
readonly type: F.Many2one<'mail.activity.type', { readonly required: true }>;
|
|
1272
|
+
readonly summary: F.Char;
|
|
1273
|
+
readonly note: F.Text;
|
|
1274
|
+
readonly deadline: F.DateOnly<{ readonly required: true }>;
|
|
1275
|
+
readonly assignee: F.Many2one<'res.users', { readonly required: true }>;
|
|
1276
|
+
readonly done: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
1277
|
+
readonly doneAt: F.Datetime;
|
|
1278
|
+
readonly feedback: F.Text;
|
|
1279
|
+
};
|
|
1280
|
+
readonly methods: MailActivityMethods;
|
|
1281
|
+
}
|
|
1282
|
+
|
|
1283
|
+
/** Methods of `mail.activity`: declared ones and transitions. */
|
|
1284
|
+
export interface MailActivityMethods extends F.Methods<typeof import('../../messaging/index.js').messagingShutro, 'mail.activity'> {
|
|
1285
|
+
}
|
|
1286
|
+
|
|
1287
|
+
/** `mail.activity.type` (owner: messaging). */
|
|
1288
|
+
export interface MailActivityType {
|
|
1289
|
+
readonly name: 'mail.activity.type';
|
|
1290
|
+
readonly fields: {
|
|
1291
|
+
readonly id: F.Id<'mail.activity.type'>;
|
|
1292
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1293
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1294
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1295
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1296
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
1297
|
+
readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
1298
|
+
readonly name: F.Char<{ readonly required: true; readonly translate: true }>;
|
|
1299
|
+
readonly key: F.Char;
|
|
1300
|
+
readonly icon: F.Char<{ readonly default: true }>;
|
|
1301
|
+
readonly days: F.Integer<{ readonly default: true }>;
|
|
1302
|
+
readonly sequence: F.Integer<{ readonly default: true }>;
|
|
1303
|
+
};
|
|
1304
|
+
readonly methods: MailActivityTypeMethods;
|
|
1305
|
+
}
|
|
1306
|
+
|
|
1307
|
+
/** Methods of `mail.activity.type`: declared ones and transitions. */
|
|
1308
|
+
export interface MailActivityTypeMethods extends F.Methods<typeof import('../../messaging/index.js').messagingShutro, 'mail.activity.type'> {
|
|
1309
|
+
}
|
|
1310
|
+
|
|
1311
|
+
/** `mail.channel` (owner: messaging). */
|
|
1312
|
+
export interface MailChannel {
|
|
1313
|
+
readonly name: 'mail.channel';
|
|
1314
|
+
readonly fields: {
|
|
1315
|
+
readonly id: F.Id<'mail.channel'>;
|
|
1316
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1317
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1318
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1319
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1320
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
1321
|
+
readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
1322
|
+
readonly company: F.Many2one<'res.company', { readonly required: true; readonly default: true }>;
|
|
1323
|
+
readonly name: F.Char<{ readonly required: true }>;
|
|
1324
|
+
readonly kind: F.Selection<'channel' | 'group' | 'direct', { readonly required: true; readonly default: true }>;
|
|
1325
|
+
readonly description: F.Char;
|
|
1326
|
+
readonly public: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
1327
|
+
readonly members: F.One2many<'mail.channel.member', { readonly required: true }>;
|
|
1328
|
+
readonly pairKey: F.Char;
|
|
1329
|
+
readonly lastMessageAt: F.Datetime;
|
|
1330
|
+
};
|
|
1331
|
+
readonly methods: MailChannelMethods;
|
|
1332
|
+
}
|
|
1333
|
+
|
|
1334
|
+
/** Methods of `mail.channel`: declared ones and transitions. */
|
|
1335
|
+
export interface MailChannelMethods extends F.Methods<typeof import('../../messaging/index.js').messagingShutro, 'mail.channel'> {
|
|
1336
|
+
}
|
|
1337
|
+
|
|
1338
|
+
/** `mail.channel.member` (owner: messaging). */
|
|
1339
|
+
export interface MailChannelMember {
|
|
1340
|
+
readonly name: 'mail.channel.member';
|
|
1341
|
+
readonly fields: {
|
|
1342
|
+
readonly id: F.Id<'mail.channel.member'>;
|
|
1343
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1344
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1345
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1346
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1347
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
1348
|
+
readonly company: F.Many2one<'res.company', { readonly required: true; readonly default: true }>;
|
|
1349
|
+
readonly channel: F.Many2one<'mail.channel', { readonly required: true }>;
|
|
1350
|
+
readonly user: F.Many2one<'res.users', { readonly required: true }>;
|
|
1351
|
+
readonly lastReadMessage: F.Many2one<'mail.message'>;
|
|
1352
|
+
readonly muted: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
1353
|
+
readonly pinned: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
1354
|
+
};
|
|
1355
|
+
readonly methods: MailChannelMemberMethods;
|
|
1356
|
+
}
|
|
1357
|
+
|
|
1358
|
+
/** Methods of `mail.channel.member`: declared ones and transitions. */
|
|
1359
|
+
export interface MailChannelMemberMethods extends F.Methods<typeof import('../../messaging/index.js').messagingShutro, 'mail.channel.member'> {
|
|
1360
|
+
}
|
|
1361
|
+
|
|
1362
|
+
/** `mail.follower` (owner: messaging). */
|
|
1363
|
+
export interface MailFollower {
|
|
1364
|
+
readonly name: 'mail.follower';
|
|
1365
|
+
readonly fields: {
|
|
1366
|
+
readonly id: F.Id<'mail.follower'>;
|
|
1367
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1368
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1369
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1370
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1371
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
1372
|
+
readonly resModel: F.Char<{ readonly required: true }>;
|
|
1373
|
+
readonly resId: F.Integer<{ readonly required: true }>;
|
|
1374
|
+
readonly user: F.Many2one<'res.users', { readonly required: true }>;
|
|
1375
|
+
};
|
|
1376
|
+
readonly methods: MailFollowerMethods;
|
|
1377
|
+
}
|
|
1378
|
+
|
|
1379
|
+
/** Methods of `mail.follower`: declared ones and transitions. */
|
|
1380
|
+
export interface MailFollowerMethods extends F.Methods<typeof import('../../messaging/index.js').messagingShutro, 'mail.follower'> {
|
|
1381
|
+
}
|
|
1382
|
+
|
|
1383
|
+
/** `mail.message` (owner: messaging). */
|
|
1384
|
+
export interface MailMessage {
|
|
1385
|
+
readonly name: 'mail.message';
|
|
1386
|
+
readonly fields: {
|
|
1387
|
+
readonly id: F.Id<'mail.message'>;
|
|
1388
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1389
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1390
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1391
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1392
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
1393
|
+
readonly resModel: F.Char<{ readonly required: true }>;
|
|
1394
|
+
readonly resId: F.Integer<{ readonly required: true }>;
|
|
1395
|
+
readonly kind: F.Selection<'comment' | 'note' | 'activity' | 'system', { readonly required: true; readonly default: true }>;
|
|
1396
|
+
readonly author: F.Many2one<'res.users'>;
|
|
1397
|
+
readonly authorEmail: F.Char;
|
|
1398
|
+
readonly authorName: F.Char;
|
|
1399
|
+
readonly text: F.Text<{ readonly required: true }>;
|
|
1400
|
+
readonly body: F.Text<{ readonly required: true }>;
|
|
1401
|
+
readonly mentions: F.Many2many<'res.users', { readonly required: true }>;
|
|
1402
|
+
readonly attachments: F.Many2many<'storage.attachment', { readonly required: true }>;
|
|
1403
|
+
readonly editedAt: F.Datetime;
|
|
1404
|
+
readonly parent: F.Many2one<'mail.message'>;
|
|
1405
|
+
readonly replyCount: F.Integer<{ readonly required: true; readonly default: true }>;
|
|
1406
|
+
readonly reactions: F.One2many<'mail.message.reaction', { readonly required: true }>;
|
|
1407
|
+
readonly deletedAt: F.Datetime;
|
|
1408
|
+
};
|
|
1409
|
+
readonly methods: MailMessageMethods;
|
|
1410
|
+
}
|
|
1411
|
+
|
|
1412
|
+
/** Methods of `mail.message`: declared ones and transitions. */
|
|
1413
|
+
export interface MailMessageMethods extends F.Methods<typeof import('../../messaging/index.js').messagingShutro, 'mail.message'> {
|
|
1414
|
+
}
|
|
1415
|
+
|
|
1416
|
+
/** `mail.message.reaction` (owner: messaging). */
|
|
1417
|
+
export interface MailMessageReaction {
|
|
1418
|
+
readonly name: 'mail.message.reaction';
|
|
1419
|
+
readonly fields: {
|
|
1420
|
+
readonly id: F.Id<'mail.message.reaction'>;
|
|
1421
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1422
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1423
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1424
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1425
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
1426
|
+
readonly message: F.Many2one<'mail.message', { readonly required: true }>;
|
|
1427
|
+
readonly user: F.Many2one<'res.users', { readonly required: true }>;
|
|
1428
|
+
readonly emoji: F.Char<{ readonly required: true }>;
|
|
1429
|
+
};
|
|
1430
|
+
readonly methods: MailMessageReactionMethods;
|
|
1431
|
+
}
|
|
1432
|
+
|
|
1433
|
+
/** Methods of `mail.message.reaction`: declared ones and transitions. */
|
|
1434
|
+
export interface MailMessageReactionMethods extends F.Methods<typeof import('../../messaging/index.js').messagingShutro, 'mail.message.reaction'> {
|
|
1435
|
+
}
|
|
1436
|
+
|
|
1437
|
+
/** `oauth.app` (owner: base). */
|
|
1438
|
+
export interface OauthApp {
|
|
1439
|
+
readonly name: 'oauth.app';
|
|
1440
|
+
readonly fields: {
|
|
1441
|
+
readonly id: F.Id<'oauth.app'>;
|
|
1442
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1443
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1444
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1445
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1446
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
1447
|
+
readonly name: F.Char<{ readonly required: true }>;
|
|
1448
|
+
readonly clientId: F.Char<{ readonly required: true }>;
|
|
1449
|
+
readonly secretHash: F.Char;
|
|
1450
|
+
readonly confidential: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
1451
|
+
readonly redirectUris: F.Text<{ readonly required: true }>;
|
|
1452
|
+
readonly scopes: F.Char<{ readonly required: true }>;
|
|
1453
|
+
readonly homepage: F.Char;
|
|
1454
|
+
readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
1455
|
+
readonly owner: F.Many2one<'res.users'>;
|
|
1456
|
+
};
|
|
1457
|
+
readonly methods: OauthAppMethods;
|
|
1458
|
+
}
|
|
1459
|
+
|
|
1460
|
+
/** Methods of `oauth.app`: declared ones and transitions. */
|
|
1461
|
+
export interface OauthAppMethods extends F.Methods<typeof import('../../server/index.js').baseShutro, 'oauth.app'> {
|
|
1462
|
+
}
|
|
1463
|
+
|
|
1464
|
+
/** `oauth.code` (owner: base). */
|
|
1465
|
+
export interface OauthCode {
|
|
1466
|
+
readonly name: 'oauth.code';
|
|
1467
|
+
readonly fields: {
|
|
1468
|
+
readonly id: F.Id<'oauth.code'>;
|
|
1469
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1470
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1471
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1472
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1473
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
1474
|
+
readonly codeHash: F.Char<{ readonly required: true }>;
|
|
1475
|
+
readonly grant: F.Many2one<'oauth.grant', { readonly required: true }>;
|
|
1476
|
+
readonly redirectUri: F.Char<{ readonly required: true }>;
|
|
1477
|
+
readonly challenge: F.Char;
|
|
1478
|
+
readonly expiresAt: F.Datetime<{ readonly required: true }>;
|
|
1479
|
+
readonly used: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
1480
|
+
};
|
|
1481
|
+
readonly methods: OauthCodeMethods;
|
|
1482
|
+
}
|
|
1483
|
+
|
|
1484
|
+
/** Methods of `oauth.code`: declared ones and transitions. */
|
|
1485
|
+
export interface OauthCodeMethods extends F.Methods<typeof import('../../server/index.js').baseShutro, 'oauth.code'> {
|
|
1486
|
+
}
|
|
1487
|
+
|
|
1488
|
+
/** `oauth.grant` (owner: base). */
|
|
1489
|
+
export interface OauthGrant {
|
|
1490
|
+
readonly name: 'oauth.grant';
|
|
1491
|
+
readonly fields: {
|
|
1492
|
+
readonly id: F.Id<'oauth.grant'>;
|
|
1493
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1494
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1495
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1496
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1497
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
1498
|
+
readonly user: F.Many2one<'res.users', { readonly required: true }>;
|
|
1499
|
+
readonly app: F.Many2one<'oauth.app', { readonly required: true }>;
|
|
1500
|
+
readonly scopes: F.Char<{ readonly required: true }>;
|
|
1501
|
+
readonly revoked: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
1502
|
+
readonly lastUsedAt: F.Datetime;
|
|
1503
|
+
};
|
|
1504
|
+
readonly methods: OauthGrantMethods;
|
|
1505
|
+
}
|
|
1506
|
+
|
|
1507
|
+
/** Methods of `oauth.grant`: declared ones and transitions. */
|
|
1508
|
+
export interface OauthGrantMethods extends F.Methods<typeof import('../../server/index.js').baseShutro, 'oauth.grant'> {
|
|
1509
|
+
}
|
|
1510
|
+
|
|
1511
|
+
/** `oauth.token` (owner: base). */
|
|
1512
|
+
export interface OauthToken {
|
|
1513
|
+
readonly name: 'oauth.token';
|
|
1514
|
+
readonly fields: {
|
|
1515
|
+
readonly id: F.Id<'oauth.token'>;
|
|
1516
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1517
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1518
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1519
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1520
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
1521
|
+
readonly grant: F.Many2one<'oauth.grant', { readonly required: true }>;
|
|
1522
|
+
readonly accessHash: F.Char<{ readonly required: true }>;
|
|
1523
|
+
readonly refreshHash: F.Char<{ readonly required: true }>;
|
|
1524
|
+
readonly accessExpiresAt: F.Datetime<{ readonly required: true }>;
|
|
1525
|
+
readonly refreshExpiresAt: F.Datetime<{ readonly required: true }>;
|
|
1526
|
+
readonly revoked: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
1527
|
+
readonly rotated: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
1528
|
+
};
|
|
1529
|
+
readonly methods: OauthTokenMethods;
|
|
1530
|
+
}
|
|
1531
|
+
|
|
1532
|
+
/** Methods of `oauth.token`: declared ones and transitions. */
|
|
1533
|
+
export interface OauthTokenMethods extends F.Methods<typeof import('../../server/index.js').baseShutro, 'oauth.token'> {
|
|
1534
|
+
}
|
|
1535
|
+
|
|
1536
|
+
/** `product.attribute` (owner: product). */
|
|
1537
|
+
export interface ProductAttribute {
|
|
1538
|
+
readonly name: 'product.attribute';
|
|
1539
|
+
readonly fields: {
|
|
1540
|
+
readonly id: F.Id<'product.attribute'>;
|
|
1541
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1542
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1543
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1544
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1545
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
1546
|
+
readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
1547
|
+
readonly name: F.Char<{ readonly required: true; readonly translate: true }>;
|
|
1548
|
+
readonly display: F.Selection<'list' | 'radio' | 'swatch' | 'size', { readonly required: true; readonly default: true }>;
|
|
1549
|
+
readonly sequence: F.Integer<{ readonly required: true; readonly default: true }>;
|
|
1550
|
+
readonly values: F.One2many<'product.attribute.value', { readonly required: true }>;
|
|
1551
|
+
};
|
|
1552
|
+
readonly methods: ProductAttributeMethods;
|
|
1553
|
+
}
|
|
1554
|
+
|
|
1555
|
+
/** Methods of `product.attribute`: declared ones and transitions. */
|
|
1556
|
+
export interface ProductAttributeMethods extends F.Methods<typeof import('../../product/index.js').productShutro, 'product.attribute'> {
|
|
1557
|
+
}
|
|
1558
|
+
|
|
1559
|
+
/** `product.attribute.value` (owner: product). */
|
|
1560
|
+
export interface ProductAttributeValue {
|
|
1561
|
+
readonly name: 'product.attribute.value';
|
|
1562
|
+
readonly fields: {
|
|
1563
|
+
readonly id: F.Id<'product.attribute.value'>;
|
|
1564
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1565
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1566
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1567
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1568
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
1569
|
+
readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
1570
|
+
readonly attribute: F.Many2one<'product.attribute', { readonly required: true }>;
|
|
1571
|
+
readonly name: F.Char<{ readonly required: true; readonly translate: true }>;
|
|
1572
|
+
readonly color: F.Char;
|
|
1573
|
+
readonly sequence: F.Integer<{ readonly required: true; readonly default: true }>;
|
|
1574
|
+
readonly extraPrice: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
1575
|
+
};
|
|
1576
|
+
readonly methods: ProductAttributeValueMethods;
|
|
1577
|
+
}
|
|
1578
|
+
|
|
1579
|
+
/** Methods of `product.attribute.value`: declared ones and transitions. */
|
|
1580
|
+
export interface ProductAttributeValueMethods extends F.Methods<typeof import('../../product/index.js').productShutro, 'product.attribute.value'> {
|
|
1581
|
+
}
|
|
1582
|
+
|
|
1583
|
+
/** `product.category` (owner: product; extended by: accounting, stock_account). */
|
|
1584
|
+
export interface ProductCategory {
|
|
1585
|
+
readonly name: 'product.category';
|
|
1586
|
+
readonly fields: {
|
|
1587
|
+
readonly id: F.Id<'product.category'>;
|
|
1588
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1589
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1590
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1591
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1592
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
1593
|
+
readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
1594
|
+
readonly name: F.Char<{ readonly required: true; readonly translate: true }>;
|
|
1595
|
+
readonly parent: F.Many2one<'product.category'>;
|
|
1596
|
+
readonly approvalUsers: F.Many2many<'res.users', { readonly required: true }>;
|
|
1597
|
+
readonly incomeAccount: F.Many2one<'account.account'>; // accounting
|
|
1598
|
+
readonly expenseAccount: F.Many2one<'account.account'>; // accounting
|
|
1599
|
+
readonly costMethod: F.Selection<'average' | 'fifo'>; // stock_account
|
|
1600
|
+
readonly stockValuationAccount: F.Many2one<'account.account'>; // stock_account
|
|
1601
|
+
readonly stockCogsAccount: F.Many2one<'account.account'>; // stock_account
|
|
1602
|
+
};
|
|
1603
|
+
readonly methods: ProductCategoryMethods;
|
|
1604
|
+
}
|
|
1605
|
+
|
|
1606
|
+
/** Methods of `product.category`: declared ones and transitions. */
|
|
1607
|
+
export interface ProductCategoryMethods extends F.Methods<typeof import('../../product/index.js').productShutro, 'product.category'>, F.Methods<typeof import('../../accounting/index.js').accountingShutro, 'product.category'>, F.Methods<typeof import('../../stock_account/index.js').stockAccountShutro, 'product.category'> {
|
|
1608
|
+
}
|
|
1609
|
+
|
|
1610
|
+
/** `product.pricelist` (owner: product). */
|
|
1611
|
+
export interface ProductPricelist {
|
|
1612
|
+
readonly name: 'product.pricelist';
|
|
1613
|
+
readonly fields: {
|
|
1614
|
+
readonly id: F.Id<'product.pricelist'>;
|
|
1615
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1616
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1617
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1618
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1619
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
1620
|
+
readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
1621
|
+
readonly name: F.Char<{ readonly required: true; readonly translate: true }>;
|
|
1622
|
+
readonly sequence: F.Integer<{ readonly default: true }>;
|
|
1623
|
+
readonly currency: F.Many2one<'res.currency'>;
|
|
1624
|
+
readonly company: F.Many2one<'res.company'>;
|
|
1625
|
+
readonly rules: F.One2many<'product.pricelist.rule', { readonly required: true }>;
|
|
1626
|
+
readonly note: F.Text;
|
|
1627
|
+
};
|
|
1628
|
+
readonly methods: ProductPricelistMethods;
|
|
1629
|
+
}
|
|
1630
|
+
|
|
1631
|
+
/** Methods of `product.pricelist`: declared ones and transitions. */
|
|
1632
|
+
export interface ProductPricelistMethods extends F.Methods<typeof import('../../product/index.js').productShutro, 'product.pricelist'> {
|
|
1633
|
+
}
|
|
1634
|
+
|
|
1635
|
+
/** `product.pricelist.rule` (owner: product). */
|
|
1636
|
+
export interface ProductPricelistRule {
|
|
1637
|
+
readonly name: 'product.pricelist.rule';
|
|
1638
|
+
readonly fields: {
|
|
1639
|
+
readonly id: F.Id<'product.pricelist.rule'>;
|
|
1640
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1641
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1642
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1643
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1644
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
1645
|
+
readonly pricelist: F.Many2one<'product.pricelist', { readonly required: true }>;
|
|
1646
|
+
readonly sequence: F.Integer<{ readonly default: true }>;
|
|
1647
|
+
readonly appliesTo: F.Selection<'all' | 'category' | 'product', { readonly required: true; readonly default: true }>;
|
|
1648
|
+
readonly product: F.Many2one<'product.product'>;
|
|
1649
|
+
readonly category: F.Many2one<'product.category'>;
|
|
1650
|
+
readonly minQuantity: F.Decimal<{ readonly default: true }>;
|
|
1651
|
+
readonly dateFrom: F.DateOnly;
|
|
1652
|
+
readonly dateTo: F.DateOnly;
|
|
1653
|
+
readonly compute: F.Selection<'fixed' | 'discount' | 'formula', { readonly required: true; readonly default: true }>;
|
|
1654
|
+
readonly fixedPrice: F.Decimal;
|
|
1655
|
+
readonly base: F.Selection<'list' | 'cost' | 'pricelist', { readonly required: true; readonly default: true }>;
|
|
1656
|
+
readonly basePricelist: F.Many2one<'product.pricelist'>;
|
|
1657
|
+
readonly discount: F.Decimal<{ readonly default: true }>;
|
|
1658
|
+
readonly surcharge: F.Decimal<{ readonly default: true }>;
|
|
1659
|
+
readonly rounding: F.Decimal<{ readonly default: true }>;
|
|
1660
|
+
readonly minMargin: F.Decimal;
|
|
1661
|
+
readonly maxMargin: F.Decimal;
|
|
1662
|
+
};
|
|
1663
|
+
readonly methods: ProductPricelistRuleMethods;
|
|
1664
|
+
}
|
|
1665
|
+
|
|
1666
|
+
/** Methods of `product.pricelist.rule`: declared ones and transitions. */
|
|
1667
|
+
export interface ProductPricelistRuleMethods extends F.Methods<typeof import('../../product/index.js').productShutro, 'product.pricelist.rule'> {
|
|
1668
|
+
}
|
|
1669
|
+
|
|
1670
|
+
/** `product.product` (owner: product; extended by: accounting, stock, production, stock_account, stock_account). */
|
|
1671
|
+
export interface ProductProduct {
|
|
1672
|
+
readonly name: 'product.product';
|
|
1673
|
+
readonly fields: {
|
|
1674
|
+
readonly id: F.Id<'product.product'>;
|
|
1675
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1676
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1677
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1678
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1679
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
1680
|
+
readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
1681
|
+
readonly name: F.Char<{ readonly required: true; readonly translate: true }>;
|
|
1682
|
+
readonly code: F.Char<{ readonly readonly: true; readonly sequence: true }>;
|
|
1683
|
+
readonly kind: F.Selection<'goods' | 'service', { readonly required: true; readonly default: true }>;
|
|
1684
|
+
readonly category: F.Many2one<'product.category'>;
|
|
1685
|
+
readonly invoicePolicy: F.Selection<'ordered' | 'delivered', { readonly default: true }>;
|
|
1686
|
+
readonly uom: F.Many2one<'uom.uom'>;
|
|
1687
|
+
readonly barcode: F.Char;
|
|
1688
|
+
readonly weight: F.Decimal;
|
|
1689
|
+
readonly volume: F.Decimal;
|
|
1690
|
+
readonly image: F.Many2one<'storage.attachment'>;
|
|
1691
|
+
readonly listPrice: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
1692
|
+
readonly standardPrice: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
1693
|
+
readonly saleOk: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
1694
|
+
readonly purchaseOk: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
1695
|
+
readonly taxes: F.Many2many<'account.tax', { readonly required: true }>;
|
|
1696
|
+
readonly purchaseTaxes: F.Many2many<'account.tax', { readonly required: true }>;
|
|
1697
|
+
readonly tax: F.Many2one<'account.tax', { readonly readonly: true }>;
|
|
1698
|
+
readonly purchaseTax: F.Many2one<'account.tax', { readonly readonly: true }>;
|
|
1699
|
+
readonly description: F.Text<{ readonly translate: true }>;
|
|
1700
|
+
readonly template: F.Many2one<'product.template'>;
|
|
1701
|
+
readonly attributeValues: F.Many2many<'product.attribute.value', { readonly required: true }>;
|
|
1702
|
+
readonly followsTemplatePrice: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
1703
|
+
readonly incomeAccount: F.Many2one<'account.account'>; // accounting
|
|
1704
|
+
readonly expenseAccount: F.Many2one<'account.account'>; // accounting
|
|
1705
|
+
readonly tracking: F.Selection<'none' | 'lot' | 'serial', { readonly required: true; readonly default: true }>; // stock
|
|
1706
|
+
readonly lots: F.One2many<'stock.lot', { readonly required: true }>; // stock
|
|
1707
|
+
readonly quants: F.One2many<'stock.quant', { readonly required: true }>; // stock
|
|
1708
|
+
readonly qtyOnHand: F.Decimal<{ readonly readonly: true; readonly compute: true; readonly store: true }>; // stock
|
|
1709
|
+
readonly qtyReserved: F.Decimal<{ readonly readonly: true; readonly compute: true; readonly store: true }>; // stock
|
|
1710
|
+
readonly qtyAvailable: F.Decimal<{ readonly readonly: true; readonly compute: true; readonly store: true }>; // stock
|
|
1711
|
+
readonly shelfLifeDays: F.Integer; // production
|
|
1712
|
+
readonly retailPrice: F.Decimal; // production
|
|
1713
|
+
readonly landedCost: F.Bool<{ readonly required: true; readonly default: true }>; // stock_account
|
|
1714
|
+
readonly landedSplit: F.Selection<'quantity' | 'weight' | 'volume' | 'value' | 'equal', { readonly default: true }>; // stock_account
|
|
1715
|
+
readonly costMethod: F.Selection<'average' | 'fifo'>; // stock_account
|
|
1716
|
+
readonly valuationLayers: F.One2many<'stock.valuation.layer', { readonly required: true }>; // stock_account
|
|
1717
|
+
};
|
|
1718
|
+
readonly methods: ProductProductMethods;
|
|
1719
|
+
}
|
|
1720
|
+
|
|
1721
|
+
/** Methods of `product.product`: declared ones and transitions. */
|
|
1722
|
+
export interface ProductProductMethods extends F.Methods<typeof import('../../product/index.js').productShutro, 'product.product'>, F.Methods<typeof import('../../accounting/index.js').accountingShutro, 'product.product'>, F.Methods<typeof import('../../stock/index.js').stockShutro, 'product.product'>, F.Methods<typeof import('../../production/index.js').productionShutro, 'product.product'>, F.Methods<typeof import('../../stock_account/index.js').stockAccountShutro, 'product.product'>, F.Methods<typeof import('../../stock_account/index.js').stockAccountShutro, 'product.product'> {
|
|
1723
|
+
}
|
|
1724
|
+
|
|
1725
|
+
/** `product.template` (owner: product). */
|
|
1726
|
+
export interface ProductTemplate {
|
|
1727
|
+
readonly name: 'product.template';
|
|
1728
|
+
readonly fields: {
|
|
1729
|
+
readonly id: F.Id<'product.template'>;
|
|
1730
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1731
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1732
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1733
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1734
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
1735
|
+
readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
1736
|
+
readonly name: F.Char<{ readonly required: true; readonly translate: true }>;
|
|
1737
|
+
readonly kind: F.Selection<'goods' | 'service', { readonly required: true; readonly default: true }>;
|
|
1738
|
+
readonly category: F.Many2one<'product.category'>;
|
|
1739
|
+
readonly uom: F.Many2one<'uom.uom'>;
|
|
1740
|
+
readonly listPrice: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
1741
|
+
readonly standardPrice: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
1742
|
+
readonly saleOk: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
1743
|
+
readonly purchaseOk: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
1744
|
+
readonly taxes: F.Many2many<'account.tax', { readonly required: true }>;
|
|
1745
|
+
readonly purchaseTaxes: F.Many2many<'account.tax', { readonly required: true }>;
|
|
1746
|
+
readonly image: F.Many2one<'storage.attachment'>;
|
|
1747
|
+
readonly description: F.Text<{ readonly translate: true }>;
|
|
1748
|
+
readonly lines: F.One2many<'product.template.line', { readonly required: true }>;
|
|
1749
|
+
readonly exclusions: F.One2many<'product.template.exclusion', { readonly required: true }>;
|
|
1750
|
+
readonly variants: F.One2many<'product.product', { readonly required: true }>;
|
|
1751
|
+
readonly variantCount: F.Integer<{ readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
1752
|
+
readonly state: F.State<'draft' | 'ready', { readonly required: true; readonly readonly: true; readonly default: true }>;
|
|
1753
|
+
};
|
|
1754
|
+
readonly methods: ProductTemplateMethods;
|
|
1755
|
+
}
|
|
1756
|
+
|
|
1757
|
+
/** Methods of `product.template`: declared ones and transitions. */
|
|
1758
|
+
export interface ProductTemplateMethods extends F.Methods<typeof import('../../product/index.js').productShutro, 'product.template'> {
|
|
1759
|
+
readonly 'generate': () => Promise<void>;
|
|
1760
|
+
}
|
|
1761
|
+
|
|
1762
|
+
/** `product.template.exclusion` (owner: product). */
|
|
1763
|
+
export interface ProductTemplateExclusion {
|
|
1764
|
+
readonly name: 'product.template.exclusion';
|
|
1765
|
+
readonly fields: {
|
|
1766
|
+
readonly id: F.Id<'product.template.exclusion'>;
|
|
1767
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1768
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1769
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1770
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1771
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
1772
|
+
readonly template: F.Many2one<'product.template', { readonly required: true }>;
|
|
1773
|
+
readonly values: F.Many2many<'product.attribute.value', { readonly required: true }>;
|
|
1774
|
+
readonly note: F.Char;
|
|
1775
|
+
};
|
|
1776
|
+
readonly methods: ProductTemplateExclusionMethods;
|
|
1777
|
+
}
|
|
1778
|
+
|
|
1779
|
+
/** Methods of `product.template.exclusion`: declared ones and transitions. */
|
|
1780
|
+
export interface ProductTemplateExclusionMethods extends F.Methods<typeof import('../../product/index.js').productShutro, 'product.template.exclusion'> {
|
|
1781
|
+
}
|
|
1782
|
+
|
|
1783
|
+
/** `product.template.line` (owner: product). */
|
|
1784
|
+
export interface ProductTemplateLine {
|
|
1785
|
+
readonly name: 'product.template.line';
|
|
1786
|
+
readonly fields: {
|
|
1787
|
+
readonly id: F.Id<'product.template.line'>;
|
|
1788
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1789
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1790
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1791
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1792
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
1793
|
+
readonly template: F.Many2one<'product.template', { readonly required: true }>;
|
|
1794
|
+
readonly attribute: F.Many2one<'product.attribute', { readonly required: true }>;
|
|
1795
|
+
readonly sequence: F.Integer<{ readonly required: true; readonly default: true }>;
|
|
1796
|
+
readonly values: F.Many2many<'product.attribute.value', { readonly required: true }>;
|
|
1797
|
+
};
|
|
1798
|
+
readonly methods: ProductTemplateLineMethods;
|
|
1799
|
+
}
|
|
1800
|
+
|
|
1801
|
+
/** Methods of `product.template.line`: declared ones and transitions. */
|
|
1802
|
+
export interface ProductTemplateLineMethods extends F.Methods<typeof import('../../product/index.js').productShutro, 'product.template.line'> {
|
|
1803
|
+
}
|
|
1804
|
+
|
|
1805
|
+
/** `production.bom` (owner: production). */
|
|
1806
|
+
export interface ProductionBom {
|
|
1807
|
+
readonly name: 'production.bom';
|
|
1808
|
+
readonly fields: {
|
|
1809
|
+
readonly id: F.Id<'production.bom'>;
|
|
1810
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1811
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1812
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1813
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1814
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
1815
|
+
readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
1816
|
+
readonly company: F.Many2one<'res.company', { readonly required: true; readonly default: true }>;
|
|
1817
|
+
readonly product: F.Many2one<'product.product', { readonly required: true }>;
|
|
1818
|
+
readonly quantity: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
1819
|
+
readonly kind: F.Selection<'standard' | 'formula' | 'packaging', { readonly required: true; readonly default: true }>;
|
|
1820
|
+
readonly packSize: F.Decimal;
|
|
1821
|
+
readonly expectedLoss: F.Decimal<{ readonly default: true }>;
|
|
1822
|
+
readonly tolerance: F.Decimal<{ readonly default: true }>;
|
|
1823
|
+
readonly version: F.Char<{ readonly required: true; readonly default: true }>;
|
|
1824
|
+
readonly validFrom: F.DateOnly;
|
|
1825
|
+
readonly validTo: F.DateOnly;
|
|
1826
|
+
readonly lines: F.One2many<'production.bom.line', { readonly required: true }>;
|
|
1827
|
+
readonly operations: F.One2many<'production.bom.operation', { readonly required: true }>;
|
|
1828
|
+
readonly byproducts: F.One2many<'production.bom.byproduct', { readonly required: true }>;
|
|
1829
|
+
readonly specs: F.One2many<'production.bom.spec', { readonly required: true }>;
|
|
1830
|
+
readonly costs: F.One2many<'production.bom.cost', { readonly required: true }>;
|
|
1831
|
+
readonly unitCost: F.Decimal<{ readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
1832
|
+
readonly state: F.State<'draft' | 'review' | 'active' | 'inactive', { readonly required: true; readonly readonly: true; readonly default: true }>;
|
|
1833
|
+
readonly note: F.Text;
|
|
1834
|
+
readonly label: F.Char<{ readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
1835
|
+
};
|
|
1836
|
+
readonly methods: ProductionBomMethods;
|
|
1837
|
+
}
|
|
1838
|
+
|
|
1839
|
+
/** Methods of `production.bom`: declared ones and transitions. */
|
|
1840
|
+
export interface ProductionBomMethods extends F.Methods<typeof import('../../production/index.js').productionShutro, 'production.bom'> {
|
|
1841
|
+
readonly 'approve': () => Promise<void>;
|
|
1842
|
+
readonly 'deactivate': () => Promise<void>;
|
|
1843
|
+
readonly 'reactivate': () => Promise<void>;
|
|
1844
|
+
readonly 'reject': () => Promise<void>;
|
|
1845
|
+
readonly 'revise': () => Promise<void>;
|
|
1846
|
+
readonly 'submit': () => Promise<void>;
|
|
1847
|
+
}
|
|
1848
|
+
|
|
1849
|
+
/** `production.bom.byproduct` (owner: production). */
|
|
1850
|
+
export interface ProductionBomByproduct {
|
|
1851
|
+
readonly name: 'production.bom.byproduct';
|
|
1852
|
+
readonly fields: {
|
|
1853
|
+
readonly id: F.Id<'production.bom.byproduct'>;
|
|
1854
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1855
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1856
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1857
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1858
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
1859
|
+
readonly bom: F.Many2one<'production.bom', { readonly required: true }>;
|
|
1860
|
+
readonly product: F.Many2one<'product.product', { readonly required: true }>;
|
|
1861
|
+
readonly quantity: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
1862
|
+
readonly uom: F.Many2one<'uom.uom'>;
|
|
1863
|
+
readonly costShare: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
1864
|
+
};
|
|
1865
|
+
readonly methods: ProductionBomByproductMethods;
|
|
1866
|
+
}
|
|
1867
|
+
|
|
1868
|
+
/** Methods of `production.bom.byproduct`: declared ones and transitions. */
|
|
1869
|
+
export interface ProductionBomByproductMethods extends F.Methods<typeof import('../../production/index.js').productionShutro, 'production.bom.byproduct'> {
|
|
1870
|
+
}
|
|
1871
|
+
|
|
1872
|
+
/** `production.bom.cost` (owner: production). */
|
|
1873
|
+
export interface ProductionBomCost {
|
|
1874
|
+
readonly name: 'production.bom.cost';
|
|
1875
|
+
readonly fields: {
|
|
1876
|
+
readonly id: F.Id<'production.bom.cost'>;
|
|
1877
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1878
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1879
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1880
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1881
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
1882
|
+
readonly bom: F.Many2one<'production.bom', { readonly required: true }>;
|
|
1883
|
+
readonly date: F.DateOnly<{ readonly required: true }>;
|
|
1884
|
+
readonly unitCost: F.Decimal<{ readonly required: true }>;
|
|
1885
|
+
readonly note: F.Char;
|
|
1886
|
+
};
|
|
1887
|
+
readonly methods: ProductionBomCostMethods;
|
|
1888
|
+
}
|
|
1889
|
+
|
|
1890
|
+
/** Methods of `production.bom.cost`: declared ones and transitions. */
|
|
1891
|
+
export interface ProductionBomCostMethods extends F.Methods<typeof import('../../production/index.js').productionShutro, 'production.bom.cost'> {
|
|
1892
|
+
}
|
|
1893
|
+
|
|
1894
|
+
/** `production.bom.eligibility` (owner: production). */
|
|
1895
|
+
export interface ProductionBomEligibility {
|
|
1896
|
+
readonly name: 'production.bom.eligibility';
|
|
1897
|
+
readonly fields: {
|
|
1898
|
+
readonly id: F.Id<'production.bom.eligibility'>;
|
|
1899
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1900
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1901
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1902
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1903
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
1904
|
+
readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
1905
|
+
readonly company: F.Many2one<'res.company', { readonly required: true; readonly default: true }>;
|
|
1906
|
+
readonly kind: F.Selection<'standard' | 'formula' | 'packaging', { readonly required: true; readonly default: true }>;
|
|
1907
|
+
readonly categories: F.Many2many<'product.category', { readonly required: true }>;
|
|
1908
|
+
readonly note: F.Text;
|
|
1909
|
+
readonly label: F.Char<{ readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
1910
|
+
};
|
|
1911
|
+
readonly methods: ProductionBomEligibilityMethods;
|
|
1912
|
+
}
|
|
1913
|
+
|
|
1914
|
+
/** Methods of `production.bom.eligibility`: declared ones and transitions. */
|
|
1915
|
+
export interface ProductionBomEligibilityMethods extends F.Methods<typeof import('../../production/index.js').productionShutro, 'production.bom.eligibility'> {
|
|
1916
|
+
}
|
|
1917
|
+
|
|
1918
|
+
/** `production.bom.line` (owner: production). */
|
|
1919
|
+
export interface ProductionBomLine {
|
|
1920
|
+
readonly name: 'production.bom.line';
|
|
1921
|
+
readonly fields: {
|
|
1922
|
+
readonly id: F.Id<'production.bom.line'>;
|
|
1923
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1924
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1925
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1926
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1927
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
1928
|
+
readonly bom: F.Many2one<'production.bom', { readonly required: true }>;
|
|
1929
|
+
readonly product: F.Many2one<'product.product', { readonly required: true }>;
|
|
1930
|
+
readonly quantity: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
1931
|
+
readonly uom: F.Many2one<'uom.uom'>;
|
|
1932
|
+
readonly ratio: F.Decimal;
|
|
1933
|
+
readonly loss: F.Decimal<{ readonly default: true }>;
|
|
1934
|
+
readonly netQuantity: F.Decimal<{ readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
1935
|
+
readonly grossQuantity: F.Decimal<{ readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
1936
|
+
};
|
|
1937
|
+
readonly methods: ProductionBomLineMethods;
|
|
1938
|
+
}
|
|
1939
|
+
|
|
1940
|
+
/** Methods of `production.bom.line`: declared ones and transitions. */
|
|
1941
|
+
export interface ProductionBomLineMethods extends F.Methods<typeof import('../../production/index.js').productionShutro, 'production.bom.line'> {
|
|
1942
|
+
}
|
|
1943
|
+
|
|
1944
|
+
/** `production.bom.operation` (owner: production). */
|
|
1945
|
+
export interface ProductionBomOperation {
|
|
1946
|
+
readonly name: 'production.bom.operation';
|
|
1947
|
+
readonly fields: {
|
|
1948
|
+
readonly id: F.Id<'production.bom.operation'>;
|
|
1949
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1950
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1951
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1952
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1953
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
1954
|
+
readonly bom: F.Many2one<'production.bom', { readonly required: true }>;
|
|
1955
|
+
readonly name: F.Char<{ readonly required: true }>;
|
|
1956
|
+
readonly workcenter: F.Many2one<'production.workcenter', { readonly required: true }>;
|
|
1957
|
+
readonly minutes: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
1958
|
+
};
|
|
1959
|
+
readonly methods: ProductionBomOperationMethods;
|
|
1960
|
+
}
|
|
1961
|
+
|
|
1962
|
+
/** Methods of `production.bom.operation`: declared ones and transitions. */
|
|
1963
|
+
export interface ProductionBomOperationMethods extends F.Methods<typeof import('../../production/index.js').productionShutro, 'production.bom.operation'> {
|
|
1964
|
+
}
|
|
1965
|
+
|
|
1966
|
+
/** `production.bom.spec` (owner: production). */
|
|
1967
|
+
export interface ProductionBomSpec {
|
|
1968
|
+
readonly name: 'production.bom.spec';
|
|
1969
|
+
readonly fields: {
|
|
1970
|
+
readonly id: F.Id<'production.bom.spec'>;
|
|
1971
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1972
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1973
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1974
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1975
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
1976
|
+
readonly bom: F.Many2one<'production.bom', { readonly required: true }>;
|
|
1977
|
+
readonly parameter: F.Many2one<'production.spec.parameter', { readonly required: true }>;
|
|
1978
|
+
readonly minimum: F.Decimal;
|
|
1979
|
+
readonly maximum: F.Decimal;
|
|
1980
|
+
readonly value: F.Decimal<{ readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
1981
|
+
readonly within: F.Bool<{ readonly required: true; readonly readonly: true; readonly default: true; readonly compute: true; readonly store: true }>;
|
|
1982
|
+
};
|
|
1983
|
+
readonly methods: ProductionBomSpecMethods;
|
|
1984
|
+
}
|
|
1985
|
+
|
|
1986
|
+
/** Methods of `production.bom.spec`: declared ones and transitions. */
|
|
1987
|
+
export interface ProductionBomSpecMethods extends F.Methods<typeof import('../../production/index.js').productionShutro, 'production.bom.spec'> {
|
|
1988
|
+
}
|
|
1989
|
+
|
|
1990
|
+
/** `production.costing` (owner: production_account). */
|
|
1991
|
+
export interface ProductionCosting {
|
|
1992
|
+
readonly name: 'production.costing';
|
|
1993
|
+
readonly fields: {
|
|
1994
|
+
readonly id: F.Id<'production.costing'>;
|
|
1995
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1996
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1997
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1998
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1999
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
2000
|
+
readonly company: F.Many2one<'res.company', { readonly required: true; readonly default: true }>;
|
|
2001
|
+
readonly name: F.Char<{ readonly required: true }>;
|
|
2002
|
+
readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
2003
|
+
readonly product: F.Many2one<'product.product'>;
|
|
2004
|
+
readonly category: F.Many2one<'product.category'>;
|
|
2005
|
+
readonly validFrom: F.DateOnly;
|
|
2006
|
+
readonly validTo: F.DateOnly;
|
|
2007
|
+
readonly lines: F.One2many<'production.costing.line', { readonly required: true }>;
|
|
2008
|
+
readonly note: F.Text;
|
|
2009
|
+
};
|
|
2010
|
+
readonly methods: ProductionCostingMethods;
|
|
2011
|
+
}
|
|
2012
|
+
|
|
2013
|
+
/** Methods of `production.costing`: declared ones and transitions. */
|
|
2014
|
+
export interface ProductionCostingMethods extends F.Methods<typeof import('../module.js').productionAccountShutro, 'production.costing'> {
|
|
2015
|
+
}
|
|
2016
|
+
|
|
2017
|
+
/** `production.costing.line` (owner: production_account). */
|
|
2018
|
+
export interface ProductionCostingLine {
|
|
2019
|
+
readonly name: 'production.costing.line';
|
|
2020
|
+
readonly fields: {
|
|
2021
|
+
readonly id: F.Id<'production.costing.line'>;
|
|
2022
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2023
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2024
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2025
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2026
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
2027
|
+
readonly costing: F.Many2one<'production.costing', { readonly required: true }>;
|
|
2028
|
+
readonly sequence: F.Integer<{ readonly required: true; readonly default: true }>;
|
|
2029
|
+
readonly name: F.Char<{ readonly required: true }>;
|
|
2030
|
+
readonly account: F.Many2one<'account.account', { readonly required: true }>;
|
|
2031
|
+
readonly method: F.Selection<'fixed' | 'percent' | 'unit', { readonly required: true; readonly default: true }>;
|
|
2032
|
+
readonly amount: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
2033
|
+
};
|
|
2034
|
+
readonly methods: ProductionCostingLineMethods;
|
|
2035
|
+
}
|
|
2036
|
+
|
|
2037
|
+
/** Methods of `production.costing.line`: declared ones and transitions. */
|
|
2038
|
+
export interface ProductionCostingLineMethods extends F.Methods<typeof import('../module.js').productionAccountShutro, 'production.costing.line'> {
|
|
2039
|
+
}
|
|
2040
|
+
|
|
2041
|
+
/** `production.order` (owner: production; extended by: production_account). */
|
|
2042
|
+
export interface ProductionOrder {
|
|
2043
|
+
readonly name: 'production.order';
|
|
2044
|
+
readonly fields: {
|
|
2045
|
+
readonly id: F.Id<'production.order'>;
|
|
2046
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2047
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2048
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2049
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2050
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
2051
|
+
readonly company: F.Many2one<'res.company', { readonly required: true; readonly default: true }>;
|
|
2052
|
+
readonly name: F.Char<{ readonly required: true; readonly readonly: true; readonly sequence: true }>;
|
|
2053
|
+
readonly product: F.Many2one<'product.product', { readonly required: true }>;
|
|
2054
|
+
readonly quantity: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
2055
|
+
readonly bom: F.Many2one<'production.bom'>;
|
|
2056
|
+
readonly plan: F.Many2one<'production.plan'>;
|
|
2057
|
+
readonly schedule: F.Many2one<'production.schedule'>;
|
|
2058
|
+
readonly stage: F.Selection<'make' | 'pack', { readonly required: true; readonly default: true }>;
|
|
2059
|
+
readonly batch: F.Char;
|
|
2060
|
+
readonly sourceOrder: F.Many2one<'production.order'>;
|
|
2061
|
+
readonly sourceLot: F.Many2one<'stock.lot'>;
|
|
2062
|
+
readonly lot: F.Many2one<'stock.lot'>;
|
|
2063
|
+
readonly producedQty: F.Decimal;
|
|
2064
|
+
readonly consumedQty: F.Decimal<{ readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
2065
|
+
readonly lossQty: F.Decimal<{ readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
2066
|
+
readonly lossPercent: F.Decimal<{ readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
2067
|
+
readonly yieldStatus: F.Selection<'pending' | 'within' | 'beyond', { readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
2068
|
+
readonly actualStart: F.Datetime;
|
|
2069
|
+
readonly actualEnd: F.Datetime;
|
|
2070
|
+
readonly operator: F.Many2one<'res.users'>;
|
|
2071
|
+
readonly shift: F.Many2one<'production.shift'>;
|
|
2072
|
+
readonly manufacturingDate: F.DateOnly;
|
|
2073
|
+
readonly expiryDate: F.DateOnly;
|
|
2074
|
+
readonly date: F.DateOnly<{ readonly required: true; readonly default: true }>;
|
|
2075
|
+
readonly warehouse: F.Many2one<'stock.warehouse'>;
|
|
2076
|
+
readonly components: F.One2many<'production.order.component', { readonly required: true }>;
|
|
2077
|
+
readonly scraps: F.One2many<'stock.scrap', { readonly required: true }>;
|
|
2078
|
+
readonly workorders: F.One2many<'production.workorder', { readonly required: true }>;
|
|
2079
|
+
readonly consumption: F.Many2one<'stock.picking'>;
|
|
2080
|
+
readonly output: F.Many2one<'stock.picking'>;
|
|
2081
|
+
readonly materialCost: F.Decimal<{ readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
2082
|
+
readonly operationCost: F.Decimal<{ readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
2083
|
+
readonly totalCost: F.Decimal<{ readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
2084
|
+
readonly unitCost: F.Decimal<{ readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
2085
|
+
readonly status: F.Selection<'draft' | 'waiting' | 'ready' | 'progress' | 'done' | 'cancelled', { readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
2086
|
+
readonly note: F.Text;
|
|
2087
|
+
readonly state: F.State<'draft' | 'confirmed' | 'progress' | 'done' | 'cancel', { readonly required: true; readonly readonly: true; readonly default: true }>;
|
|
2088
|
+
readonly overheads: F.One2many<'production.order.overhead', { readonly required: true }>; // production_account
|
|
2089
|
+
readonly overheadCost: F.Decimal<{ readonly readonly: true; readonly compute: true; readonly store: true }>; // production_account
|
|
2090
|
+
readonly fullCost: F.Decimal<{ readonly readonly: true; readonly compute: true; readonly store: true }>; // production_account
|
|
2091
|
+
};
|
|
2092
|
+
readonly methods: ProductionOrderMethods;
|
|
2093
|
+
}
|
|
2094
|
+
|
|
2095
|
+
/** Methods of `production.order`: declared ones and transitions. */
|
|
2096
|
+
export interface ProductionOrderMethods extends F.Methods<typeof import('../../production/index.js').productionShutro, 'production.order'>, F.Methods<typeof import('../module.js').productionAccountShutro, 'production.order'> {
|
|
2097
|
+
readonly 'cancel': () => Promise<void>;
|
|
2098
|
+
readonly 'check': () => Promise<void>;
|
|
2099
|
+
readonly 'confirm': () => Promise<void>;
|
|
2100
|
+
readonly 'produce': () => Promise<void>;
|
|
2101
|
+
readonly 'redraft': () => Promise<void>;
|
|
2102
|
+
readonly 'reserve': () => Promise<void>;
|
|
2103
|
+
readonly 'start': () => Promise<void>;
|
|
2104
|
+
}
|
|
2105
|
+
|
|
2106
|
+
/** `production.order.component` (owner: production). */
|
|
2107
|
+
export interface ProductionOrderComponent {
|
|
2108
|
+
readonly name: 'production.order.component';
|
|
2109
|
+
readonly fields: {
|
|
2110
|
+
readonly id: F.Id<'production.order.component'>;
|
|
2111
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2112
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2113
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2114
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2115
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
2116
|
+
readonly production: F.Many2one<'production.order', { readonly required: true }>;
|
|
2117
|
+
readonly product: F.Many2one<'product.product', { readonly required: true }>;
|
|
2118
|
+
readonly required: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
2119
|
+
readonly available: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
2120
|
+
readonly short: F.Decimal<{ readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
2121
|
+
readonly cost: F.Decimal<{ readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
2122
|
+
};
|
|
2123
|
+
readonly methods: ProductionOrderComponentMethods;
|
|
2124
|
+
}
|
|
2125
|
+
|
|
2126
|
+
/** Methods of `production.order.component`: declared ones and transitions. */
|
|
2127
|
+
export interface ProductionOrderComponentMethods extends F.Methods<typeof import('../../production/index.js').productionShutro, 'production.order.component'> {
|
|
2128
|
+
}
|
|
2129
|
+
|
|
2130
|
+
/** `production.order.overhead` (owner: production_account). */
|
|
2131
|
+
export interface ProductionOrderOverhead {
|
|
2132
|
+
readonly name: 'production.order.overhead';
|
|
2133
|
+
readonly fields: {
|
|
2134
|
+
readonly id: F.Id<'production.order.overhead'>;
|
|
2135
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2136
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2137
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2138
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2139
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
2140
|
+
readonly production: F.Many2one<'production.order', { readonly required: true }>;
|
|
2141
|
+
readonly name: F.Char<{ readonly required: true }>;
|
|
2142
|
+
readonly account: F.Many2one<'account.account', { readonly required: true }>;
|
|
2143
|
+
readonly method: F.Selection<'fixed' | 'percent' | 'unit', { readonly required: true }>;
|
|
2144
|
+
readonly rate: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
2145
|
+
readonly amount: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
2146
|
+
readonly costing: F.Many2one<'production.costing'>;
|
|
2147
|
+
};
|
|
2148
|
+
readonly methods: ProductionOrderOverheadMethods;
|
|
2149
|
+
}
|
|
2150
|
+
|
|
2151
|
+
/** Methods of `production.order.overhead`: declared ones and transitions. */
|
|
2152
|
+
export interface ProductionOrderOverheadMethods extends F.Methods<typeof import('../module.js').productionAccountShutro, 'production.order.overhead'> {
|
|
2153
|
+
}
|
|
2154
|
+
|
|
2155
|
+
/** `production.overhead.allocation` (owner: production_account). */
|
|
2156
|
+
export interface ProductionOverheadAllocation {
|
|
2157
|
+
readonly name: 'production.overhead.allocation';
|
|
2158
|
+
readonly fields: {
|
|
2159
|
+
readonly id: F.Id<'production.overhead.allocation'>;
|
|
2160
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2161
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2162
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2163
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2164
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
2165
|
+
readonly company: F.Many2one<'res.company', { readonly required: true; readonly default: true }>;
|
|
2166
|
+
readonly name: F.Char<{ readonly required: true; readonly readonly: true; readonly sequence: true }>;
|
|
2167
|
+
readonly month: F.DateOnly<{ readonly required: true }>;
|
|
2168
|
+
readonly distribution: F.Selection<'quantity' | 'cost', { readonly required: true; readonly default: true }>;
|
|
2169
|
+
readonly lines: F.One2many<'production.overhead.allocation.line', { readonly required: true }>;
|
|
2170
|
+
readonly shares: F.One2many<'production.overhead.allocation.share', { readonly required: true }>;
|
|
2171
|
+
readonly difference: F.Decimal<{ readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
2172
|
+
readonly move: F.Many2one<'account.move'>;
|
|
2173
|
+
readonly note: F.Text;
|
|
2174
|
+
readonly state: F.State<'draft' | 'posted' | 'cancel', { readonly required: true; readonly readonly: true; readonly default: true }>;
|
|
2175
|
+
};
|
|
2176
|
+
readonly methods: ProductionOverheadAllocationMethods;
|
|
2177
|
+
}
|
|
2178
|
+
|
|
2179
|
+
/** Methods of `production.overhead.allocation`: declared ones and transitions. */
|
|
2180
|
+
export interface ProductionOverheadAllocationMethods extends F.Methods<typeof import('../module.js').productionAccountShutro, 'production.overhead.allocation'> {
|
|
2181
|
+
readonly 'cancel': () => Promise<void>;
|
|
2182
|
+
readonly 'post': () => Promise<void>;
|
|
2183
|
+
readonly 'reckon': () => Promise<void>;
|
|
2184
|
+
readonly 'redraft': () => Promise<void>;
|
|
2185
|
+
}
|
|
2186
|
+
|
|
2187
|
+
/** `production.overhead.allocation.line` (owner: production_account). */
|
|
2188
|
+
export interface ProductionOverheadAllocationLine {
|
|
2189
|
+
readonly name: 'production.overhead.allocation.line';
|
|
2190
|
+
readonly fields: {
|
|
2191
|
+
readonly id: F.Id<'production.overhead.allocation.line'>;
|
|
2192
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2193
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2194
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2195
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2196
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
2197
|
+
readonly allocation: F.Many2one<'production.overhead.allocation', { readonly required: true }>;
|
|
2198
|
+
readonly account: F.Many2one<'account.account', { readonly required: true }>;
|
|
2199
|
+
readonly actual: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
2200
|
+
readonly absorbed: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
2201
|
+
readonly difference: F.Decimal<{ readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
2202
|
+
};
|
|
2203
|
+
readonly methods: ProductionOverheadAllocationLineMethods;
|
|
2204
|
+
}
|
|
2205
|
+
|
|
2206
|
+
/** Methods of `production.overhead.allocation.line`: declared ones and transitions. */
|
|
2207
|
+
export interface ProductionOverheadAllocationLineMethods extends F.Methods<typeof import('../module.js').productionAccountShutro, 'production.overhead.allocation.line'> {
|
|
2208
|
+
}
|
|
2209
|
+
|
|
2210
|
+
/** `production.overhead.allocation.share` (owner: production_account). */
|
|
2211
|
+
export interface ProductionOverheadAllocationShare {
|
|
2212
|
+
readonly name: 'production.overhead.allocation.share';
|
|
2213
|
+
readonly fields: {
|
|
2214
|
+
readonly id: F.Id<'production.overhead.allocation.share'>;
|
|
2215
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2216
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2217
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2218
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2219
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
2220
|
+
readonly allocation: F.Many2one<'production.overhead.allocation', { readonly required: true }>;
|
|
2221
|
+
readonly order: F.Many2one<'production.order', { readonly required: true }>;
|
|
2222
|
+
readonly product: F.Many2one<'product.product', { readonly required: true }>;
|
|
2223
|
+
readonly quantity: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
2224
|
+
readonly share: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
2225
|
+
readonly amount: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
2226
|
+
};
|
|
2227
|
+
readonly methods: ProductionOverheadAllocationShareMethods;
|
|
2228
|
+
}
|
|
2229
|
+
|
|
2230
|
+
/** Methods of `production.overhead.allocation.share`: declared ones and transitions. */
|
|
2231
|
+
export interface ProductionOverheadAllocationShareMethods extends F.Methods<typeof import('../module.js').productionAccountShutro, 'production.overhead.allocation.share'> {
|
|
2232
|
+
}
|
|
2233
|
+
|
|
2234
|
+
/** `production.plan` (owner: production). */
|
|
2235
|
+
export interface ProductionPlan {
|
|
2236
|
+
readonly name: 'production.plan';
|
|
2237
|
+
readonly fields: {
|
|
2238
|
+
readonly id: F.Id<'production.plan'>;
|
|
2239
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2240
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2241
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2242
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2243
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
2244
|
+
readonly company: F.Many2one<'res.company', { readonly required: true; readonly default: true }>;
|
|
2245
|
+
readonly name: F.Char<{ readonly required: true; readonly readonly: true; readonly sequence: true }>;
|
|
2246
|
+
readonly title: F.Char;
|
|
2247
|
+
readonly dateFrom: F.DateOnly<{ readonly required: true }>;
|
|
2248
|
+
readonly dateTo: F.DateOnly<{ readonly required: true }>;
|
|
2249
|
+
readonly warehouse: F.Many2one<'stock.warehouse'>;
|
|
2250
|
+
readonly workcenters: F.Many2many<'production.workcenter', { readonly required: true }>;
|
|
2251
|
+
readonly note: F.Text;
|
|
2252
|
+
readonly lines: F.One2many<'production.plan.line', { readonly required: true }>;
|
|
2253
|
+
readonly materials: F.One2many<'production.plan.material', { readonly required: true }>;
|
|
2254
|
+
readonly orders: F.One2many<'production.order', { readonly required: true }>;
|
|
2255
|
+
readonly shortageCount: F.Integer<{ readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
2256
|
+
readonly state: F.State<'draft' | 'forecast' | 'to_approve' | 'approved' | 'scheduled' | 'cancel', { readonly required: true; readonly readonly: true; readonly default: true }>;
|
|
2257
|
+
};
|
|
2258
|
+
readonly methods: ProductionPlanMethods;
|
|
2259
|
+
}
|
|
2260
|
+
|
|
2261
|
+
/** Methods of `production.plan`: declared ones and transitions. */
|
|
2262
|
+
export interface ProductionPlanMethods extends F.Methods<typeof import('../../production/index.js').productionShutro, 'production.plan'> {
|
|
2263
|
+
readonly 'approve': () => Promise<void>;
|
|
2264
|
+
readonly 'cancel': () => Promise<void>;
|
|
2265
|
+
readonly 'forecast': () => Promise<void>;
|
|
2266
|
+
readonly 'procure': () => Promise<void>;
|
|
2267
|
+
readonly 'redraft': () => Promise<void>;
|
|
2268
|
+
readonly 'reject': () => Promise<void>;
|
|
2269
|
+
readonly 'schedule': () => Promise<void>;
|
|
2270
|
+
readonly 'submit': () => Promise<void>;
|
|
2271
|
+
}
|
|
2272
|
+
|
|
2273
|
+
/** `production.plan.line` (owner: production). */
|
|
2274
|
+
export interface ProductionPlanLine {
|
|
2275
|
+
readonly name: 'production.plan.line';
|
|
2276
|
+
readonly fields: {
|
|
2277
|
+
readonly id: F.Id<'production.plan.line'>;
|
|
2278
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2279
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2280
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2281
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2282
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
2283
|
+
readonly plan: F.Many2one<'production.plan', { readonly required: true }>;
|
|
2284
|
+
readonly product: F.Many2one<'product.product', { readonly required: true }>;
|
|
2285
|
+
readonly bom: F.Many2one<'production.bom'>;
|
|
2286
|
+
readonly packagingBom: F.Many2one<'production.bom'>;
|
|
2287
|
+
readonly quantity: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
2288
|
+
readonly workcenter: F.Many2one<'production.workcenter', { readonly required: true }>;
|
|
2289
|
+
readonly start: F.Datetime<{ readonly required: true }>;
|
|
2290
|
+
readonly end: F.Datetime<{ readonly required: true }>;
|
|
2291
|
+
readonly minutes: F.Decimal<{ readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
2292
|
+
readonly capacityNote: F.Char<{ readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
2293
|
+
readonly schedules: F.One2many<'production.schedule', { readonly required: true }>;
|
|
2294
|
+
readonly scheduleCount: F.Integer<{ readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
2295
|
+
readonly label: F.Char<{ readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
2296
|
+
};
|
|
2297
|
+
readonly methods: ProductionPlanLineMethods;
|
|
2298
|
+
}
|
|
2299
|
+
|
|
2300
|
+
/** Methods of `production.plan.line`: declared ones and transitions. */
|
|
2301
|
+
export interface ProductionPlanLineMethods extends F.Methods<typeof import('../../production/index.js').productionShutro, 'production.plan.line'> {
|
|
2302
|
+
}
|
|
2303
|
+
|
|
2304
|
+
/** `production.plan.material` (owner: production). */
|
|
2305
|
+
export interface ProductionPlanMaterial {
|
|
2306
|
+
readonly name: 'production.plan.material';
|
|
2307
|
+
readonly fields: {
|
|
2308
|
+
readonly id: F.Id<'production.plan.material'>;
|
|
2309
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2310
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2311
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2312
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2313
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
2314
|
+
readonly plan: F.Many2one<'production.plan', { readonly required: true }>;
|
|
2315
|
+
readonly product: F.Many2one<'product.product', { readonly required: true }>;
|
|
2316
|
+
readonly required: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
2317
|
+
readonly onHand: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
2318
|
+
readonly onOrder: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
2319
|
+
readonly shortage: F.Decimal<{ readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
2320
|
+
readonly procured: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
2321
|
+
readonly document: F.Char;
|
|
2322
|
+
readonly note: F.Char;
|
|
2323
|
+
};
|
|
2324
|
+
readonly methods: ProductionPlanMaterialMethods;
|
|
2325
|
+
}
|
|
2326
|
+
|
|
2327
|
+
/** Methods of `production.plan.material`: declared ones and transitions. */
|
|
2328
|
+
export interface ProductionPlanMaterialMethods extends F.Methods<typeof import('../../production/index.js').productionShutro, 'production.plan.material'> {
|
|
2329
|
+
}
|
|
2330
|
+
|
|
2331
|
+
/** `production.product.spec` (owner: production). */
|
|
2332
|
+
export interface ProductionProductSpec {
|
|
2333
|
+
readonly name: 'production.product.spec';
|
|
2334
|
+
readonly fields: {
|
|
2335
|
+
readonly id: F.Id<'production.product.spec'>;
|
|
2336
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2337
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2338
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2339
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2340
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
2341
|
+
readonly product: F.Many2one<'product.product', { readonly required: true }>;
|
|
2342
|
+
readonly parameter: F.Many2one<'production.spec.parameter', { readonly required: true }>;
|
|
2343
|
+
readonly value: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
2344
|
+
};
|
|
2345
|
+
readonly methods: ProductionProductSpecMethods;
|
|
2346
|
+
}
|
|
2347
|
+
|
|
2348
|
+
/** Methods of `production.product.spec`: declared ones and transitions. */
|
|
2349
|
+
export interface ProductionProductSpecMethods extends F.Methods<typeof import('../../production/index.js').productionShutro, 'production.product.spec'> {
|
|
2350
|
+
}
|
|
2351
|
+
|
|
2352
|
+
/** `production.schedule` (owner: production). */
|
|
2353
|
+
export interface ProductionSchedule {
|
|
2354
|
+
readonly name: 'production.schedule';
|
|
2355
|
+
readonly fields: {
|
|
2356
|
+
readonly id: F.Id<'production.schedule'>;
|
|
2357
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2358
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2359
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2360
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2361
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
2362
|
+
readonly company: F.Many2one<'res.company', { readonly required: true; readonly default: true }>;
|
|
2363
|
+
readonly name: F.Char<{ readonly required: true; readonly readonly: true; readonly sequence: true }>;
|
|
2364
|
+
readonly plan: F.Many2one<'production.plan'>;
|
|
2365
|
+
readonly planLine: F.Many2one<'production.plan.line'>;
|
|
2366
|
+
readonly product: F.Many2one<'product.product', { readonly required: true }>;
|
|
2367
|
+
readonly bom: F.Many2one<'production.bom'>;
|
|
2368
|
+
readonly packagingBom: F.Many2one<'production.bom'>;
|
|
2369
|
+
readonly quantity: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
2370
|
+
readonly produced: F.Decimal<{ readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
2371
|
+
readonly remaining: F.Decimal<{ readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
2372
|
+
readonly workcenter: F.Many2one<'production.workcenter', { readonly required: true }>;
|
|
2373
|
+
readonly shift: F.Many2one<'production.shift'>;
|
|
2374
|
+
readonly start: F.Datetime<{ readonly required: true }>;
|
|
2375
|
+
readonly end: F.Datetime<{ readonly required: true }>;
|
|
2376
|
+
readonly warehouse: F.Many2one<'stock.warehouse'>;
|
|
2377
|
+
readonly components: F.One2many<'production.schedule.component', { readonly required: true }>;
|
|
2378
|
+
readonly orders: F.One2many<'production.order', { readonly required: true }>;
|
|
2379
|
+
readonly deficitCount: F.Integer<{ readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
2380
|
+
readonly note: F.Text;
|
|
2381
|
+
readonly state: F.State<'draft' | 'checked' | 'confirmed' | 'progress' | 'done' | 'cancel', { readonly required: true; readonly readonly: true; readonly default: true }>;
|
|
2382
|
+
};
|
|
2383
|
+
readonly methods: ProductionScheduleMethods;
|
|
2384
|
+
}
|
|
2385
|
+
|
|
2386
|
+
/** Methods of `production.schedule`: declared ones and transitions. */
|
|
2387
|
+
export interface ProductionScheduleMethods extends F.Methods<typeof import('../../production/index.js').productionShutro, 'production.schedule'> {
|
|
2388
|
+
readonly 'begin': () => Promise<void>;
|
|
2389
|
+
readonly 'cancel': () => Promise<void>;
|
|
2390
|
+
readonly 'check': () => Promise<void>;
|
|
2391
|
+
readonly 'confirm': () => Promise<void>;
|
|
2392
|
+
readonly 'finish': () => Promise<void>;
|
|
2393
|
+
readonly 'redraft': () => Promise<void>;
|
|
2394
|
+
}
|
|
2395
|
+
|
|
2396
|
+
/** `production.schedule.component` (owner: production). */
|
|
2397
|
+
export interface ProductionScheduleComponent {
|
|
2398
|
+
readonly name: 'production.schedule.component';
|
|
2399
|
+
readonly fields: {
|
|
2400
|
+
readonly id: F.Id<'production.schedule.component'>;
|
|
2401
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2402
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2403
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2404
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2405
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
2406
|
+
readonly schedule: F.Many2one<'production.schedule', { readonly required: true }>;
|
|
2407
|
+
readonly product: F.Many2one<'product.product', { readonly required: true }>;
|
|
2408
|
+
readonly required: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
2409
|
+
readonly available: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
2410
|
+
readonly deficit: F.Decimal<{ readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
2411
|
+
readonly surplus: F.Decimal<{ readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
2412
|
+
};
|
|
2413
|
+
readonly methods: ProductionScheduleComponentMethods;
|
|
2414
|
+
}
|
|
2415
|
+
|
|
2416
|
+
/** Methods of `production.schedule.component`: declared ones and transitions. */
|
|
2417
|
+
export interface ProductionScheduleComponentMethods extends F.Methods<typeof import('../../production/index.js').productionShutro, 'production.schedule.component'> {
|
|
2418
|
+
}
|
|
2419
|
+
|
|
2420
|
+
/** `production.shift` (owner: production). */
|
|
2421
|
+
export interface ProductionShift {
|
|
2422
|
+
readonly name: 'production.shift';
|
|
2423
|
+
readonly fields: {
|
|
2424
|
+
readonly id: F.Id<'production.shift'>;
|
|
2425
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2426
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2427
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2428
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2429
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
2430
|
+
readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
2431
|
+
readonly company: F.Many2one<'res.company', { readonly required: true; readonly default: true }>;
|
|
2432
|
+
readonly name: F.Char<{ readonly required: true; readonly translate: true }>;
|
|
2433
|
+
readonly start: F.Char<{ readonly required: true; readonly default: true }>;
|
|
2434
|
+
readonly end: F.Char<{ readonly required: true; readonly default: true }>;
|
|
2435
|
+
readonly hours: F.Decimal<{ readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
2436
|
+
};
|
|
2437
|
+
readonly methods: ProductionShiftMethods;
|
|
2438
|
+
}
|
|
2439
|
+
|
|
2440
|
+
/** Methods of `production.shift`: declared ones and transitions. */
|
|
2441
|
+
export interface ProductionShiftMethods extends F.Methods<typeof import('../../production/index.js').productionShutro, 'production.shift'> {
|
|
2442
|
+
}
|
|
2443
|
+
|
|
2444
|
+
/** `production.spec.parameter` (owner: production). */
|
|
2445
|
+
export interface ProductionSpecParameter {
|
|
2446
|
+
readonly name: 'production.spec.parameter';
|
|
2447
|
+
readonly fields: {
|
|
2448
|
+
readonly id: F.Id<'production.spec.parameter'>;
|
|
2449
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2450
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2451
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2452
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2453
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
2454
|
+
readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
2455
|
+
readonly name: F.Char<{ readonly required: true; readonly translate: true }>;
|
|
2456
|
+
readonly unit: F.Char;
|
|
2457
|
+
readonly note: F.Text;
|
|
2458
|
+
};
|
|
2459
|
+
readonly methods: ProductionSpecParameterMethods;
|
|
2460
|
+
}
|
|
2461
|
+
|
|
2462
|
+
/** Methods of `production.spec.parameter`: declared ones and transitions. */
|
|
2463
|
+
export interface ProductionSpecParameterMethods extends F.Methods<typeof import('../../production/index.js').productionShutro, 'production.spec.parameter'> {
|
|
2464
|
+
}
|
|
2465
|
+
|
|
2466
|
+
/** `production.workcenter` (owner: production; extended by: production_account). */
|
|
2467
|
+
export interface ProductionWorkcenter {
|
|
2468
|
+
readonly name: 'production.workcenter';
|
|
2469
|
+
readonly fields: {
|
|
2470
|
+
readonly id: F.Id<'production.workcenter'>;
|
|
2471
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2472
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2473
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2474
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2475
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
2476
|
+
readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
2477
|
+
readonly company: F.Many2one<'res.company', { readonly required: true; readonly default: true }>;
|
|
2478
|
+
readonly name: F.Char<{ readonly required: true }>;
|
|
2479
|
+
readonly code: F.Char;
|
|
2480
|
+
readonly hoursPerDay: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
2481
|
+
readonly costPerHour: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
2482
|
+
readonly batchMin: F.Decimal;
|
|
2483
|
+
readonly batchMax: F.Decimal;
|
|
2484
|
+
readonly oeeTarget: F.Decimal<{ readonly default: true }>;
|
|
2485
|
+
readonly setupMinutes: F.Decimal<{ readonly default: true }>;
|
|
2486
|
+
readonly cleanupMinutes: F.Decimal<{ readonly default: true }>;
|
|
2487
|
+
readonly alternatives: F.Many2many<'production.workcenter', { readonly required: true }>;
|
|
2488
|
+
readonly note: F.Text;
|
|
2489
|
+
readonly expenseAccount: F.Many2one<'account.account'>; // production_account
|
|
2490
|
+
};
|
|
2491
|
+
readonly methods: ProductionWorkcenterMethods;
|
|
2492
|
+
}
|
|
2493
|
+
|
|
2494
|
+
/** Methods of `production.workcenter`: declared ones and transitions. */
|
|
2495
|
+
export interface ProductionWorkcenterMethods extends F.Methods<typeof import('../../production/index.js').productionShutro, 'production.workcenter'>, F.Methods<typeof import('../module.js').productionAccountShutro, 'production.workcenter'> {
|
|
2496
|
+
}
|
|
2497
|
+
|
|
2498
|
+
/** `production.workorder` (owner: production). */
|
|
2499
|
+
export interface ProductionWorkorder {
|
|
2500
|
+
readonly name: 'production.workorder';
|
|
2501
|
+
readonly fields: {
|
|
2502
|
+
readonly id: F.Id<'production.workorder'>;
|
|
2503
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2504
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2505
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2506
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2507
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
2508
|
+
readonly company: F.Many2one<'res.company', { readonly required: true; readonly default: true }>;
|
|
2509
|
+
readonly production: F.Many2one<'production.order', { readonly required: true }>;
|
|
2510
|
+
readonly name: F.Char<{ readonly required: true }>;
|
|
2511
|
+
readonly workcenter: F.Many2one<'production.workcenter', { readonly required: true }>;
|
|
2512
|
+
readonly plannedMinutes: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
2513
|
+
readonly plannedStart: F.Datetime;
|
|
2514
|
+
readonly plannedStop: F.Datetime;
|
|
2515
|
+
readonly startedAt: F.Datetime;
|
|
2516
|
+
readonly finishedAt: F.Datetime;
|
|
2517
|
+
readonly actualMinutes: F.Decimal;
|
|
2518
|
+
readonly state: F.State<'ready' | 'progress' | 'done' | 'cancel', { readonly required: true; readonly readonly: true; readonly default: true }>;
|
|
2519
|
+
};
|
|
2520
|
+
readonly methods: ProductionWorkorderMethods;
|
|
2521
|
+
}
|
|
2522
|
+
|
|
2523
|
+
/** Methods of `production.workorder`: declared ones and transitions. */
|
|
2524
|
+
export interface ProductionWorkorderMethods extends F.Methods<typeof import('../../production/index.js').productionShutro, 'production.workorder'> {
|
|
2525
|
+
readonly 'cancel': () => Promise<void>;
|
|
2526
|
+
readonly 'close': () => Promise<void>;
|
|
2527
|
+
readonly 'finish': () => Promise<void>;
|
|
2528
|
+
readonly 'start': () => Promise<void>;
|
|
2529
|
+
}
|
|
2530
|
+
|
|
2531
|
+
/** `report.dashboard` (owner: reporting). */
|
|
2532
|
+
export interface ReportDashboard {
|
|
2533
|
+
readonly name: 'report.dashboard';
|
|
2534
|
+
readonly fields: {
|
|
2535
|
+
readonly id: F.Id<'report.dashboard'>;
|
|
2536
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2537
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2538
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2539
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2540
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
2541
|
+
readonly name: F.Char<{ readonly required: true }>;
|
|
2542
|
+
readonly items: F.Json<unknown, { readonly required: true; readonly default: true }>;
|
|
2543
|
+
readonly shared: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
2544
|
+
readonly key: F.Char;
|
|
2545
|
+
};
|
|
2546
|
+
readonly methods: ReportDashboardMethods;
|
|
2547
|
+
}
|
|
2548
|
+
|
|
2549
|
+
/** Methods of `report.dashboard`: declared ones and transitions. */
|
|
2550
|
+
export interface ReportDashboardMethods extends F.Methods<typeof import('../../reporting/index.js').reportingShutro, 'report.dashboard'> {
|
|
2551
|
+
}
|
|
2552
|
+
|
|
2553
|
+
/** `report.output` (owner: reporting). */
|
|
2554
|
+
export interface ReportOutput {
|
|
2555
|
+
readonly name: 'report.output';
|
|
2556
|
+
readonly fields: {
|
|
2557
|
+
readonly id: F.Id<'report.output'>;
|
|
2558
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2559
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2560
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2561
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2562
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
2563
|
+
readonly schedule: F.Many2one<'report.schedule'>;
|
|
2564
|
+
readonly name: F.Char<{ readonly required: true }>;
|
|
2565
|
+
readonly filename: F.Char<{ readonly required: true }>;
|
|
2566
|
+
readonly mime: F.Char<{ readonly required: true }>;
|
|
2567
|
+
readonly size: F.Integer<{ readonly required: true }>;
|
|
2568
|
+
readonly content: F.Binary<{ readonly required: true }>;
|
|
2569
|
+
readonly recipients: F.Many2many<'res.users', { readonly required: true }>;
|
|
2570
|
+
};
|
|
2571
|
+
readonly methods: ReportOutputMethods;
|
|
2572
|
+
}
|
|
2573
|
+
|
|
2574
|
+
/** Methods of `report.output`: declared ones and transitions. */
|
|
2575
|
+
export interface ReportOutputMethods extends F.Methods<typeof import('../../reporting/index.js').reportingShutro, 'report.output'> {
|
|
2576
|
+
}
|
|
2577
|
+
|
|
2578
|
+
/** `report.schedule` (owner: reporting). */
|
|
2579
|
+
export interface ReportSchedule {
|
|
2580
|
+
readonly name: 'report.schedule';
|
|
2581
|
+
readonly fields: {
|
|
2582
|
+
readonly id: F.Id<'report.schedule'>;
|
|
2583
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2584
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2585
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2586
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2587
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
2588
|
+
readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
2589
|
+
readonly name: F.Char<{ readonly required: true }>;
|
|
2590
|
+
readonly targetModel: F.Char<{ readonly required: true }>;
|
|
2591
|
+
readonly kind: F.Selection<'pivot' | 'list' | 'document', { readonly required: true; readonly default: true }>;
|
|
2592
|
+
readonly query: F.Json<unknown, { readonly required: true; readonly default: true }>;
|
|
2593
|
+
readonly template: F.Many2one<'report.template'>;
|
|
2594
|
+
readonly format: F.Selection<'xlsx' | 'csv' | 'pdf', { readonly required: true; readonly default: true }>;
|
|
2595
|
+
readonly frequency: F.Selection<'daily' | 'weekly' | 'monthly', { readonly required: true; readonly default: true }>;
|
|
2596
|
+
readonly hour: F.Integer<{ readonly default: true }>;
|
|
2597
|
+
readonly day: F.Integer<{ readonly default: true }>;
|
|
2598
|
+
readonly tz: F.Char<{ readonly default: true }>;
|
|
2599
|
+
readonly recipients: F.Many2many<'res.users', { readonly required: true }>;
|
|
2600
|
+
readonly nextRunAt: F.Datetime;
|
|
2601
|
+
readonly lastRunAt: F.Datetime;
|
|
2602
|
+
readonly lastError: F.Char;
|
|
2603
|
+
readonly shared: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
2604
|
+
};
|
|
2605
|
+
readonly methods: ReportScheduleMethods;
|
|
2606
|
+
}
|
|
2607
|
+
|
|
2608
|
+
/** Methods of `report.schedule`: declared ones and transitions. */
|
|
2609
|
+
export interface ReportScheduleMethods extends F.Methods<typeof import('../../reporting/index.js').reportingShutro, 'report.schedule'> {
|
|
2610
|
+
}
|
|
2611
|
+
|
|
2612
|
+
/** `report.spreadsheet` (owner: reporting). */
|
|
2613
|
+
export interface ReportSpreadsheet {
|
|
2614
|
+
readonly name: 'report.spreadsheet';
|
|
2615
|
+
readonly fields: {
|
|
2616
|
+
readonly id: F.Id<'report.spreadsheet'>;
|
|
2617
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2618
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2619
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2620
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2621
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
2622
|
+
readonly name: F.Char<{ readonly required: true }>;
|
|
2623
|
+
readonly cells: F.Json<unknown, { readonly required: true; readonly default: true }>;
|
|
2624
|
+
readonly shared: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
2625
|
+
};
|
|
2626
|
+
readonly methods: ReportSpreadsheetMethods;
|
|
2627
|
+
}
|
|
2628
|
+
|
|
2629
|
+
/** Methods of `report.spreadsheet`: declared ones and transitions. */
|
|
2630
|
+
export interface ReportSpreadsheetMethods extends F.Methods<typeof import('../../reporting/index.js').reportingShutro, 'report.spreadsheet'> {
|
|
2631
|
+
}
|
|
2632
|
+
|
|
2633
|
+
/** `report.template` (owner: reporting). */
|
|
2634
|
+
export interface ReportTemplate {
|
|
2635
|
+
readonly name: 'report.template';
|
|
2636
|
+
readonly fields: {
|
|
2637
|
+
readonly id: F.Id<'report.template'>;
|
|
2638
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2639
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2640
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2641
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2642
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
2643
|
+
readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
2644
|
+
readonly name: F.Char<{ readonly required: true }>;
|
|
2645
|
+
readonly targetModel: F.Char<{ readonly required: true }>;
|
|
2646
|
+
readonly key: F.Char;
|
|
2647
|
+
readonly layout: F.Json<unknown, { readonly required: true }>;
|
|
2648
|
+
readonly scope: F.Selection<'record' | 'list', { readonly required: true; readonly default: true }>;
|
|
2649
|
+
};
|
|
2650
|
+
readonly methods: ReportTemplateMethods;
|
|
2651
|
+
}
|
|
2652
|
+
|
|
2653
|
+
/** Methods of `report.template`: declared ones and transitions. */
|
|
2654
|
+
export interface ReportTemplateMethods extends F.Methods<typeof import('../../reporting/index.js').reportingShutro, 'report.template'> {
|
|
2655
|
+
}
|
|
2656
|
+
|
|
2657
|
+
/** `res.bank.account` (owner: accounting). */
|
|
2658
|
+
export interface ResBankAccount {
|
|
2659
|
+
readonly name: 'res.bank.account';
|
|
2660
|
+
readonly fields: {
|
|
2661
|
+
readonly id: F.Id<'res.bank.account'>;
|
|
2662
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2663
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2664
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2665
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2666
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
2667
|
+
readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
2668
|
+
readonly company: F.Many2one<'res.company', { readonly required: true; readonly default: true }>;
|
|
2669
|
+
readonly sequence: F.Integer<{ readonly required: true; readonly default: true }>;
|
|
2670
|
+
readonly bank: F.Char<{ readonly required: true }>;
|
|
2671
|
+
readonly branch: F.Char;
|
|
2672
|
+
readonly number: F.Char<{ readonly required: true }>;
|
|
2673
|
+
readonly holder: F.Char;
|
|
2674
|
+
readonly routing: F.Char;
|
|
2675
|
+
readonly swift: F.Char;
|
|
2676
|
+
readonly currency: F.Many2one<'res.currency'>;
|
|
2677
|
+
};
|
|
2678
|
+
readonly methods: ResBankAccountMethods;
|
|
2679
|
+
}
|
|
2680
|
+
|
|
2681
|
+
/** Methods of `res.bank.account`: declared ones and transitions. */
|
|
2682
|
+
export interface ResBankAccountMethods extends F.Methods<typeof import('../../accounting/index.js').accountingShutro, 'res.bank.account'> {
|
|
2683
|
+
}
|
|
2684
|
+
|
|
2685
|
+
/** `res.company` (owner: base; extended by: contacts, accounting, production, stock_account). */
|
|
2686
|
+
export interface ResCompany {
|
|
2687
|
+
readonly name: 'res.company';
|
|
2688
|
+
readonly fields: {
|
|
2689
|
+
readonly id: F.Id<'res.company'>;
|
|
2690
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2691
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2692
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2693
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2694
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
2695
|
+
readonly name: F.Char<{ readonly required: true }>;
|
|
2696
|
+
readonly currency: F.Many2one<'res.currency', { readonly required: true }>;
|
|
2697
|
+
readonly numberGrouping: F.Selection<'international' | 'lakh', { readonly required: true; readonly default: true }>;
|
|
2698
|
+
readonly accentColor: F.Char;
|
|
2699
|
+
readonly street: F.Char;
|
|
2700
|
+
readonly city: F.Char;
|
|
2701
|
+
readonly zip: F.Char;
|
|
2702
|
+
readonly email: F.Char;
|
|
2703
|
+
readonly phone: F.Char;
|
|
2704
|
+
readonly website: F.Char;
|
|
2705
|
+
readonly contactTaxIdRequired: F.Bool<{ readonly required: true; readonly default: true }>; // contacts
|
|
2706
|
+
readonly contactUniqueEmail: F.Bool<{ readonly required: true; readonly default: true }>; // contacts
|
|
2707
|
+
readonly fiscalYearStart: F.Integer<{ readonly required: true; readonly default: true }>; // accounting
|
|
2708
|
+
readonly chartTemplate: F.Char; // accounting
|
|
2709
|
+
readonly country: F.Char; // accounting
|
|
2710
|
+
readonly state: F.Char; // accounting
|
|
2711
|
+
readonly lockDate: F.DateOnly; // accounting
|
|
2712
|
+
readonly taxLockDate: F.DateOnly; // accounting
|
|
2713
|
+
readonly accountReceivable: F.Many2one<'account.account'>; // accounting
|
|
2714
|
+
readonly accountPayable: F.Many2one<'account.account'>; // accounting
|
|
2715
|
+
readonly accountExchangeGain: F.Many2one<'account.account'>; // accounting
|
|
2716
|
+
readonly accountExchangeLoss: F.Many2one<'account.account'>; // accounting
|
|
2717
|
+
readonly accountRetainedEarnings: F.Many2one<'account.account'>; // accounting
|
|
2718
|
+
readonly bomApproval: F.Bool<{ readonly required: true; readonly default: true }>; // production
|
|
2719
|
+
readonly stockJournal: F.Many2one<'account.journal'>; // stock_account
|
|
2720
|
+
readonly stockValuationAccount: F.Many2one<'account.account'>; // stock_account
|
|
2721
|
+
readonly stockInterimAccount: F.Many2one<'account.account'>; // stock_account
|
|
2722
|
+
readonly stockCogsAccount: F.Many2one<'account.account'>; // stock_account
|
|
2723
|
+
readonly stockAdjustmentAccount: F.Many2one<'account.account'>; // stock_account
|
|
2724
|
+
readonly stockPriceDiffAccount: F.Many2one<'account.account'>; // stock_account
|
|
2725
|
+
readonly stockProductionAccount: F.Many2one<'account.account'>; // stock_account
|
|
2726
|
+
};
|
|
2727
|
+
readonly methods: ResCompanyMethods;
|
|
2728
|
+
}
|
|
2729
|
+
|
|
2730
|
+
/** Methods of `res.company`: declared ones and transitions. */
|
|
2731
|
+
export interface ResCompanyMethods extends F.Methods<typeof import('../../server/index.js').baseShutro, 'res.company'>, F.Methods<typeof import('../../contacts/index.js').contactsShutro, 'res.company'>, F.Methods<typeof import('../../accounting/index.js').accountingShutro, 'res.company'>, F.Methods<typeof import('../../production/index.js').productionShutro, 'res.company'>, F.Methods<typeof import('../../stock_account/index.js').stockAccountShutro, 'res.company'> {
|
|
2732
|
+
}
|
|
2733
|
+
|
|
2734
|
+
/** `res.currency` (owner: base). */
|
|
2735
|
+
export interface ResCurrency {
|
|
2736
|
+
readonly name: 'res.currency';
|
|
2737
|
+
readonly fields: {
|
|
2738
|
+
readonly id: F.Id<'res.currency'>;
|
|
2739
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2740
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2741
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2742
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2743
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
2744
|
+
readonly name: F.Char<{ readonly required: true }>;
|
|
2745
|
+
readonly rounding: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
2746
|
+
readonly decimalPlaces: F.Integer<{ readonly default: true }>;
|
|
2747
|
+
};
|
|
2748
|
+
readonly methods: ResCurrencyMethods;
|
|
2749
|
+
}
|
|
2750
|
+
|
|
2751
|
+
/** Methods of `res.currency`: declared ones and transitions. */
|
|
2752
|
+
export interface ResCurrencyMethods extends F.Methods<typeof import('../../server/index.js').baseShutro, 'res.currency'> {
|
|
2753
|
+
}
|
|
2754
|
+
|
|
2755
|
+
/** `res.currency.rate` (owner: accounting). */
|
|
2756
|
+
export interface ResCurrencyRate {
|
|
2757
|
+
readonly name: 'res.currency.rate';
|
|
2758
|
+
readonly fields: {
|
|
2759
|
+
readonly id: F.Id<'res.currency.rate'>;
|
|
2760
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2761
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2762
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2763
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2764
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
2765
|
+
readonly currency: F.Many2one<'res.currency', { readonly required: true }>;
|
|
2766
|
+
readonly company: F.Many2one<'res.company'>;
|
|
2767
|
+
readonly date: F.DateOnly<{ readonly required: true; readonly default: true }>;
|
|
2768
|
+
readonly rate: F.Decimal<{ readonly required: true }>;
|
|
2769
|
+
};
|
|
2770
|
+
readonly methods: ResCurrencyRateMethods;
|
|
2771
|
+
}
|
|
2772
|
+
|
|
2773
|
+
/** Methods of `res.currency.rate`: declared ones and transitions. */
|
|
2774
|
+
export interface ResCurrencyRateMethods extends F.Methods<typeof import('../../accounting/index.js').accountingShutro, 'res.currency.rate'> {
|
|
2775
|
+
}
|
|
2776
|
+
|
|
2777
|
+
/** `res.partner` (owner: contacts; extended by: accounting, accounting). */
|
|
2778
|
+
export interface ResPartner {
|
|
2779
|
+
readonly name: 'res.partner';
|
|
2780
|
+
readonly fields: {
|
|
2781
|
+
readonly id: F.Id<'res.partner'>;
|
|
2782
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2783
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2784
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2785
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2786
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
2787
|
+
readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
2788
|
+
readonly company: F.Many2one<'res.company', { readonly default: true }>;
|
|
2789
|
+
readonly name: F.Char<{ readonly required: true }>;
|
|
2790
|
+
readonly image: F.Many2one<'storage.attachment'>;
|
|
2791
|
+
readonly tags: F.Many2many<'res.partner.tag', { readonly required: true }>;
|
|
2792
|
+
readonly latitude: F.Decimal;
|
|
2793
|
+
readonly longitude: F.Decimal;
|
|
2794
|
+
readonly isCompany: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
2795
|
+
readonly parent: F.Many2one<'res.partner'>;
|
|
2796
|
+
readonly contacts: F.One2many<'res.partner', { readonly required: true }>;
|
|
2797
|
+
readonly email: F.Char;
|
|
2798
|
+
readonly lang: F.Selection<'en' | 'bn'>;
|
|
2799
|
+
readonly phone: F.Char;
|
|
2800
|
+
readonly mobile: F.Char;
|
|
2801
|
+
readonly website: F.Char;
|
|
2802
|
+
readonly street: F.Char;
|
|
2803
|
+
readonly city: F.Char;
|
|
2804
|
+
readonly zip: F.Char;
|
|
2805
|
+
readonly country: F.Char;
|
|
2806
|
+
readonly state: F.Char;
|
|
2807
|
+
readonly taxId: F.Char;
|
|
2808
|
+
readonly isCustomer: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
2809
|
+
readonly isVendor: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
2810
|
+
readonly currency: F.Many2one<'res.currency'>;
|
|
2811
|
+
readonly notes: F.Text;
|
|
2812
|
+
readonly sendInvoicesByEmail: F.Bool<{ readonly required: true; readonly default: true }>; // accounting
|
|
2813
|
+
readonly withholdings: F.Many2many<'account.withholding', { readonly required: true }>; // accounting
|
|
2814
|
+
readonly receivableAccount: F.Many2one<'account.account'>; // accounting
|
|
2815
|
+
readonly payableAccount: F.Many2one<'account.account'>; // accounting
|
|
2816
|
+
readonly fiscalPosition: F.Many2one<'account.fiscal.position'>; // accounting
|
|
2817
|
+
};
|
|
2818
|
+
readonly methods: ResPartnerMethods;
|
|
2819
|
+
}
|
|
2820
|
+
|
|
2821
|
+
/** Methods of `res.partner`: declared ones and transitions. */
|
|
2822
|
+
export interface ResPartnerMethods extends F.Methods<typeof import('../../contacts/index.js').contactsShutro, 'res.partner'>, F.Methods<typeof import('../../accounting/index.js').accountingShutro, 'res.partner'>, F.Methods<typeof import('../../accounting/index.js').accountingShutro, 'res.partner'> {
|
|
2823
|
+
}
|
|
2824
|
+
|
|
2825
|
+
/** `res.partner.tag` (owner: contacts). */
|
|
2826
|
+
export interface ResPartnerTag {
|
|
2827
|
+
readonly name: 'res.partner.tag';
|
|
2828
|
+
readonly fields: {
|
|
2829
|
+
readonly id: F.Id<'res.partner.tag'>;
|
|
2830
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2831
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2832
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2833
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2834
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
2835
|
+
readonly name: F.Char<{ readonly required: true }>;
|
|
2836
|
+
};
|
|
2837
|
+
readonly methods: ResPartnerTagMethods;
|
|
2838
|
+
}
|
|
2839
|
+
|
|
2840
|
+
/** Methods of `res.partner.tag`: declared ones and transitions. */
|
|
2841
|
+
export interface ResPartnerTagMethods extends F.Methods<typeof import('../../contacts/index.js').contactsShutro, 'res.partner.tag'> {
|
|
2842
|
+
}
|
|
2843
|
+
|
|
2844
|
+
/** `res.segment` (owner: permissions). */
|
|
2845
|
+
export interface ResSegment {
|
|
2846
|
+
readonly name: 'res.segment';
|
|
2847
|
+
readonly fields: {
|
|
2848
|
+
readonly id: F.Id<'res.segment'>;
|
|
2849
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2850
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2851
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2852
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2853
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
2854
|
+
readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
2855
|
+
readonly name: F.Char<{ readonly required: true }>;
|
|
2856
|
+
readonly code: F.Char;
|
|
2857
|
+
readonly companies: F.Many2many<'res.company', { readonly required: true }>;
|
|
2858
|
+
readonly note: F.Text;
|
|
2859
|
+
};
|
|
2860
|
+
readonly methods: ResSegmentMethods;
|
|
2861
|
+
}
|
|
2862
|
+
|
|
2863
|
+
/** Methods of `res.segment`: declared ones and transitions. */
|
|
2864
|
+
export interface ResSegmentMethods extends F.Methods<typeof import('../../permissions/index.js').permissionsShutro, 'res.segment'> {
|
|
2865
|
+
}
|
|
2866
|
+
|
|
2867
|
+
/** `res.users` (owner: base). */
|
|
2868
|
+
export interface ResUsers {
|
|
2869
|
+
readonly name: 'res.users';
|
|
2870
|
+
readonly fields: {
|
|
2871
|
+
readonly id: F.Id<'res.users'>;
|
|
2872
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2873
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2874
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2875
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2876
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
2877
|
+
readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
2878
|
+
readonly login: F.Char<{ readonly required: true }>;
|
|
2879
|
+
readonly name: F.Char<{ readonly required: true }>;
|
|
2880
|
+
readonly email: F.Char;
|
|
2881
|
+
readonly phone: F.Char;
|
|
2882
|
+
readonly company: F.Many2one<'res.company'>;
|
|
2883
|
+
readonly companies: F.Many2many<'res.company', { readonly required: true }>;
|
|
2884
|
+
readonly lang: F.Char<{ readonly default: true }>;
|
|
2885
|
+
readonly tz: F.Char<{ readonly default: true }>;
|
|
2886
|
+
readonly isService: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
2887
|
+
};
|
|
2888
|
+
readonly methods: ResUsersMethods;
|
|
2889
|
+
}
|
|
2890
|
+
|
|
2891
|
+
/** Methods of `res.users`: declared ones and transitions. */
|
|
2892
|
+
export interface ResUsersMethods extends F.Methods<typeof import('../../server/index.js').baseShutro, 'res.users'> {
|
|
2893
|
+
}
|
|
2894
|
+
|
|
2895
|
+
/** `stock.count` (owner: stock). */
|
|
2896
|
+
export interface StockCount {
|
|
2897
|
+
readonly name: 'stock.count';
|
|
2898
|
+
readonly fields: {
|
|
2899
|
+
readonly id: F.Id<'stock.count'>;
|
|
2900
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2901
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2902
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2903
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2904
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
2905
|
+
readonly company: F.Many2one<'res.company', { readonly required: true; readonly default: true }>;
|
|
2906
|
+
readonly name: F.Char<{ readonly required: true; readonly readonly: true; readonly sequence: true }>;
|
|
2907
|
+
readonly location: F.Many2one<'stock.location', { readonly required: true }>;
|
|
2908
|
+
readonly date: F.DateOnly<{ readonly required: true; readonly default: true }>;
|
|
2909
|
+
readonly user: F.Many2one<'res.users', { readonly default: true }>;
|
|
2910
|
+
readonly lines: F.One2many<'stock.count.line', { readonly required: true }>;
|
|
2911
|
+
readonly adjustments: F.One2many<'stock.picking', { readonly required: true }>;
|
|
2912
|
+
readonly note: F.Text;
|
|
2913
|
+
readonly state: F.State<'draft' | 'counting' | 'done' | 'cancel', { readonly required: true; readonly readonly: true; readonly default: true }>;
|
|
2914
|
+
};
|
|
2915
|
+
readonly methods: StockCountMethods;
|
|
2916
|
+
}
|
|
2917
|
+
|
|
2918
|
+
/** Methods of `stock.count`: declared ones and transitions. */
|
|
2919
|
+
export interface StockCountMethods extends F.Methods<typeof import('../../stock/index.js').stockShutro, 'stock.count'> {
|
|
2920
|
+
readonly 'apply': () => Promise<void>;
|
|
2921
|
+
readonly 'cancel': () => Promise<void>;
|
|
2922
|
+
readonly 'redraft': () => Promise<void>;
|
|
2923
|
+
readonly 'start': () => Promise<void>;
|
|
2924
|
+
}
|
|
2925
|
+
|
|
2926
|
+
/** `stock.count.line` (owner: stock). */
|
|
2927
|
+
export interface StockCountLine {
|
|
2928
|
+
readonly name: 'stock.count.line';
|
|
2929
|
+
readonly fields: {
|
|
2930
|
+
readonly id: F.Id<'stock.count.line'>;
|
|
2931
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2932
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2933
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2934
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2935
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
2936
|
+
readonly count: F.Many2one<'stock.count', { readonly required: true }>;
|
|
2937
|
+
readonly product: F.Many2one<'product.product', { readonly required: true }>;
|
|
2938
|
+
readonly lot: F.Many2one<'stock.lot'>;
|
|
2939
|
+
readonly expected: F.Decimal;
|
|
2940
|
+
readonly counted: F.Decimal;
|
|
2941
|
+
readonly difference: F.Decimal<{ readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
2942
|
+
};
|
|
2943
|
+
readonly methods: StockCountLineMethods;
|
|
2944
|
+
}
|
|
2945
|
+
|
|
2946
|
+
/** Methods of `stock.count.line`: declared ones and transitions. */
|
|
2947
|
+
export interface StockCountLineMethods extends F.Methods<typeof import('../../stock/index.js').stockShutro, 'stock.count.line'> {
|
|
2948
|
+
}
|
|
2949
|
+
|
|
2950
|
+
/** `stock.landed.cost` (owner: stock_account). */
|
|
2951
|
+
export interface StockLandedCost {
|
|
2952
|
+
readonly name: 'stock.landed.cost';
|
|
2953
|
+
readonly fields: {
|
|
2954
|
+
readonly id: F.Id<'stock.landed.cost'>;
|
|
2955
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2956
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2957
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2958
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2959
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
2960
|
+
readonly company: F.Many2one<'res.company', { readonly required: true; readonly default: true }>;
|
|
2961
|
+
readonly name: F.Char<{ readonly required: true; readonly readonly: true; readonly sequence: true }>;
|
|
2962
|
+
readonly date: F.DateOnly<{ readonly required: true; readonly default: true }>;
|
|
2963
|
+
readonly pickings: F.Many2many<'stock.picking', { readonly required: true }>;
|
|
2964
|
+
readonly lines: F.One2many<'stock.landed.cost.line', { readonly required: true }>;
|
|
2965
|
+
readonly vendorBill: F.Many2one<'account.move'>;
|
|
2966
|
+
readonly move: F.Many2one<'account.move'>;
|
|
2967
|
+
readonly amountTotal: F.Decimal<{ readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
2968
|
+
readonly note: F.Text;
|
|
2969
|
+
readonly state: F.State<'draft' | 'posted' | 'cancel', { readonly required: true; readonly readonly: true; readonly default: true }>;
|
|
2970
|
+
};
|
|
2971
|
+
readonly methods: StockLandedCostMethods;
|
|
2972
|
+
}
|
|
2973
|
+
|
|
2974
|
+
/** Methods of `stock.landed.cost`: declared ones and transitions. */
|
|
2975
|
+
export interface StockLandedCostMethods extends F.Methods<typeof import('../../stock_account/index.js').stockAccountShutro, 'stock.landed.cost'> {
|
|
2976
|
+
readonly 'cancel': () => Promise<void>;
|
|
2977
|
+
readonly 'post': () => Promise<void>;
|
|
2978
|
+
}
|
|
2979
|
+
|
|
2980
|
+
/** `stock.landed.cost.line` (owner: stock_account). */
|
|
2981
|
+
export interface StockLandedCostLine {
|
|
2982
|
+
readonly name: 'stock.landed.cost.line';
|
|
2983
|
+
readonly fields: {
|
|
2984
|
+
readonly id: F.Id<'stock.landed.cost.line'>;
|
|
2985
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2986
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
2987
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2988
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
2989
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
2990
|
+
readonly cost: F.Many2one<'stock.landed.cost', { readonly required: true }>;
|
|
2991
|
+
readonly product: F.Many2one<'product.product', { readonly required: true }>;
|
|
2992
|
+
readonly name: F.Char;
|
|
2993
|
+
readonly amount: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
2994
|
+
readonly split: F.Selection<'quantity' | 'weight' | 'volume' | 'value' | 'equal', { readonly required: true; readonly default: true }>;
|
|
2995
|
+
};
|
|
2996
|
+
readonly methods: StockLandedCostLineMethods;
|
|
2997
|
+
}
|
|
2998
|
+
|
|
2999
|
+
/** Methods of `stock.landed.cost.line`: declared ones and transitions. */
|
|
3000
|
+
export interface StockLandedCostLineMethods extends F.Methods<typeof import('../../stock_account/index.js').stockAccountShutro, 'stock.landed.cost.line'> {
|
|
3001
|
+
}
|
|
3002
|
+
|
|
3003
|
+
/** `stock.location` (owner: stock). */
|
|
3004
|
+
export interface StockLocation {
|
|
3005
|
+
readonly name: 'stock.location';
|
|
3006
|
+
readonly fields: {
|
|
3007
|
+
readonly id: F.Id<'stock.location'>;
|
|
3008
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
3009
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
3010
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
3011
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
3012
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
3013
|
+
readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
3014
|
+
readonly company: F.Many2one<'res.company', { readonly default: true }>;
|
|
3015
|
+
readonly name: F.Char<{ readonly required: true; readonly translate: true }>;
|
|
3016
|
+
readonly parent: F.Many2one<'stock.location'>;
|
|
3017
|
+
readonly parentPath: F.Char<{ readonly readonly: true }>;
|
|
3018
|
+
readonly children: F.One2many<'stock.location', { readonly required: true }>;
|
|
3019
|
+
readonly warehouse: F.Many2one<'stock.warehouse'>;
|
|
3020
|
+
readonly usage: F.Selection<'internal' | 'vendor' | 'customer' | 'adjustment' | 'production' | 'transit' | 'consumption', { readonly required: true; readonly default: true }>;
|
|
3021
|
+
readonly transit: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
3022
|
+
readonly step: F.Selection<'input' | 'quality' | 'packing' | 'output'>;
|
|
3023
|
+
readonly fullName: F.Char<{ readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
3024
|
+
};
|
|
3025
|
+
readonly methods: StockLocationMethods;
|
|
3026
|
+
}
|
|
3027
|
+
|
|
3028
|
+
/** Methods of `stock.location`: declared ones and transitions. */
|
|
3029
|
+
export interface StockLocationMethods extends F.Methods<typeof import('../../stock/index.js').stockShutro, 'stock.location'> {
|
|
3030
|
+
}
|
|
3031
|
+
|
|
3032
|
+
/** `stock.lot` (owner: stock). */
|
|
3033
|
+
export interface StockLot {
|
|
3034
|
+
readonly name: 'stock.lot';
|
|
3035
|
+
readonly fields: {
|
|
3036
|
+
readonly id: F.Id<'stock.lot'>;
|
|
3037
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
3038
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
3039
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
3040
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
3041
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
3042
|
+
readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
3043
|
+
readonly company: F.Many2one<'res.company', { readonly required: true; readonly default: true }>;
|
|
3044
|
+
readonly name: F.Char<{ readonly required: true }>;
|
|
3045
|
+
readonly product: F.Many2one<'product.product', { readonly required: true }>;
|
|
3046
|
+
readonly expiryDate: F.DateOnly;
|
|
3047
|
+
readonly quants: F.One2many<'stock.quant', { readonly required: true }>;
|
|
3048
|
+
readonly qtyOnHand: F.Decimal<{ readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
3049
|
+
readonly history: F.One2many<'stock.lot.line', { readonly required: true }>;
|
|
3050
|
+
readonly note: F.Text;
|
|
3051
|
+
};
|
|
3052
|
+
readonly methods: StockLotMethods;
|
|
3053
|
+
}
|
|
3054
|
+
|
|
3055
|
+
/** Methods of `stock.lot`: declared ones and transitions. */
|
|
3056
|
+
export interface StockLotMethods extends F.Methods<typeof import('../../stock/index.js').stockShutro, 'stock.lot'> {
|
|
3057
|
+
}
|
|
3058
|
+
|
|
3059
|
+
/** `stock.lot.line` (owner: stock). */
|
|
3060
|
+
export interface StockLotLine {
|
|
3061
|
+
readonly name: 'stock.lot.line';
|
|
3062
|
+
readonly fields: {
|
|
3063
|
+
readonly id: F.Id<'stock.lot.line'>;
|
|
3064
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
3065
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
3066
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
3067
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
3068
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
3069
|
+
readonly picking: F.Many2one<'stock.picking', { readonly required: true }>;
|
|
3070
|
+
readonly product: F.Many2one<'product.product', { readonly required: true }>;
|
|
3071
|
+
readonly lot: F.Many2one<'stock.lot'>;
|
|
3072
|
+
readonly lotName: F.Char;
|
|
3073
|
+
readonly quantity: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
3074
|
+
};
|
|
3075
|
+
readonly methods: StockLotLineMethods;
|
|
3076
|
+
}
|
|
3077
|
+
|
|
3078
|
+
/** Methods of `stock.lot.line`: declared ones and transitions. */
|
|
3079
|
+
export interface StockLotLineMethods extends F.Methods<typeof import('../../stock/index.js').stockShutro, 'stock.lot.line'> {
|
|
3080
|
+
}
|
|
3081
|
+
|
|
3082
|
+
/** `stock.move` (owner: stock; extended by: stock_account, production_account). */
|
|
3083
|
+
export interface StockMove {
|
|
3084
|
+
readonly name: 'stock.move';
|
|
3085
|
+
readonly fields: {
|
|
3086
|
+
readonly id: F.Id<'stock.move'>;
|
|
3087
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
3088
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
3089
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
3090
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
3091
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
3092
|
+
readonly picking: F.Many2one<'stock.picking', { readonly required: true }>;
|
|
3093
|
+
readonly product: F.Many2one<'product.product', { readonly required: true }>;
|
|
3094
|
+
readonly name: F.Char;
|
|
3095
|
+
readonly quantity: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
3096
|
+
readonly uom: F.Many2one<'uom.uom'>;
|
|
3097
|
+
readonly productQty: F.Decimal<{ readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
3098
|
+
readonly quantityDone: F.Decimal;
|
|
3099
|
+
readonly returnOf: F.Many2one<'stock.move'>;
|
|
3100
|
+
readonly returns: F.One2many<'stock.move', { readonly required: true }>;
|
|
3101
|
+
readonly doneQty: F.Decimal<{ readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
3102
|
+
readonly restrictLot: F.Many2one<'stock.lot'>;
|
|
3103
|
+
readonly procurement: F.Char;
|
|
3104
|
+
readonly destination: F.Many2one<'stock.location'>;
|
|
3105
|
+
readonly reservations: F.One2many<'stock.reservation', { readonly required: true }>;
|
|
3106
|
+
readonly reserved: F.Decimal<{ readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
3107
|
+
};
|
|
3108
|
+
readonly methods: StockMoveMethods;
|
|
3109
|
+
}
|
|
3110
|
+
|
|
3111
|
+
/** Methods of `stock.move`: declared ones and transitions. */
|
|
3112
|
+
export interface StockMoveMethods extends F.Methods<typeof import('../../stock/index.js').stockShutro, 'stock.move'>, F.Methods<typeof import('../../stock_account/index.js').stockAccountShutro, 'stock.move'>, F.Methods<typeof import('../module.js').productionAccountShutro, 'stock.move'> {
|
|
3113
|
+
}
|
|
3114
|
+
|
|
3115
|
+
/** `stock.picking` (owner: stock; extended by: stock_account, stock_account, production_account). */
|
|
3116
|
+
export interface StockPicking {
|
|
3117
|
+
readonly name: 'stock.picking';
|
|
3118
|
+
readonly fields: {
|
|
3119
|
+
readonly id: F.Id<'stock.picking'>;
|
|
3120
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
3121
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
3122
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
3123
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
3124
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
3125
|
+
readonly company: F.Many2one<'res.company', { readonly required: true; readonly default: true }>;
|
|
3126
|
+
readonly name: F.Char<{ readonly required: true; readonly readonly: true; readonly sequence: true }>;
|
|
3127
|
+
readonly kind: F.Selection<'receipt' | 'delivery' | 'internal' | 'adjustment' | 'production' | 'dropship', { readonly required: true; readonly default: true }>;
|
|
3128
|
+
readonly partner: F.Many2one<'res.partner'>;
|
|
3129
|
+
readonly warehouse: F.Many2one<'stock.warehouse'>;
|
|
3130
|
+
readonly source: F.Many2one<'stock.location', { readonly required: true }>;
|
|
3131
|
+
readonly destination: F.Many2one<'stock.location', { readonly required: true }>;
|
|
3132
|
+
readonly scheduledDate: F.DateOnly<{ readonly required: true; readonly default: true }>;
|
|
3133
|
+
readonly doneDate: F.DateOnly;
|
|
3134
|
+
readonly origin: F.Char;
|
|
3135
|
+
readonly note: F.Text;
|
|
3136
|
+
readonly moves: F.One2many<'stock.move', { readonly required: true }>;
|
|
3137
|
+
readonly lotLines: F.One2many<'stock.lot.line', { readonly required: true }>;
|
|
3138
|
+
readonly count: F.Many2one<'stock.count'>;
|
|
3139
|
+
readonly responsible: F.Many2one<'res.users'>;
|
|
3140
|
+
readonly carrier: F.Char;
|
|
3141
|
+
readonly trackingRef: F.Char;
|
|
3142
|
+
readonly weight: F.Decimal<{ readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
3143
|
+
readonly vehicleNumber: F.Char;
|
|
3144
|
+
readonly driverName: F.Char;
|
|
3145
|
+
readonly driverMobile: F.Char;
|
|
3146
|
+
readonly transporter: F.Many2one<'res.partner'>;
|
|
3147
|
+
readonly transportDate: F.DateOnly;
|
|
3148
|
+
readonly gateIn: F.Datetime;
|
|
3149
|
+
readonly gateOut: F.Datetime;
|
|
3150
|
+
readonly freightAmount: F.Decimal;
|
|
3151
|
+
readonly deductFromSupplier: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
3152
|
+
readonly supplierDeduction: F.Decimal;
|
|
3153
|
+
readonly charges: F.One2many<'stock.picking.charge', { readonly required: true }>;
|
|
3154
|
+
readonly extras: F.One2many<'stock.picking.extra', { readonly required: true }>;
|
|
3155
|
+
readonly gateNote: F.Text;
|
|
3156
|
+
readonly remarks: F.Text;
|
|
3157
|
+
readonly backorderOf: F.Many2one<'stock.picking'>;
|
|
3158
|
+
readonly backorders: F.One2many<'stock.picking', { readonly required: true }>;
|
|
3159
|
+
readonly returnOf: F.Many2one<'stock.picking'>;
|
|
3160
|
+
readonly returns: F.One2many<'stock.picking', { readonly required: true }>;
|
|
3161
|
+
readonly returnReason: F.Many2one<'stock.return.reason'>;
|
|
3162
|
+
readonly next: F.Many2one<'stock.picking'>;
|
|
3163
|
+
readonly previousSteps: F.One2many<'stock.picking', { readonly required: true }>;
|
|
3164
|
+
readonly availability: F.Selection<'none' | 'partial' | 'full', { readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
3165
|
+
readonly status: F.Selection<'draft' | 'waiting' | 'ready' | 'done' | 'cancelled', { readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
3166
|
+
readonly state: F.State<'draft' | 'confirmed' | 'done' | 'cancel', { readonly required: true; readonly readonly: true; readonly default: true }>;
|
|
3167
|
+
readonly valuationLayers: F.One2many<'stock.valuation.layer', { readonly required: true }>; // stock_account
|
|
3168
|
+
};
|
|
3169
|
+
readonly methods: StockPickingMethods;
|
|
3170
|
+
}
|
|
3171
|
+
|
|
3172
|
+
/** Methods of `stock.picking`: declared ones and transitions. */
|
|
3173
|
+
export interface StockPickingMethods extends F.Methods<typeof import('../../stock/index.js').stockShutro, 'stock.picking'>, F.Methods<typeof import('../../stock_account/index.js').stockAccountShutro, 'stock.picking'>, F.Methods<typeof import('../../stock_account/index.js').stockAccountShutro, 'stock.picking'>, F.Methods<typeof import('../module.js').productionAccountShutro, 'stock.picking'> {
|
|
3174
|
+
readonly 'cancel': () => Promise<void>;
|
|
3175
|
+
readonly 'confirm': () => Promise<void>;
|
|
3176
|
+
readonly 'redraft': () => Promise<void>;
|
|
3177
|
+
readonly 'reserve': () => Promise<void>;
|
|
3178
|
+
readonly 'unreserve': () => Promise<void>;
|
|
3179
|
+
readonly 'validate': () => Promise<void>;
|
|
3180
|
+
}
|
|
3181
|
+
|
|
3182
|
+
/** `stock.picking.charge` (owner: stock). */
|
|
3183
|
+
export interface StockPickingCharge {
|
|
3184
|
+
readonly name: 'stock.picking.charge';
|
|
3185
|
+
readonly fields: {
|
|
3186
|
+
readonly id: F.Id<'stock.picking.charge'>;
|
|
3187
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
3188
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
3189
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
3190
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
3191
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
3192
|
+
readonly picking: F.Many2one<'stock.picking', { readonly required: true }>;
|
|
3193
|
+
readonly name: F.Char<{ readonly required: true }>;
|
|
3194
|
+
readonly kind: F.Selection<'addition' | 'deduction', { readonly required: true; readonly default: true }>;
|
|
3195
|
+
readonly amount: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
3196
|
+
};
|
|
3197
|
+
readonly methods: StockPickingChargeMethods;
|
|
3198
|
+
}
|
|
3199
|
+
|
|
3200
|
+
/** Methods of `stock.picking.charge`: declared ones and transitions. */
|
|
3201
|
+
export interface StockPickingChargeMethods extends F.Methods<typeof import('../../stock/index.js').stockShutro, 'stock.picking.charge'> {
|
|
3202
|
+
}
|
|
3203
|
+
|
|
3204
|
+
/** `stock.picking.extra` (owner: stock). */
|
|
3205
|
+
export interface StockPickingExtra {
|
|
3206
|
+
readonly name: 'stock.picking.extra';
|
|
3207
|
+
readonly fields: {
|
|
3208
|
+
readonly id: F.Id<'stock.picking.extra'>;
|
|
3209
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
3210
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
3211
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
3212
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
3213
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
3214
|
+
readonly picking: F.Many2one<'stock.picking', { readonly required: true }>;
|
|
3215
|
+
readonly product: F.Many2one<'product.product'>;
|
|
3216
|
+
readonly name: F.Char<{ readonly required: true }>;
|
|
3217
|
+
readonly quantity: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
3218
|
+
readonly note: F.Char;
|
|
3219
|
+
};
|
|
3220
|
+
readonly methods: StockPickingExtraMethods;
|
|
3221
|
+
}
|
|
3222
|
+
|
|
3223
|
+
/** Methods of `stock.picking.extra`: declared ones and transitions. */
|
|
3224
|
+
export interface StockPickingExtraMethods extends F.Methods<typeof import('../../stock/index.js').stockShutro, 'stock.picking.extra'> {
|
|
3225
|
+
}
|
|
3226
|
+
|
|
3227
|
+
/** `stock.putaway` (owner: stock). */
|
|
3228
|
+
export interface StockPutaway {
|
|
3229
|
+
readonly name: 'stock.putaway';
|
|
3230
|
+
readonly fields: {
|
|
3231
|
+
readonly id: F.Id<'stock.putaway'>;
|
|
3232
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
3233
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
3234
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
3235
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
3236
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
3237
|
+
readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
3238
|
+
readonly company: F.Many2one<'res.company', { readonly required: true; readonly default: true }>;
|
|
3239
|
+
readonly location: F.Many2one<'stock.location', { readonly required: true }>;
|
|
3240
|
+
readonly product: F.Many2one<'product.product'>;
|
|
3241
|
+
readonly category: F.Many2one<'product.category'>;
|
|
3242
|
+
readonly destination: F.Many2one<'stock.location', { readonly required: true }>;
|
|
3243
|
+
readonly sequence: F.Integer<{ readonly required: true; readonly default: true }>;
|
|
3244
|
+
};
|
|
3245
|
+
readonly methods: StockPutawayMethods;
|
|
3246
|
+
}
|
|
3247
|
+
|
|
3248
|
+
/** Methods of `stock.putaway`: declared ones and transitions. */
|
|
3249
|
+
export interface StockPutawayMethods extends F.Methods<typeof import('../../stock/index.js').stockShutro, 'stock.putaway'> {
|
|
3250
|
+
}
|
|
3251
|
+
|
|
3252
|
+
/** `stock.quant` (owner: stock). */
|
|
3253
|
+
export interface StockQuant {
|
|
3254
|
+
readonly name: 'stock.quant';
|
|
3255
|
+
readonly fields: {
|
|
3256
|
+
readonly id: F.Id<'stock.quant'>;
|
|
3257
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
3258
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
3259
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
3260
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
3261
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
3262
|
+
readonly company: F.Many2one<'res.company', { readonly required: true; readonly default: true }>;
|
|
3263
|
+
readonly product: F.Many2one<'product.product', { readonly required: true }>;
|
|
3264
|
+
readonly location: F.Many2one<'stock.location', { readonly required: true }>;
|
|
3265
|
+
readonly lot: F.Many2one<'stock.lot'>;
|
|
3266
|
+
readonly quantity: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
3267
|
+
readonly reservations: F.One2many<'stock.reservation', { readonly required: true }>;
|
|
3268
|
+
readonly reserved: F.Decimal<{ readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
3269
|
+
readonly available: F.Decimal<{ readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
3270
|
+
};
|
|
3271
|
+
readonly methods: StockQuantMethods;
|
|
3272
|
+
}
|
|
3273
|
+
|
|
3274
|
+
/** Methods of `stock.quant`: declared ones and transitions. */
|
|
3275
|
+
export interface StockQuantMethods extends F.Methods<typeof import('../../stock/index.js').stockShutro, 'stock.quant'> {
|
|
3276
|
+
}
|
|
3277
|
+
|
|
3278
|
+
/** `stock.reorder` (owner: stock; extended by: production). */
|
|
3279
|
+
export interface StockReorder {
|
|
3280
|
+
readonly name: 'stock.reorder';
|
|
3281
|
+
readonly fields: {
|
|
3282
|
+
readonly id: F.Id<'stock.reorder'>;
|
|
3283
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
3284
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
3285
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
3286
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
3287
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
3288
|
+
readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
3289
|
+
readonly company: F.Many2one<'res.company', { readonly required: true; readonly default: true }>;
|
|
3290
|
+
readonly name: F.Char<{ readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
3291
|
+
readonly product: F.Many2one<'product.product', { readonly required: true }>;
|
|
3292
|
+
readonly warehouse: F.Many2one<'stock.warehouse', { readonly required: true }>;
|
|
3293
|
+
readonly minimum: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
3294
|
+
readonly maximum: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
3295
|
+
readonly multiple: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
3296
|
+
readonly leadDays: F.Integer<{ readonly required: true; readonly default: true }>;
|
|
3297
|
+
readonly method: F.Selection<'buy' | 'make' | 'transfer' | 'dropship', { readonly required: true; readonly default: true }>;
|
|
3298
|
+
readonly trigger: F.Selection<'minmax' | 'order', { readonly required: true; readonly default: true }>;
|
|
3299
|
+
readonly vendor: F.Many2one<'res.partner'>;
|
|
3300
|
+
readonly sourceWarehouse: F.Many2one<'stock.warehouse'>;
|
|
3301
|
+
readonly auto: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
3302
|
+
readonly snoozedUntil: F.DateOnly;
|
|
3303
|
+
readonly onHand: F.Decimal;
|
|
3304
|
+
readonly forecast: F.Decimal;
|
|
3305
|
+
readonly proposed: F.Decimal;
|
|
3306
|
+
readonly explanation: F.Text;
|
|
3307
|
+
readonly refreshedAt: F.Datetime;
|
|
3308
|
+
readonly lastOrder: F.Char;
|
|
3309
|
+
};
|
|
3310
|
+
readonly methods: StockReorderMethods;
|
|
3311
|
+
}
|
|
3312
|
+
|
|
3313
|
+
/** Methods of `stock.reorder`: declared ones and transitions. */
|
|
3314
|
+
export interface StockReorderMethods extends F.Methods<typeof import('../../stock/index.js').stockShutro, 'stock.reorder'>, F.Methods<typeof import('../../production/index.js').productionShutro, 'stock.reorder'> {
|
|
3315
|
+
}
|
|
3316
|
+
|
|
3317
|
+
/** `stock.reservation` (owner: stock). */
|
|
3318
|
+
export interface StockReservation {
|
|
3319
|
+
readonly name: 'stock.reservation';
|
|
3320
|
+
readonly fields: {
|
|
3321
|
+
readonly id: F.Id<'stock.reservation'>;
|
|
3322
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
3323
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
3324
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
3325
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
3326
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
3327
|
+
readonly move: F.Many2one<'stock.move', { readonly required: true }>;
|
|
3328
|
+
readonly quant: F.Many2one<'stock.quant', { readonly required: true }>;
|
|
3329
|
+
readonly quantity: F.Decimal<{ readonly required: true }>;
|
|
3330
|
+
readonly label: F.Char<{ readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
3331
|
+
};
|
|
3332
|
+
readonly methods: StockReservationMethods;
|
|
3333
|
+
}
|
|
3334
|
+
|
|
3335
|
+
/** Methods of `stock.reservation`: declared ones and transitions. */
|
|
3336
|
+
export interface StockReservationMethods extends F.Methods<typeof import('../../stock/index.js').stockShutro, 'stock.reservation'> {
|
|
3337
|
+
}
|
|
3338
|
+
|
|
3339
|
+
/** `stock.return.reason` (owner: stock). */
|
|
3340
|
+
export interface StockReturnReason {
|
|
3341
|
+
readonly name: 'stock.return.reason';
|
|
3342
|
+
readonly fields: {
|
|
3343
|
+
readonly id: F.Id<'stock.return.reason'>;
|
|
3344
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
3345
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
3346
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
3347
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
3348
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
3349
|
+
readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
3350
|
+
readonly name: F.Char<{ readonly required: true; readonly translate: true }>;
|
|
3351
|
+
readonly sequence: F.Integer<{ readonly default: true }>;
|
|
3352
|
+
readonly code: F.Char;
|
|
3353
|
+
};
|
|
3354
|
+
readonly methods: StockReturnReasonMethods;
|
|
3355
|
+
}
|
|
3356
|
+
|
|
3357
|
+
/** Methods of `stock.return.reason`: declared ones and transitions. */
|
|
3358
|
+
export interface StockReturnReasonMethods extends F.Methods<typeof import('../../stock/index.js').stockShutro, 'stock.return.reason'> {
|
|
3359
|
+
}
|
|
3360
|
+
|
|
3361
|
+
/** `stock.scrap` (owner: stock; extended by: production). */
|
|
3362
|
+
export interface StockScrap {
|
|
3363
|
+
readonly name: 'stock.scrap';
|
|
3364
|
+
readonly fields: {
|
|
3365
|
+
readonly id: F.Id<'stock.scrap'>;
|
|
3366
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
3367
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
3368
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
3369
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
3370
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
3371
|
+
readonly company: F.Many2one<'res.company', { readonly required: true; readonly default: true }>;
|
|
3372
|
+
readonly name: F.Char<{ readonly required: true; readonly readonly: true; readonly sequence: true }>;
|
|
3373
|
+
readonly product: F.Many2one<'product.product', { readonly required: true }>;
|
|
3374
|
+
readonly quantity: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
3375
|
+
readonly location: F.Many2one<'stock.location'>;
|
|
3376
|
+
readonly lot: F.Many2one<'stock.lot'>;
|
|
3377
|
+
readonly reason: F.Selection<'damaged' | 'defect' | 'expired' | 'spill' | 'other', { readonly required: true; readonly default: true }>;
|
|
3378
|
+
readonly note: F.Text;
|
|
3379
|
+
readonly date: F.DateOnly<{ readonly required: true; readonly default: true }>;
|
|
3380
|
+
readonly picking: F.Many2one<'stock.picking'>;
|
|
3381
|
+
readonly state: F.State<'draft' | 'done' | 'cancel', { readonly required: true; readonly readonly: true; readonly default: true }>;
|
|
3382
|
+
readonly production: F.Many2one<'production.order'>; // production
|
|
3383
|
+
};
|
|
3384
|
+
readonly methods: StockScrapMethods;
|
|
3385
|
+
}
|
|
3386
|
+
|
|
3387
|
+
/** Methods of `stock.scrap`: declared ones and transitions. */
|
|
3388
|
+
export interface StockScrapMethods extends F.Methods<typeof import('../../stock/index.js').stockShutro, 'stock.scrap'>, F.Methods<typeof import('../../production/index.js').productionShutro, 'stock.scrap'> {
|
|
3389
|
+
readonly 'cancel': () => Promise<void>;
|
|
3390
|
+
readonly 'validate': () => Promise<void>;
|
|
3391
|
+
}
|
|
3392
|
+
|
|
3393
|
+
/** `stock.valuation.layer` (owner: stock_account). */
|
|
3394
|
+
export interface StockValuationLayer {
|
|
3395
|
+
readonly name: 'stock.valuation.layer';
|
|
3396
|
+
readonly fields: {
|
|
3397
|
+
readonly id: F.Id<'stock.valuation.layer'>;
|
|
3398
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
3399
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
3400
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
3401
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
3402
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
3403
|
+
readonly company: F.Many2one<'res.company', { readonly required: true; readonly default: true }>;
|
|
3404
|
+
readonly product: F.Many2one<'product.product', { readonly required: true }>;
|
|
3405
|
+
readonly picking: F.Many2one<'stock.picking'>;
|
|
3406
|
+
readonly move: F.Many2one<'stock.move'>;
|
|
3407
|
+
readonly date: F.DateOnly<{ readonly required: true; readonly default: true }>;
|
|
3408
|
+
readonly quantity: F.Decimal<{ readonly required: true }>;
|
|
3409
|
+
readonly unitCost: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
3410
|
+
readonly value: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
3411
|
+
readonly remainingQty: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
3412
|
+
readonly remainingValue: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
3413
|
+
readonly accountMove: F.Many2one<'account.move'>;
|
|
3414
|
+
};
|
|
3415
|
+
readonly methods: StockValuationLayerMethods;
|
|
3416
|
+
}
|
|
3417
|
+
|
|
3418
|
+
/** Methods of `stock.valuation.layer`: declared ones and transitions. */
|
|
3419
|
+
export interface StockValuationLayerMethods extends F.Methods<typeof import('../../stock_account/index.js').stockAccountShutro, 'stock.valuation.layer'> {
|
|
3420
|
+
}
|
|
3421
|
+
|
|
3422
|
+
/** `stock.warehouse` (owner: stock). */
|
|
3423
|
+
export interface StockWarehouse {
|
|
3424
|
+
readonly name: 'stock.warehouse';
|
|
3425
|
+
readonly fields: {
|
|
3426
|
+
readonly id: F.Id<'stock.warehouse'>;
|
|
3427
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
3428
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
3429
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
3430
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
3431
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
3432
|
+
readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
3433
|
+
readonly company: F.Many2one<'res.company', { readonly required: true; readonly default: true }>;
|
|
3434
|
+
readonly name: F.Char<{ readonly required: true }>;
|
|
3435
|
+
readonly code: F.Char<{ readonly required: true }>;
|
|
3436
|
+
readonly locations: F.One2many<'stock.location', { readonly required: true }>;
|
|
3437
|
+
readonly address: F.Many2one<'res.partner'>;
|
|
3438
|
+
readonly receptionSteps: F.Selection<'one' | 'two' | 'three', { readonly required: true; readonly default: true }>;
|
|
3439
|
+
readonly deliverySteps: F.Selection<'one' | 'two' | 'three', { readonly required: true; readonly default: true }>;
|
|
3440
|
+
};
|
|
3441
|
+
readonly methods: StockWarehouseMethods;
|
|
3442
|
+
}
|
|
3443
|
+
|
|
3444
|
+
/** Methods of `stock.warehouse`: declared ones and transitions. */
|
|
3445
|
+
export interface StockWarehouseMethods extends F.Methods<typeof import('../../stock/index.js').stockShutro, 'stock.warehouse'> {
|
|
3446
|
+
}
|
|
3447
|
+
|
|
3448
|
+
/** `storage.attachment` (owner: storage). */
|
|
3449
|
+
export interface StorageAttachment {
|
|
3450
|
+
readonly name: 'storage.attachment';
|
|
3451
|
+
readonly fields: {
|
|
3452
|
+
readonly id: F.Id<'storage.attachment'>;
|
|
3453
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
3454
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
3455
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
3456
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
3457
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
3458
|
+
readonly name: F.Char<{ readonly required: true }>;
|
|
3459
|
+
readonly mime: F.Char<{ readonly required: true }>;
|
|
3460
|
+
readonly size: F.Integer<{ readonly required: true }>;
|
|
3461
|
+
readonly sha256: F.Char<{ readonly required: true }>;
|
|
3462
|
+
readonly key: F.Char<{ readonly required: true }>;
|
|
3463
|
+
readonly resModel: F.Char<{ readonly required: true }>;
|
|
3464
|
+
readonly resId: F.Integer<{ readonly required: true }>;
|
|
3465
|
+
readonly variantOf: F.Many2one<'storage.attachment'>;
|
|
3466
|
+
readonly width: F.Integer;
|
|
3467
|
+
};
|
|
3468
|
+
readonly methods: StorageAttachmentMethods;
|
|
3469
|
+
}
|
|
3470
|
+
|
|
3471
|
+
/** Methods of `storage.attachment`: declared ones and transitions. */
|
|
3472
|
+
export interface StorageAttachmentMethods extends F.Methods<typeof import('../../storage/index.js').storageShutro, 'storage.attachment'> {
|
|
3473
|
+
}
|
|
3474
|
+
|
|
3475
|
+
/** `uom.uom` (owner: product). */
|
|
3476
|
+
export interface UomUom {
|
|
3477
|
+
readonly name: 'uom.uom';
|
|
3478
|
+
readonly fields: {
|
|
3479
|
+
readonly id: F.Id<'uom.uom'>;
|
|
3480
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
3481
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
3482
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
3483
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
3484
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
3485
|
+
readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
3486
|
+
readonly name: F.Char<{ readonly required: true; readonly translate: true }>;
|
|
3487
|
+
readonly category: F.Selection<'unit' | 'time' | 'weight' | 'length' | 'volume', { readonly required: true; readonly default: true }>;
|
|
3488
|
+
readonly ratio: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
3489
|
+
readonly rounding: F.Decimal<{ readonly required: true; readonly default: true }>;
|
|
3490
|
+
};
|
|
3491
|
+
readonly methods: UomUomMethods;
|
|
3492
|
+
}
|
|
3493
|
+
|
|
3494
|
+
/** Methods of `uom.uom`: declared ones and transitions. */
|
|
3495
|
+
export interface UomUomMethods extends F.Methods<typeof import('../../product/index.js').productShutro, 'uom.uom'> {
|
|
3496
|
+
}
|