shutro-erp 0.3.5 → 0.3.6
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.d.ts +22 -0
- package/dist/account_asset/.kosh/bindings.js +15 -0
- package/dist/account_asset/.kosh/schema.d.ts +1755 -0
- package/dist/account_asset/board.d.ts +61 -0
- package/dist/account_asset/board.js +86 -0
- package/dist/account_asset/books.d.ts +42 -0
- package/dist/account_asset/books.js +398 -0
- package/dist/account_asset/demo.d.ts +7 -0
- package/dist/account_asset/demo.js +72 -0
- package/dist/account_asset/index.d.ts +9 -0
- package/dist/account_asset/index.js +335 -0
- package/dist/account_asset/module.d.ts +7622 -0
- package/dist/account_asset/module.js +230 -0
- package/dist/account_budget/.kosh/bindings.d.ts +22 -0
- package/dist/account_budget/.kosh/bindings.js +15 -0
- package/dist/account_budget/.kosh/schema.d.ts +1767 -0
- package/dist/account_budget/budget.d.ts +5 -0
- package/dist/account_budget/budget.js +142 -0
- package/dist/account_budget/demo.d.ts +6 -0
- package/dist/account_budget/demo.js +30 -0
- package/dist/account_budget/index.d.ts +4 -0
- package/dist/account_budget/index.js +223 -0
- package/dist/account_budget/module.d.ts +13863 -0
- package/dist/account_budget/module.js +167 -0
- package/dist/account_portal/.kosh/bindings.js +1 -1
- package/dist/account_portal/.kosh/schema.d.ts +123 -4
- package/dist/account_portal/module.d.ts +146 -0
- package/dist/accounting/.kosh/bindings.js +1 -1
- package/dist/accounting/.kosh/schema.d.ts +123 -4
- package/dist/accounting/index.d.ts +1 -1
- package/dist/accounting/index.js +131 -3
- package/dist/accounting/module.d.ts +296 -0
- package/dist/accounting/module.js +32 -1
- package/dist/approvals/.kosh/bindings.d.ts +22 -0
- package/dist/approvals/.kosh/bindings.js +15 -0
- package/dist/approvals/.kosh/schema.d.ts +611 -0
- package/dist/approvals/index.d.ts +18 -0
- package/dist/approvals/index.js +302 -0
- package/dist/approvals/mails.d.ts +25 -0
- package/dist/approvals/mails.js +82 -0
- package/dist/approvals/module.d.ts +1 -0
- package/dist/approvals/module.js +12 -0
- package/dist/approvals/web/History.d.ts +4 -0
- package/dist/approvals/web/History.js +13 -0
- package/dist/approvals/web/Inbox.d.ts +9 -0
- package/dist/approvals/web/Inbox.js +114 -0
- package/dist/approvals/web/Mine.d.ts +7 -0
- package/dist/approvals/web/Mine.js +27 -0
- package/dist/approvals/web/index.d.ts +13 -0
- package/dist/approvals/web/index.js +22 -0
- package/dist/approvals/web/messages.d.ts +2 -0
- package/dist/approvals/web/messages.js +119 -0
- package/dist/approvals/web/shared.d.ts +59 -0
- package/dist/approvals/web/shared.js +46 -0
- package/dist/attendance/.kosh/bindings.d.ts +22 -0
- package/dist/attendance/.kosh/bindings.js +15 -0
- package/dist/attendance/.kosh/schema.d.ts +1048 -0
- package/dist/attendance/days.d.ts +96 -0
- package/dist/attendance/days.js +430 -0
- package/dist/attendance/demo.d.ts +7 -0
- package/dist/attendance/demo.js +58 -0
- package/dist/attendance/index.d.ts +4 -0
- package/dist/attendance/index.js +513 -0
- package/dist/attendance/module.d.ts +3969 -0
- package/dist/attendance/module.js +412 -0
- package/dist/attendance/routes.d.ts +16 -0
- package/dist/attendance/routes.js +266 -0
- package/dist/attendance/web/Check.d.ts +8 -0
- package/dist/attendance/web/Check.js +40 -0
- package/dist/attendance/web/Kiosk.d.ts +8 -0
- package/dist/attendance/web/Kiosk.js +62 -0
- package/dist/attendance/web/PinButton.d.ts +7 -0
- package/dist/attendance/web/PinButton.js +29 -0
- package/dist/attendance/web/index.d.ts +13 -0
- package/dist/attendance/web/index.js +22 -0
- package/dist/attendance/web/messages.d.ts +2 -0
- package/dist/attendance/web/messages.js +61 -0
- package/dist/cli/init.js +32 -0
- package/dist/cli/templates.d.ts +1 -1
- package/dist/cli/templates.js +89 -0
- package/dist/contacts/module.js +13 -2
- package/dist/crm/.kosh/bindings.js +1 -1
- package/dist/crm/.kosh/schema.d.ts +2 -1
- package/dist/crm/module.d.ts +2 -0
- package/dist/crm/module.js +2 -1
- package/dist/documents/.kosh/bindings.d.ts +22 -0
- package/dist/documents/.kosh/bindings.js +15 -0
- package/dist/documents/.kosh/schema.d.ts +862 -0
- package/dist/documents/demo.d.ts +6 -0
- package/dist/documents/demo.js +22 -0
- package/dist/documents/documents.d.ts +98 -0
- package/dist/documents/documents.js +318 -0
- package/dist/documents/index.d.ts +30 -0
- package/dist/documents/index.js +442 -0
- package/dist/documents/module.d.ts +2781 -0
- package/dist/documents/module.js +214 -0
- package/dist/documents/web/Versions.d.ts +7 -0
- package/dist/documents/web/Versions.js +45 -0
- package/dist/documents/web/index.d.ts +11 -0
- package/dist/documents/web/index.js +16 -0
- package/dist/documents/web/messages.d.ts +2 -0
- package/dist/documents/web/messages.js +21 -0
- package/dist/event_account/.kosh/bindings.js +1 -1
- package/dist/event_account/.kosh/schema.d.ts +123 -4
- package/dist/event_account/module.d.ts +146 -0
- package/dist/expense/.kosh/bindings.d.ts +22 -0
- package/dist/expense/.kosh/bindings.js +15 -0
- package/dist/expense/.kosh/schema.d.ts +1299 -0
- package/dist/expense/demo.d.ts +7 -0
- package/dist/expense/demo.js +69 -0
- package/dist/expense/index.d.ts +3 -0
- package/dist/expense/index.js +495 -0
- package/dist/expense/module.d.ts +4747 -0
- package/dist/expense/module.js +647 -0
- package/dist/expense_account/.kosh/bindings.d.ts +22 -0
- package/dist/expense_account/.kosh/bindings.js +15 -0
- package/dist/expense_account/.kosh/schema.d.ts +1936 -0
- package/dist/expense_account/index.d.ts +3 -0
- package/dist/expense_account/index.js +74 -0
- package/dist/expense_account/module.d.ts +9153 -0
- package/dist/expense_account/module.js +318 -0
- package/dist/helpdesk/.kosh/bindings.d.ts +22 -0
- package/dist/helpdesk/.kosh/bindings.js +15 -0
- package/dist/helpdesk/.kosh/schema.d.ts +885 -0
- package/dist/helpdesk/demo.d.ts +7 -0
- package/dist/helpdesk/demo.js +65 -0
- package/dist/helpdesk/hours.d.ts +17 -0
- package/dist/helpdesk/hours.js +94 -0
- package/dist/helpdesk/index.d.ts +10 -0
- package/dist/helpdesk/index.js +461 -0
- package/dist/helpdesk/module.d.ts +2940 -0
- package/dist/helpdesk/module.js +326 -0
- package/dist/helpdesk/routes.d.ts +12 -0
- package/dist/helpdesk/routes.js +132 -0
- package/dist/helpdesk/sla.d.ts +37 -0
- package/dist/helpdesk/sla.js +226 -0
- package/dist/hr/index.d.ts +1 -1
- package/dist/hr/index.js +1 -1
- package/dist/l10n_bd/.kosh/bindings.js +1 -1
- package/dist/l10n_bd/.kosh/schema.d.ts +123 -4
- package/dist/l10n_bd/module.d.ts +146 -0
- package/dist/l10n_bd_payroll/.kosh/bindings.d.ts +22 -0
- package/dist/l10n_bd_payroll/.kosh/bindings.js +15 -0
- package/dist/l10n_bd_payroll/.kosh/schema.d.ts +2312 -0
- package/dist/l10n_bd_payroll/data.d.ts +47 -0
- package/dist/l10n_bd_payroll/data.js +347 -0
- package/dist/l10n_bd_payroll/index.d.ts +4 -0
- package/dist/l10n_bd_payroll/index.js +24 -0
- package/dist/l10n_bd_payroll/module.d.ts +12932 -0
- package/dist/l10n_bd_payroll/module.js +86 -0
- package/dist/l10n_in/.kosh/bindings.js +1 -1
- package/dist/l10n_in/.kosh/schema.d.ts +123 -4
- package/dist/l10n_in/module.d.ts +147 -0
- package/dist/mail/inbound/handle.js +6 -1
- package/dist/maintenance_stock/.kosh/bindings.js +1 -1
- package/dist/maintenance_stock/.kosh/schema.d.ts +77 -2
- package/dist/maintenance_stock/module.d.ts +788 -66
- package/dist/modules-sdk/index.d.ts +1 -1
- package/dist/modules-sdk/manifest.d.ts +39 -2
- package/dist/mrp/.kosh/bindings.js +1 -1
- package/dist/mrp/.kosh/schema.d.ts +77 -2
- package/dist/mrp/index.d.ts +1 -1
- package/dist/mrp/index.js +2 -1
- package/dist/mrp/module.d.ts +781 -54
- package/dist/mrp/module.js +64 -2
- package/dist/mrp_account/.kosh/bindings.js +1 -1
- package/dist/mrp_account/.kosh/schema.d.ts +198 -5
- package/dist/mrp_account/module.d.ts +4852 -2541
- package/dist/payment/.kosh/bindings.js +1 -1
- package/dist/payment/.kosh/schema.d.ts +125 -5
- package/dist/payment/index.d.ts +41 -0
- package/dist/payment/index.js +131 -74
- package/dist/payment/module.d.ts +210 -6
- package/dist/payment/module.js +19 -3
- package/dist/payment/settle.js +10 -1
- package/dist/payroll/.kosh/bindings.d.ts +22 -0
- package/dist/payroll/.kosh/bindings.js +15 -0
- package/dist/payroll/.kosh/schema.d.ts +1390 -0
- package/dist/payroll/compute.d.ts +35 -0
- package/dist/payroll/compute.js +398 -0
- package/dist/payroll/demo.d.ts +55 -0
- package/dist/payroll/demo.js +121 -0
- package/dist/payroll/formula.d.ts +62 -0
- package/dist/payroll/formula.js +320 -0
- package/dist/payroll/index.d.ts +230 -0
- package/dist/payroll/index.js +713 -0
- package/dist/payroll/module.d.ts +9390 -0
- package/dist/payroll/module.js +606 -0
- package/dist/payroll/routes.d.ts +10 -0
- package/dist/payroll/routes.js +112 -0
- package/dist/payroll_account/.kosh/bindings.d.ts +22 -0
- package/dist/payroll_account/.kosh/bindings.js +15 -0
- package/dist/payroll_account/.kosh/schema.d.ts +2308 -0
- package/dist/payroll_account/index.d.ts +3 -0
- package/dist/payroll_account/index.js +40 -0
- package/dist/payroll_account/module.d.ts +12396 -0
- package/dist/payroll_account/module.js +256 -0
- package/dist/permissions/approvals.d.ts +131 -9
- package/dist/permissions/approvals.js +662 -57
- package/dist/permissions/index.d.ts +1 -1
- package/dist/permissions/index.js +2 -2
- package/dist/permissions/models.js +191 -12
- package/dist/permissions/routes.d.ts +6 -1
- package/dist/permissions/routes.js +37 -4
- package/dist/permissions/web/ApprovalPanel.d.ts +5 -4
- package/dist/permissions/web/ApprovalPanel.js +39 -13
- package/dist/permissions/web/index.d.ts +6 -4
- package/dist/permissions/web/index.js +13 -4
- package/dist/permissions/web/messages.d.ts +2 -0
- package/dist/permissions/web/messages.js +43 -0
- package/dist/portal/index.js +1 -1
- package/dist/pos/.kosh/bindings.js +1 -1
- package/dist/pos/.kosh/schema.d.ts +123 -4
- package/dist/pos/index.js +4 -0
- package/dist/pos/module.d.ts +147 -0
- package/dist/pos_stock/.kosh/bindings.js +1 -1
- package/dist/pos_stock/.kosh/schema.d.ts +198 -5
- package/dist/pos_stock/module.d.ts +914 -46
- package/dist/product/.kosh/bindings.js +1 -1
- package/dist/product/.kosh/schema.d.ts +2 -1
- package/dist/product/index.js +13 -0
- package/dist/product/module.d.ts +2 -0
- package/dist/product/module.js +2 -1
- package/dist/project/.kosh/bindings.js +1 -1
- package/dist/project/.kosh/schema.d.ts +672 -1
- package/dist/project/index.d.ts +3 -1
- package/dist/project/index.js +901 -14
- package/dist/project/module.d.ts +9892 -390
- package/dist/project/module.js +1530 -13
- package/dist/project/routes.d.ts +44 -0
- package/dist/project/routes.js +314 -0
- package/dist/project/schedule.d.ts +72 -0
- package/dist/project/schedule.js +192 -0
- package/dist/project/web/Refresh.d.ts +8 -0
- package/dist/project/web/Refresh.js +29 -0
- package/dist/project/web/Schedule.d.ts +9 -0
- package/dist/project/web/Schedule.js +93 -0
- package/dist/project/web/Structure.d.ts +8 -0
- package/dist/project/web/Structure.js +86 -0
- package/dist/project/web/Workload.d.ts +8 -0
- package/dist/project/web/Workload.js +43 -0
- package/dist/project/web/index.d.ts +14 -0
- package/dist/project/web/index.js +25 -0
- package/dist/project/web/messages.d.ts +2 -0
- package/dist/project/web/messages.js +85 -0
- package/dist/project_account/.kosh/bindings.d.ts +22 -0
- package/dist/project_account/.kosh/bindings.js +15 -0
- package/dist/project_account/.kosh/schema.d.ts +2241 -0
- package/dist/project_account/index.d.ts +3 -0
- package/dist/project_account/index.js +27 -0
- package/dist/project_account/module.d.ts +11539 -0
- package/dist/project_account/module.js +76 -0
- package/dist/project_portal/.kosh/bindings.js +1 -1
- package/dist/project_portal/.kosh/schema.d.ts +672 -1
- package/dist/project_portal/module.d.ts +4798 -129
- package/dist/project_purchase/.kosh/bindings.d.ts +22 -0
- package/dist/project_purchase/.kosh/bindings.js +15 -0
- package/dist/project_purchase/.kosh/schema.d.ts +2320 -0
- package/dist/project_purchase/index.d.ts +9 -0
- package/dist/project_purchase/index.js +22 -0
- package/dist/project_purchase/module.d.ts +25147 -0
- package/dist/project_purchase/module.js +56 -0
- package/dist/purchase/.kosh/bindings.js +1 -1
- package/dist/purchase/.kosh/schema.d.ts +97 -4
- package/dist/purchase/module.d.ts +13 -2
- package/dist/purchase/module.js +10 -1
- package/dist/purchase_account/.kosh/bindings.js +1 -1
- package/dist/purchase_account/.kosh/schema.d.ts +126 -6
- package/dist/purchase_account/index.js +1 -0
- package/dist/purchase_account/module.d.ts +176 -1
- package/dist/purchase_account/module.js +13 -2
- package/dist/purchase_portal/.kosh/bindings.js +1 -1
- package/dist/purchase_portal/.kosh/schema.d.ts +97 -4
- package/dist/purchase_portal/module.d.ts +6 -1
- package/dist/purchase_stock/.kosh/bindings.js +1 -1
- package/dist/purchase_stock/.kosh/schema.d.ts +174 -5
- package/dist/purchase_stock/index.d.ts +1 -1
- package/dist/purchase_stock/index.js +9 -2
- package/dist/purchase_stock/module.d.ts +840 -68
- package/dist/purchase_stock/module.js +242 -6
- package/dist/purchase_stock_account/.kosh/bindings.js +1 -1
- package/dist/purchase_stock_account/.kosh/schema.d.ts +203 -7
- package/dist/purchase_stock_account/module.d.ts +8163 -5514
- package/dist/purchase_stock_account/module.js +11 -5
- package/dist/recruitment/.kosh/bindings.js +1 -1
- package/dist/recruitment/.kosh/schema.d.ts +2 -1
- package/dist/recruitment/module.d.ts +2 -0
- package/dist/recruitment/module.js +2 -1
- package/dist/sale_account/.kosh/bindings.js +1 -1
- package/dist/sale_account/.kosh/schema.d.ts +123 -4
- package/dist/sale_account/module.d.ts +147 -0
- package/dist/sale_portal/.kosh/bindings.js +1 -1
- package/dist/sale_portal/.kosh/schema.d.ts +2 -1
- package/dist/sale_portal/module.d.ts +1 -0
- package/dist/sale_project/.kosh/bindings.js +1 -1
- package/dist/sale_project/.kosh/schema.d.ts +673 -1
- package/dist/sale_project/module.d.ts +4800 -129
- package/dist/sale_project/module.js +17 -1
- package/dist/sale_stock/.kosh/bindings.js +1 -1
- package/dist/sale_stock/.kosh/schema.d.ts +77 -2
- package/dist/sale_stock/module.d.ts +789 -66
- package/dist/sales/.kosh/bindings.js +1 -1
- package/dist/sales/.kosh/schema.d.ts +2 -1
- package/dist/sales/index.js +4 -0
- package/dist/sales/module.d.ts +1 -0
- package/dist/sign/.kosh/bindings.d.ts +22 -0
- package/dist/sign/.kosh/bindings.js +15 -0
- package/dist/sign/.kosh/schema.d.ts +990 -0
- package/dist/sign/index.d.ts +14 -0
- package/dist/sign/index.js +350 -0
- package/dist/sign/module.d.ts +4478 -0
- package/dist/sign/module.js +158 -0
- package/dist/sign/sign.d.ts +82 -0
- package/dist/sign/sign.js +474 -0
- package/dist/stock/.kosh/bindings.js +1 -1
- package/dist/stock/.kosh/schema.d.ts +77 -2
- package/dist/stock/demo.d.ts +2 -1
- package/dist/stock/demo.js +28 -1
- package/dist/stock/index.d.ts +2 -1
- package/dist/stock/index.js +233 -4
- package/dist/stock/module.d.ts +2363 -837
- package/dist/stock/module.js +569 -14
- package/dist/stock/replenish.d.ts +38 -0
- package/dist/stock/replenish.js +176 -0
- package/dist/stock/web/Replenishment.d.ts +8 -0
- package/dist/stock/web/Replenishment.js +84 -0
- package/dist/stock/web/index.d.ts +4 -2
- package/dist/stock/web/index.js +6 -2
- package/dist/stock/web/messages.js +52 -0
- package/dist/stock_account/.kosh/bindings.js +1 -1
- package/dist/stock_account/.kosh/schema.d.ts +198 -5
- package/dist/stock_account/index.js +10 -0
- package/dist/stock_account/module.d.ts +969 -101
- package/dist/trade_finance/index.js +2 -0
- package/dist/trade_finance/module.js +2 -0
- package/dist/trade_finance_account/.kosh/bindings.js +1 -1
- package/dist/trade_finance_account/.kosh/schema.d.ts +123 -4
- package/dist/trade_finance_account/index.js +1 -0
- package/dist/trade_finance_account/module.d.ts +146 -0
- 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 +97 -4
- package/dist/trade_finance_purchase/module.d.ts +6 -1
- package/dist/trade_finance_sale/.kosh/bindings.js +1 -1
- package/dist/trade_finance_sale/.kosh/schema.d.ts +2 -1
- package/dist/trade_finance_sale/module.d.ts +1 -0
- package/dist/ui/app.js +24 -12
- package/dist/ui/components/AppIcon.js +8 -1
- package/dist/ui/i18n/messages.d.ts +4 -0
- package/dist/ui/i18n/messages.js +8 -0
- package/dist/ui/views/FormView.js +4 -2
- package/dist/ui/views/KanbanView.js +9 -1
- package/dist/ui/views/ListView.js +4 -2
- package/dist/ui/views/widgets.js +7 -1
- package/dist/website/index.js +1 -0
- package/dist/website/module.js +1 -0
- package/dist/website_crm/.kosh/bindings.js +1 -1
- package/dist/website_crm/.kosh/schema.d.ts +2 -1
- package/dist/website_crm/module.d.ts +1 -0
- package/dist/website_sale/.kosh/bindings.d.ts +22 -0
- package/dist/website_sale/.kosh/bindings.js +15 -0
- package/dist/website_sale/.kosh/schema.d.ts +2284 -0
- package/dist/website_sale/couriers.d.ts +50 -0
- package/dist/website_sale/couriers.js +59 -0
- package/dist/website_sale/demo.d.ts +7 -0
- package/dist/website_sale/demo.js +90 -0
- package/dist/website_sale/growth.d.ts +31 -0
- package/dist/website_sale/growth.js +163 -0
- package/dist/website_sale/index.d.ts +49 -0
- package/dist/website_sale/index.js +538 -0
- package/dist/website_sale/module.d.ts +22027 -0
- package/dist/website_sale/module.js +397 -0
- package/dist/website_sale/shipments.d.ts +16 -0
- package/dist/website_sale/shipments.js +113 -0
- package/dist/website_sale/shop.d.ts +81 -0
- package/dist/website_sale/shop.js +649 -0
- package/dist/website_sale_stock/.kosh/bindings.d.ts +22 -0
- package/dist/website_sale_stock/.kosh/bindings.js +15 -0
- package/dist/website_sale_stock/.kosh/schema.d.ts +2681 -0
- package/dist/website_sale_stock/index.d.ts +9 -0
- package/dist/website_sale_stock/index.js +20 -0
- package/dist/website_sale_stock/module.d.ts +24998 -0
- package/dist/website_sale_stock/module.js +28 -0
- package/package.json +83 -2
|
@@ -10,6 +10,19 @@ export declare const MovePurchaseOrder: import("../server/orm.js").Extension<"ac
|
|
|
10
10
|
readonly readonly: false;
|
|
11
11
|
}>;
|
|
12
12
|
}, Record<never, never>>;
|
|
13
|
+
/** The cost centre of each order line, carried onto the bill (RFC 0024 §2.5): budgets commit and spend by it. */
|
|
14
|
+
export declare const PurchaseLineAnalytic: import("../server/orm.js").Extension<"purchase.order.line", {
|
|
15
|
+
readonly analytic: import("../server/orm.js").Many2oneField<"account.analytic", {
|
|
16
|
+
readonly required: false;
|
|
17
|
+
readonly computed: false;
|
|
18
|
+
readonly inverse: false;
|
|
19
|
+
readonly sequence: false;
|
|
20
|
+
readonly computeName: undefined;
|
|
21
|
+
readonly store: true;
|
|
22
|
+
readonly hasDefault: false;
|
|
23
|
+
readonly readonly: false;
|
|
24
|
+
}>;
|
|
25
|
+
}, Record<never, never>>;
|
|
13
26
|
export declare const PurchaseOrderBilling: import("../server/orm.js").Extension<"purchase.order", {
|
|
14
27
|
readonly bills: import("../server/orm.js").One2manyField<"account.move", {
|
|
15
28
|
readonly required: true;
|
|
@@ -215,6 +228,7 @@ export declare const purchaseAccountShutro: import("../server/orm.js").Module<re
|
|
|
215
228
|
readonly to: "to_approve";
|
|
216
229
|
readonly guard: (records: never) => unknown;
|
|
217
230
|
readonly message: "Add at least one line before submitting the order.";
|
|
231
|
+
readonly before: (records: never) => unknown;
|
|
218
232
|
readonly after: (records: never) => unknown;
|
|
219
233
|
};
|
|
220
234
|
readonly confirm: {
|
|
@@ -252,7 +266,9 @@ export declare const purchaseAccountShutro: import("../server/orm.js").Module<re
|
|
|
252
266
|
hasDefault: true;
|
|
253
267
|
sequence: false;
|
|
254
268
|
}>;
|
|
255
|
-
}, {
|
|
269
|
+
}, {
|
|
270
|
+
readonly submitting: (this: unknown) => Promise<undefined>;
|
|
271
|
+
} & import("../server/orm.js").TransitionMethods<{
|
|
256
272
|
readonly name: import("../server/orm.js").CharField<{
|
|
257
273
|
readonly required: true;
|
|
258
274
|
readonly computed: false;
|
|
@@ -393,6 +409,7 @@ export declare const purchaseAccountShutro: import("../server/orm.js").Module<re
|
|
|
393
409
|
readonly to: "to_approve";
|
|
394
410
|
readonly guard: (records: never) => unknown;
|
|
395
411
|
readonly message: "Add at least one line before submitting the order.";
|
|
412
|
+
readonly before: (records: never) => unknown;
|
|
396
413
|
readonly after: (records: never) => unknown;
|
|
397
414
|
};
|
|
398
415
|
readonly confirm: {
|
|
@@ -1448,6 +1465,7 @@ export declare const purchaseAccountShutro: import("../server/orm.js").Module<re
|
|
|
1448
1465
|
hasDefault: false;
|
|
1449
1466
|
sequence: false;
|
|
1450
1467
|
}>;
|
|
1468
|
+
readonly active: import("../server/orm.js").ActiveField;
|
|
1451
1469
|
readonly name: import("../server/orm.js").CharField<{
|
|
1452
1470
|
readonly required: true;
|
|
1453
1471
|
readonly computed: false;
|
|
@@ -2601,6 +2619,131 @@ export declare const purchaseAccountShutro: import("../server/orm.js").Module<re
|
|
|
2601
2619
|
readonly hasDefault: false;
|
|
2602
2620
|
readonly readonly: false;
|
|
2603
2621
|
}>;
|
|
2622
|
+
}>>, import("../server/orm.js").Model<"account.analytic", {
|
|
2623
|
+
readonly id: import("../server/orm.js").IdField<"account.analytic">;
|
|
2624
|
+
readonly createdAt: import("../server/orm.js").ScalarField<'datetime', Date, Date, {
|
|
2625
|
+
required: true;
|
|
2626
|
+
readonly: true;
|
|
2627
|
+
computed: false;
|
|
2628
|
+
inverse: false;
|
|
2629
|
+
hasDefault: false;
|
|
2630
|
+
sequence: false;
|
|
2631
|
+
}>;
|
|
2632
|
+
readonly updatedAt: import("../server/orm.js").ScalarField<'datetime', Date, Date, {
|
|
2633
|
+
required: true;
|
|
2634
|
+
readonly: true;
|
|
2635
|
+
computed: false;
|
|
2636
|
+
inverse: false;
|
|
2637
|
+
hasDefault: false;
|
|
2638
|
+
sequence: false;
|
|
2639
|
+
}>;
|
|
2640
|
+
readonly createdBy: import("../server/orm.js").Many2oneField<'res.users', {
|
|
2641
|
+
required: false;
|
|
2642
|
+
readonly: true;
|
|
2643
|
+
computed: false;
|
|
2644
|
+
inverse: false;
|
|
2645
|
+
hasDefault: false;
|
|
2646
|
+
sequence: false;
|
|
2647
|
+
}>;
|
|
2648
|
+
readonly updatedBy: import("../server/orm.js").Many2oneField<'res.users', {
|
|
2649
|
+
required: false;
|
|
2650
|
+
readonly: true;
|
|
2651
|
+
computed: false;
|
|
2652
|
+
inverse: false;
|
|
2653
|
+
hasDefault: false;
|
|
2654
|
+
sequence: false;
|
|
2655
|
+
}>;
|
|
2656
|
+
readonly displayName: import("../server/orm.js").CharField<{
|
|
2657
|
+
required: true;
|
|
2658
|
+
readonly: true;
|
|
2659
|
+
computed: true;
|
|
2660
|
+
inverse: false;
|
|
2661
|
+
hasDefault: false;
|
|
2662
|
+
sequence: false;
|
|
2663
|
+
}>;
|
|
2664
|
+
readonly active: import("../server/orm.js").ActiveField;
|
|
2665
|
+
readonly company: import("../server/orm.js").CompanyField<true>;
|
|
2666
|
+
readonly code: import("../server/orm.js").CharField<{
|
|
2667
|
+
readonly required: false;
|
|
2668
|
+
readonly computed: false;
|
|
2669
|
+
readonly inverse: false;
|
|
2670
|
+
readonly sequence: false;
|
|
2671
|
+
readonly computeName: undefined;
|
|
2672
|
+
readonly store: true;
|
|
2673
|
+
readonly hasDefault: false;
|
|
2674
|
+
readonly readonly: false;
|
|
2675
|
+
}, string>;
|
|
2676
|
+
readonly name: import("../server/orm.js").CharField<{
|
|
2677
|
+
readonly required: true;
|
|
2678
|
+
readonly computed: false;
|
|
2679
|
+
readonly inverse: false;
|
|
2680
|
+
readonly sequence: false;
|
|
2681
|
+
readonly computeName: undefined;
|
|
2682
|
+
readonly store: true;
|
|
2683
|
+
readonly hasDefault: false;
|
|
2684
|
+
readonly readonly: false;
|
|
2685
|
+
}, string | Readonly<Record<string, string>>>;
|
|
2686
|
+
readonly parent: import("../server/orm.js").Many2oneField<"account.analytic", {
|
|
2687
|
+
readonly required: false;
|
|
2688
|
+
readonly computed: false;
|
|
2689
|
+
readonly inverse: false;
|
|
2690
|
+
readonly sequence: false;
|
|
2691
|
+
readonly computeName: undefined;
|
|
2692
|
+
readonly store: true;
|
|
2693
|
+
readonly hasDefault: false;
|
|
2694
|
+
readonly readonly: false;
|
|
2695
|
+
}>;
|
|
2696
|
+
readonly note: import("../server/orm.js").ScalarField<"text", string, string, {
|
|
2697
|
+
readonly required: false;
|
|
2698
|
+
readonly computed: false;
|
|
2699
|
+
readonly inverse: false;
|
|
2700
|
+
readonly sequence: false;
|
|
2701
|
+
readonly computeName: undefined;
|
|
2702
|
+
readonly store: true;
|
|
2703
|
+
readonly hasDefault: false;
|
|
2704
|
+
readonly readonly: false;
|
|
2705
|
+
}>;
|
|
2706
|
+
}, {} & import("../server/orm.js").TransitionMethods<{
|
|
2707
|
+
readonly code: import("../server/orm.js").CharField<{
|
|
2708
|
+
readonly required: false;
|
|
2709
|
+
readonly computed: false;
|
|
2710
|
+
readonly inverse: false;
|
|
2711
|
+
readonly sequence: false;
|
|
2712
|
+
readonly computeName: undefined;
|
|
2713
|
+
readonly store: true;
|
|
2714
|
+
readonly hasDefault: false;
|
|
2715
|
+
readonly readonly: false;
|
|
2716
|
+
}, string>;
|
|
2717
|
+
readonly name: import("../server/orm.js").CharField<{
|
|
2718
|
+
readonly required: true;
|
|
2719
|
+
readonly computed: false;
|
|
2720
|
+
readonly inverse: false;
|
|
2721
|
+
readonly sequence: false;
|
|
2722
|
+
readonly computeName: undefined;
|
|
2723
|
+
readonly store: true;
|
|
2724
|
+
readonly hasDefault: false;
|
|
2725
|
+
readonly readonly: false;
|
|
2726
|
+
}, string | Readonly<Record<string, string>>>;
|
|
2727
|
+
readonly parent: import("../server/orm.js").Many2oneField<"account.analytic", {
|
|
2728
|
+
readonly required: false;
|
|
2729
|
+
readonly computed: false;
|
|
2730
|
+
readonly inverse: false;
|
|
2731
|
+
readonly sequence: false;
|
|
2732
|
+
readonly computeName: undefined;
|
|
2733
|
+
readonly store: true;
|
|
2734
|
+
readonly hasDefault: false;
|
|
2735
|
+
readonly readonly: false;
|
|
2736
|
+
}>;
|
|
2737
|
+
readonly note: import("../server/orm.js").ScalarField<"text", string, string, {
|
|
2738
|
+
readonly required: false;
|
|
2739
|
+
readonly computed: false;
|
|
2740
|
+
readonly inverse: false;
|
|
2741
|
+
readonly sequence: false;
|
|
2742
|
+
readonly computeName: undefined;
|
|
2743
|
+
readonly store: true;
|
|
2744
|
+
readonly hasDefault: false;
|
|
2745
|
+
readonly readonly: false;
|
|
2746
|
+
}>;
|
|
2604
2747
|
}>>, import("../server/orm.js").Model<"account.account", {
|
|
2605
2748
|
readonly id: import("../server/orm.js").IdField<"account.account">;
|
|
2606
2749
|
readonly createdAt: import("../server/orm.js").ScalarField<'datetime', Date, Date, {
|
|
@@ -4293,6 +4436,16 @@ export declare const purchaseAccountShutro: import("../server/orm.js").Module<re
|
|
|
4293
4436
|
readonly hasDefault: false;
|
|
4294
4437
|
readonly readonly: false;
|
|
4295
4438
|
}>;
|
|
4439
|
+
readonly analytic: import("../server/orm.js").Many2oneField<"account.analytic", {
|
|
4440
|
+
readonly required: false;
|
|
4441
|
+
readonly computed: false;
|
|
4442
|
+
readonly inverse: false;
|
|
4443
|
+
readonly sequence: false;
|
|
4444
|
+
readonly computeName: undefined;
|
|
4445
|
+
readonly store: true;
|
|
4446
|
+
readonly hasDefault: false;
|
|
4447
|
+
readonly readonly: false;
|
|
4448
|
+
}>;
|
|
4296
4449
|
readonly quantity: import("../server/orm.js").DecimalField<{
|
|
4297
4450
|
readonly required: false;
|
|
4298
4451
|
readonly computed: false;
|
|
@@ -4644,6 +4797,16 @@ export declare const purchaseAccountShutro: import("../server/orm.js").Module<re
|
|
|
4644
4797
|
readonly hasDefault: false;
|
|
4645
4798
|
readonly readonly: false;
|
|
4646
4799
|
}>;
|
|
4800
|
+
readonly analytic: import("../server/orm.js").Many2oneField<"account.analytic", {
|
|
4801
|
+
readonly required: false;
|
|
4802
|
+
readonly computed: false;
|
|
4803
|
+
readonly inverse: false;
|
|
4804
|
+
readonly sequence: false;
|
|
4805
|
+
readonly computeName: undefined;
|
|
4806
|
+
readonly store: true;
|
|
4807
|
+
readonly hasDefault: false;
|
|
4808
|
+
readonly readonly: false;
|
|
4809
|
+
}>;
|
|
4647
4810
|
readonly quantity: import("../server/orm.js").DecimalField<{
|
|
4648
4811
|
readonly required: false;
|
|
4649
4812
|
readonly computed: false;
|
|
@@ -6569,6 +6732,7 @@ export declare const purchaseAccountShutro: import("../server/orm.js").Module<re
|
|
|
6569
6732
|
hasDefault: false;
|
|
6570
6733
|
sequence: false;
|
|
6571
6734
|
}>;
|
|
6735
|
+
readonly active: import("../server/orm.js").ActiveField;
|
|
6572
6736
|
readonly name: import("../server/orm.js").CharField<{
|
|
6573
6737
|
readonly required: true;
|
|
6574
6738
|
readonly computed: false;
|
|
@@ -7372,6 +7536,17 @@ export declare const purchaseAccountShutro: import("../server/orm.js").Module<re
|
|
|
7372
7536
|
readonly hasDefault: false;
|
|
7373
7537
|
readonly readonly: false;
|
|
7374
7538
|
}>;
|
|
7539
|
+
}, Record<never, never>>, import("../server/orm.js").Extension<"purchase.order.line", {
|
|
7540
|
+
readonly analytic: import("../server/orm.js").Many2oneField<"account.analytic", {
|
|
7541
|
+
readonly required: false;
|
|
7542
|
+
readonly computed: false;
|
|
7543
|
+
readonly inverse: false;
|
|
7544
|
+
readonly sequence: false;
|
|
7545
|
+
readonly computeName: undefined;
|
|
7546
|
+
readonly store: true;
|
|
7547
|
+
readonly hasDefault: false;
|
|
7548
|
+
readonly readonly: false;
|
|
7549
|
+
}>;
|
|
7375
7550
|
}, Record<never, never>>, import("../server/orm.js").Extension<"purchase.order", {
|
|
7376
7551
|
readonly bills: import("../server/orm.js").One2manyField<"account.move", {
|
|
7377
7552
|
readonly required: true;
|
|
@@ -13,6 +13,16 @@ export const MovePurchaseOrder = extendModel('account.move', {
|
|
|
13
13
|
purchaseOrder: f.many2one('purchase.order', { label: 'Purchase order' }),
|
|
14
14
|
},
|
|
15
15
|
});
|
|
16
|
+
/** The cost centre of each order line, carried onto the bill (RFC 0024 §2.5): budgets commit and spend by it. */
|
|
17
|
+
export const PurchaseLineAnalytic = extendModel('purchase.order.line', {
|
|
18
|
+
fields: {
|
|
19
|
+
analytic: f.many2one('account.analytic', {
|
|
20
|
+
ondelete: 'restrict',
|
|
21
|
+
label: 'Cost centre',
|
|
22
|
+
help: 'The department, project or branch the purchase is for; the bill line keeps it.',
|
|
23
|
+
}),
|
|
24
|
+
},
|
|
25
|
+
});
|
|
16
26
|
export const PurchaseOrderBilling = extendModel('purchase.order', {
|
|
17
27
|
fields: {
|
|
18
28
|
bills: f.one2many('account.move', 'purchaseOrder'),
|
|
@@ -76,6 +86,7 @@ export const PurchaseOrderBilling = extendModel('purchase.order', {
|
|
|
76
86
|
quantity: l.quantity,
|
|
77
87
|
priceUnit: l.priceUnit,
|
|
78
88
|
taxes: { set: [...l.taxes].map((t) => t.id) },
|
|
89
|
+
analytic: l.analytic?.id ?? null,
|
|
79
90
|
debit: '0',
|
|
80
91
|
credit: '0',
|
|
81
92
|
})),
|
|
@@ -91,7 +102,7 @@ export const PurchaseOrderBilling = extendModel('purchase.order', {
|
|
|
91
102
|
});
|
|
92
103
|
export const purchaseAccountShutro = defineModule({
|
|
93
104
|
name: 'purchase_account',
|
|
94
|
-
version: '0.
|
|
105
|
+
version: '0.2.0',
|
|
95
106
|
depends: [purchaseShutro, accountingShutro],
|
|
96
107
|
groups: [
|
|
97
108
|
orm.defineGroup({
|
|
@@ -101,5 +112,5 @@ export const purchaseAccountShutro = defineModule({
|
|
|
101
112
|
}),
|
|
102
113
|
],
|
|
103
114
|
models: [],
|
|
104
|
-
extensions: [MovePurchaseOrder, PurchaseOrderBilling],
|
|
115
|
+
extensions: [MovePurchaseOrder, PurchaseLineAnalytic, PurchaseOrderBilling],
|
|
105
116
|
});
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// GENERATED by `pnpm generate:models` (Shutro’s generator). Do not edit. definitions-hash:
|
|
1
|
+
// GENERATED by `pnpm generate:models` (Shutro’s generator). Do not edit. definitions-hash: 3369f35c9b08fe79
|
|
2
2
|
// Bindings of module `purchase_portal`: import the definition API from here to get types scoped to what it can see.
|
|
3
3
|
export { defineModel, defineModule, extendModel, f, replace } from '../../server/orm.js';
|
|
4
4
|
import { definitions } from '../../server/orm.js';
|
|
@@ -1,13 +1,16 @@
|
|
|
1
|
-
// GENERATED by `pnpm generate:models` (Shutro’s generator). Do not edit. definitions-hash:
|
|
1
|
+
// GENERATED by `pnpm generate:models` (Shutro’s generator). Do not edit. definitions-hash: 3369f35c9b08fe79
|
|
2
2
|
// Schema view of module `purchase_portal` (RFC 0002 §7.7): the models it owns or depends on, with the extensions it can see.
|
|
3
3
|
import type { F } from '../../server/orm.js';
|
|
4
4
|
|
|
5
5
|
/** Model name → model type (RFC 0002 §7.7). */
|
|
6
6
|
export interface SchemaView {
|
|
7
7
|
readonly 'account.tax': AccountTax;
|
|
8
|
+
readonly 'approval.delegation': ApprovalDelegation;
|
|
8
9
|
readonly 'approval.level': ApprovalLevel;
|
|
10
|
+
readonly 'approval.link': ApprovalLink;
|
|
9
11
|
readonly 'approval.policy': ApprovalPolicy;
|
|
10
12
|
readonly 'approval.request': ApprovalRequest;
|
|
13
|
+
readonly 'approval.vote': ApprovalVote;
|
|
11
14
|
readonly 'audit.event': AuditEvent;
|
|
12
15
|
readonly 'auth.api_key': AuthApiKey;
|
|
13
16
|
readonly 'auth.credential': AuthCredential;
|
|
@@ -73,6 +76,29 @@ export interface AccountTax {
|
|
|
73
76
|
export interface AccountTaxMethods extends F.Methods<typeof import('../../product/index.js').productShutro, 'account.tax'> {
|
|
74
77
|
}
|
|
75
78
|
|
|
79
|
+
/** `approval.delegation` (owner: permissions). */
|
|
80
|
+
export interface ApprovalDelegation {
|
|
81
|
+
readonly name: 'approval.delegation';
|
|
82
|
+
readonly fields: {
|
|
83
|
+
readonly id: F.Id<'approval.delegation'>;
|
|
84
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
85
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
86
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
87
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
88
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
89
|
+
readonly user: F.Many2one<'res.users', { readonly required: true; readonly default: true }>;
|
|
90
|
+
readonly delegate: F.Many2one<'res.users', { readonly required: true }>;
|
|
91
|
+
readonly dateFrom: F.DateOnly<{ readonly required: true }>;
|
|
92
|
+
readonly dateTo: F.DateOnly<{ readonly required: true }>;
|
|
93
|
+
readonly note: F.Char;
|
|
94
|
+
};
|
|
95
|
+
readonly methods: ApprovalDelegationMethods;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
/** Methods of `approval.delegation`: declared ones and transitions. */
|
|
99
|
+
export interface ApprovalDelegationMethods extends F.Methods<typeof import('../../permissions/index.js').permissionsShutro, 'approval.delegation'> {
|
|
100
|
+
}
|
|
101
|
+
|
|
76
102
|
/** `approval.level` (owner: permissions). */
|
|
77
103
|
export interface ApprovalLevel {
|
|
78
104
|
readonly name: 'approval.level';
|
|
@@ -87,7 +113,14 @@ export interface ApprovalLevel {
|
|
|
87
113
|
readonly sequence: F.Integer<{ readonly default: true }>;
|
|
88
114
|
readonly name: F.Char<{ readonly required: true }>;
|
|
89
115
|
readonly condition: F.Json;
|
|
90
|
-
readonly
|
|
116
|
+
readonly approverKind: F.Selection<'role' | 'users' | 'manager' | 'field', { readonly required: true; readonly default: true }>;
|
|
117
|
+
readonly approverRole: F.Char;
|
|
118
|
+
readonly approverUsers: F.Many2many<'res.users', { readonly required: true }>;
|
|
119
|
+
readonly approverField: F.Char;
|
|
120
|
+
readonly quorum: F.Selection<'any' | 'all' | 'count', { readonly required: true; readonly default: true }>;
|
|
121
|
+
readonly quorumCount: F.Integer;
|
|
122
|
+
readonly deadlineHours: F.Integer;
|
|
123
|
+
readonly escalateRole: F.Char;
|
|
91
124
|
};
|
|
92
125
|
readonly methods: ApprovalLevelMethods;
|
|
93
126
|
}
|
|
@@ -96,6 +129,29 @@ export interface ApprovalLevel {
|
|
|
96
129
|
export interface ApprovalLevelMethods extends F.Methods<typeof import('../../permissions/index.js').permissionsShutro, 'approval.level'> {
|
|
97
130
|
}
|
|
98
131
|
|
|
132
|
+
/** `approval.link` (owner: permissions). */
|
|
133
|
+
export interface ApprovalLink {
|
|
134
|
+
readonly name: 'approval.link';
|
|
135
|
+
readonly fields: {
|
|
136
|
+
readonly id: F.Id<'approval.link'>;
|
|
137
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
138
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
139
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
140
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
141
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
142
|
+
readonly request: F.Many2one<'approval.request', { readonly required: true }>;
|
|
143
|
+
readonly user: F.Many2one<'res.users', { readonly required: true }>;
|
|
144
|
+
readonly tokenHash: F.Char<{ readonly required: true }>;
|
|
145
|
+
readonly expiresAt: F.Datetime<{ readonly required: true }>;
|
|
146
|
+
readonly usedAt: F.Datetime;
|
|
147
|
+
};
|
|
148
|
+
readonly methods: ApprovalLinkMethods;
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
/** Methods of `approval.link`: declared ones and transitions. */
|
|
152
|
+
export interface ApprovalLinkMethods extends F.Methods<typeof import('../../permissions/index.js').permissionsShutro, 'approval.link'> {
|
|
153
|
+
}
|
|
154
|
+
|
|
99
155
|
/** `approval.policy` (owner: permissions). */
|
|
100
156
|
export interface ApprovalPolicy {
|
|
101
157
|
readonly name: 'approval.policy';
|
|
@@ -113,6 +169,9 @@ export interface ApprovalPolicy {
|
|
|
113
169
|
readonly company: F.Many2one<'res.company'>;
|
|
114
170
|
readonly onApproved: F.Char;
|
|
115
171
|
readonly onRejected: F.Char;
|
|
172
|
+
readonly onSentBack: F.Char;
|
|
173
|
+
readonly onWithdrawn: F.Char;
|
|
174
|
+
readonly reasonRequired: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
116
175
|
readonly levels: F.One2many<'approval.level', { readonly required: true }>;
|
|
117
176
|
};
|
|
118
177
|
readonly methods: ApprovalPolicyMethods;
|
|
@@ -139,8 +198,16 @@ export interface ApprovalRequest {
|
|
|
139
198
|
readonly targetModel: F.Char<{ readonly required: true }>;
|
|
140
199
|
readonly targetId: F.Integer<{ readonly required: true }>;
|
|
141
200
|
readonly company: F.Many2one<'res.company'>;
|
|
142
|
-
readonly approverRole: F.Char
|
|
143
|
-
readonly
|
|
201
|
+
readonly approverRole: F.Char;
|
|
202
|
+
readonly approvers: F.Many2many<'res.users', { readonly required: true }>;
|
|
203
|
+
readonly required: F.Integer<{ readonly required: true; readonly default: true }>;
|
|
204
|
+
readonly round: F.Integer<{ readonly required: true; readonly default: true }>;
|
|
205
|
+
readonly votes: F.One2many<'approval.vote', { readonly required: true }>;
|
|
206
|
+
readonly dueAt: F.Datetime;
|
|
207
|
+
readonly remindedAt: F.Datetime;
|
|
208
|
+
readonly escalatedTo: F.Char;
|
|
209
|
+
readonly escalatedAt: F.Datetime;
|
|
210
|
+
readonly state: F.Selection<'pending' | 'approved' | 'rejected' | 'sent_back' | 'cancelled', { readonly required: true; readonly default: true }>;
|
|
144
211
|
readonly requestedBy: F.Many2one<'res.users'>;
|
|
145
212
|
readonly decidedBy: F.Many2one<'res.users'>;
|
|
146
213
|
readonly decidedAt: F.Datetime;
|
|
@@ -153,6 +220,31 @@ export interface ApprovalRequest {
|
|
|
153
220
|
export interface ApprovalRequestMethods extends F.Methods<typeof import('../../permissions/index.js').permissionsShutro, 'approval.request'> {
|
|
154
221
|
}
|
|
155
222
|
|
|
223
|
+
/** `approval.vote` (owner: permissions). */
|
|
224
|
+
export interface ApprovalVote {
|
|
225
|
+
readonly name: 'approval.vote';
|
|
226
|
+
readonly fields: {
|
|
227
|
+
readonly id: F.Id<'approval.vote'>;
|
|
228
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
229
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
230
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
231
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
232
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
233
|
+
readonly request: F.Many2one<'approval.request', { readonly required: true }>;
|
|
234
|
+
readonly user: F.Many2one<'res.users', { readonly required: true }>;
|
|
235
|
+
readonly decision: F.Selection<'approve' | 'reject' | 'send_back', { readonly required: true }>;
|
|
236
|
+
readonly comment: F.Text;
|
|
237
|
+
readonly at: F.Datetime<{ readonly required: true }>;
|
|
238
|
+
readonly onBehalfOf: F.Many2one<'res.users'>;
|
|
239
|
+
readonly ip: F.Char;
|
|
240
|
+
};
|
|
241
|
+
readonly methods: ApprovalVoteMethods;
|
|
242
|
+
}
|
|
243
|
+
|
|
244
|
+
/** Methods of `approval.vote`: declared ones and transitions. */
|
|
245
|
+
export interface ApprovalVoteMethods extends F.Methods<typeof import('../../permissions/index.js').permissionsShutro, 'approval.vote'> {
|
|
246
|
+
}
|
|
247
|
+
|
|
156
248
|
/** `audit.event` (owner: base). */
|
|
157
249
|
export interface AuditEvent {
|
|
158
250
|
readonly name: 'audit.event';
|
|
@@ -748,6 +840,7 @@ export interface ProductCategory {
|
|
|
748
840
|
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
749
841
|
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
750
842
|
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
843
|
+
readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
751
844
|
readonly name: F.Char<{ readonly required: true; readonly translate: true }>;
|
|
752
845
|
readonly parent: F.Many2one<'product.category'>;
|
|
753
846
|
};
|
|
@@ -182,6 +182,7 @@ export declare const purchasePortalShutro: import("shutro").Module<readonly [],
|
|
|
182
182
|
readonly to: "to_approve";
|
|
183
183
|
readonly guard: (records: never) => unknown;
|
|
184
184
|
readonly message: "Add at least one line before submitting the order.";
|
|
185
|
+
readonly before: (records: never) => unknown;
|
|
185
186
|
readonly after: (records: never) => unknown;
|
|
186
187
|
};
|
|
187
188
|
readonly confirm: {
|
|
@@ -219,7 +220,9 @@ export declare const purchasePortalShutro: import("shutro").Module<readonly [],
|
|
|
219
220
|
hasDefault: true;
|
|
220
221
|
sequence: false;
|
|
221
222
|
}>;
|
|
222
|
-
}, {
|
|
223
|
+
}, {
|
|
224
|
+
readonly submitting: (this: unknown) => Promise<undefined>;
|
|
225
|
+
} & import("shutro").TransitionMethods<{
|
|
223
226
|
readonly name: import("shutro").CharField<{
|
|
224
227
|
readonly required: true;
|
|
225
228
|
readonly computed: false;
|
|
@@ -360,6 +363,7 @@ export declare const purchasePortalShutro: import("shutro").Module<readonly [],
|
|
|
360
363
|
readonly to: "to_approve";
|
|
361
364
|
readonly guard: (records: never) => unknown;
|
|
362
365
|
readonly message: "Add at least one line before submitting the order.";
|
|
366
|
+
readonly before: (records: never) => unknown;
|
|
363
367
|
readonly after: (records: never) => unknown;
|
|
364
368
|
};
|
|
365
369
|
readonly confirm: {
|
|
@@ -1415,6 +1419,7 @@ export declare const purchasePortalShutro: import("shutro").Module<readonly [],
|
|
|
1415
1419
|
hasDefault: false;
|
|
1416
1420
|
sequence: false;
|
|
1417
1421
|
}>;
|
|
1422
|
+
readonly active: import("shutro").ActiveField;
|
|
1418
1423
|
readonly name: import("shutro").CharField<{
|
|
1419
1424
|
readonly required: true;
|
|
1420
1425
|
readonly computed: false;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// GENERATED by `pnpm generate:models` (Shutro’s generator). Do not edit. definitions-hash:
|
|
1
|
+
// GENERATED by `pnpm generate:models` (Shutro’s generator). Do not edit. definitions-hash: a7db9609fdcaa63d
|
|
2
2
|
// Bindings of module `purchase_stock`: import the definition API from here to get types scoped to what it can see.
|
|
3
3
|
export { defineModel, defineModule, extendModel, f, replace } from '../../server/orm.js';
|
|
4
4
|
import { definitions } from '../../server/orm.js';
|