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
|
@@ -323,6 +323,7 @@ export const tradeFinance = defineModule({
|
|
|
323
323
|
],
|
|
324
324
|
}),
|
|
325
325
|
'trade.lc.presentation.form': form(TradePresentation, (k) => ({
|
|
326
|
+
chatter: true,
|
|
326
327
|
header: {
|
|
327
328
|
statusbar: 'state',
|
|
328
329
|
buttons: [
|
|
@@ -348,6 +349,7 @@ export const tradeFinance = defineModule({
|
|
|
348
349
|
],
|
|
349
350
|
}),
|
|
350
351
|
'trade.lc.amendment.form': form(TradeAmendment, (k) => ({
|
|
352
|
+
chatter: true,
|
|
351
353
|
header: {
|
|
352
354
|
statusbar: 'state',
|
|
353
355
|
buttons: [
|
|
@@ -280,6 +280,7 @@ export const TradeLc = defineModel('trade.lc', {
|
|
|
280
280
|
});
|
|
281
281
|
export const TradeAmendment = defineModel('trade.lc.amendment', {
|
|
282
282
|
label: 'LC amendment',
|
|
283
|
+
tracking: ['state'],
|
|
283
284
|
order: ['id asc'],
|
|
284
285
|
access: {
|
|
285
286
|
'trade_finance.user': ['read', 'write', 'create'],
|
|
@@ -334,6 +335,7 @@ export const TradeAmendment = defineModel('trade.lc.amendment', {
|
|
|
334
335
|
});
|
|
335
336
|
export const TradePresentation = defineModel('trade.lc.presentation', {
|
|
336
337
|
label: 'Presentation',
|
|
338
|
+
tracking: ['state', 'amount'],
|
|
337
339
|
order: ['date asc', 'id asc'],
|
|
338
340
|
access: {
|
|
339
341
|
'trade_finance.user': ['read', 'write', 'create'],
|
|
@@ -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: 604ed0a44ec94837
|
|
2
2
|
// Bindings of module `trade_finance_account`: import the definition API from here to get types scoped to what it can see.
|
|
3
3
|
export { defineModel, defineModule, extendModel, f, replace } from '../../server/orm.js';
|
|
4
4
|
import { definitions } from '../../server/orm.js';
|
|
@@ -1,10 +1,11 @@
|
|
|
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: 604ed0a44ec94837
|
|
2
2
|
// Schema view of module `trade_finance_account` (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.account': AccountAccount;
|
|
8
|
+
readonly 'account.analytic': AccountAnalytic;
|
|
8
9
|
readonly 'account.fiscal.year': AccountFiscalYear;
|
|
9
10
|
readonly 'account.full.reconcile': AccountFullReconcile;
|
|
10
11
|
readonly 'account.journal': AccountJournal;
|
|
@@ -18,9 +19,12 @@ export interface SchemaView {
|
|
|
18
19
|
readonly 'account.tax': AccountTax;
|
|
19
20
|
readonly 'account.tax.component': AccountTaxComponent;
|
|
20
21
|
readonly 'account.withholding': AccountWithholding;
|
|
22
|
+
readonly 'approval.delegation': ApprovalDelegation;
|
|
21
23
|
readonly 'approval.level': ApprovalLevel;
|
|
24
|
+
readonly 'approval.link': ApprovalLink;
|
|
22
25
|
readonly 'approval.policy': ApprovalPolicy;
|
|
23
26
|
readonly 'approval.request': ApprovalRequest;
|
|
27
|
+
readonly 'approval.vote': ApprovalVote;
|
|
24
28
|
readonly 'audit.event': AuditEvent;
|
|
25
29
|
readonly 'auth.api_key': AuthApiKey;
|
|
26
30
|
readonly 'auth.credential': AuthCredential;
|
|
@@ -92,6 +96,30 @@ export interface AccountAccount {
|
|
|
92
96
|
export interface AccountAccountMethods extends F.Methods<typeof import('../../accounting/index.js').accountingShutro, 'account.account'> {
|
|
93
97
|
}
|
|
94
98
|
|
|
99
|
+
/** `account.analytic` (owner: accounting). */
|
|
100
|
+
export interface AccountAnalytic {
|
|
101
|
+
readonly name: 'account.analytic';
|
|
102
|
+
readonly fields: {
|
|
103
|
+
readonly id: F.Id<'account.analytic'>;
|
|
104
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
105
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
106
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
107
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
108
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
109
|
+
readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
110
|
+
readonly company: F.Many2one<'res.company', { readonly required: true; readonly default: true }>;
|
|
111
|
+
readonly code: F.Char;
|
|
112
|
+
readonly name: F.Char<{ readonly required: true; readonly translate: true }>;
|
|
113
|
+
readonly parent: F.Many2one<'account.analytic'>;
|
|
114
|
+
readonly note: F.Text;
|
|
115
|
+
};
|
|
116
|
+
readonly methods: AccountAnalyticMethods;
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
/** Methods of `account.analytic`: declared ones and transitions. */
|
|
120
|
+
export interface AccountAnalyticMethods extends F.Methods<typeof import('../../accounting/index.js').accountingShutro, 'account.analytic'> {
|
|
121
|
+
}
|
|
122
|
+
|
|
95
123
|
/** `account.fiscal.year` (owner: accounting). */
|
|
96
124
|
export interface AccountFiscalYear {
|
|
97
125
|
readonly name: 'account.fiscal.year';
|
|
@@ -247,6 +275,7 @@ export interface AccountMoveLine {
|
|
|
247
275
|
readonly lineKind: F.Selection<'entry' | 'product' | 'tax' | 'counterpart', { readonly required: true; readonly default: true }>;
|
|
248
276
|
readonly invoice: F.Many2one<'account.move', { readonly readonly: true; readonly compute: true; readonly store: true }>;
|
|
249
277
|
readonly product: F.Many2one<'product.product'>;
|
|
278
|
+
readonly analytic: F.Many2one<'account.analytic'>;
|
|
250
279
|
readonly quantity: F.Decimal<{ readonly default: true }>;
|
|
251
280
|
readonly priceUnit: F.Decimal<{ readonly default: true }>;
|
|
252
281
|
readonly discount: F.Decimal<{ readonly default: true }>;
|
|
@@ -488,6 +517,29 @@ export interface AccountWithholding {
|
|
|
488
517
|
export interface AccountWithholdingMethods extends F.Methods<typeof import('../../accounting/index.js').accountingShutro, 'account.withholding'> {
|
|
489
518
|
}
|
|
490
519
|
|
|
520
|
+
/** `approval.delegation` (owner: permissions). */
|
|
521
|
+
export interface ApprovalDelegation {
|
|
522
|
+
readonly name: 'approval.delegation';
|
|
523
|
+
readonly fields: {
|
|
524
|
+
readonly id: F.Id<'approval.delegation'>;
|
|
525
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
526
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
527
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
528
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
529
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
530
|
+
readonly user: F.Many2one<'res.users', { readonly required: true; readonly default: true }>;
|
|
531
|
+
readonly delegate: F.Many2one<'res.users', { readonly required: true }>;
|
|
532
|
+
readonly dateFrom: F.DateOnly<{ readonly required: true }>;
|
|
533
|
+
readonly dateTo: F.DateOnly<{ readonly required: true }>;
|
|
534
|
+
readonly note: F.Char;
|
|
535
|
+
};
|
|
536
|
+
readonly methods: ApprovalDelegationMethods;
|
|
537
|
+
}
|
|
538
|
+
|
|
539
|
+
/** Methods of `approval.delegation`: declared ones and transitions. */
|
|
540
|
+
export interface ApprovalDelegationMethods extends F.Methods<typeof import('../../permissions/index.js').permissionsShutro, 'approval.delegation'> {
|
|
541
|
+
}
|
|
542
|
+
|
|
491
543
|
/** `approval.level` (owner: permissions). */
|
|
492
544
|
export interface ApprovalLevel {
|
|
493
545
|
readonly name: 'approval.level';
|
|
@@ -502,7 +554,14 @@ export interface ApprovalLevel {
|
|
|
502
554
|
readonly sequence: F.Integer<{ readonly default: true }>;
|
|
503
555
|
readonly name: F.Char<{ readonly required: true }>;
|
|
504
556
|
readonly condition: F.Json;
|
|
505
|
-
readonly
|
|
557
|
+
readonly approverKind: F.Selection<'role' | 'users' | 'manager' | 'field', { readonly required: true; readonly default: true }>;
|
|
558
|
+
readonly approverRole: F.Char;
|
|
559
|
+
readonly approverUsers: F.Many2many<'res.users', { readonly required: true }>;
|
|
560
|
+
readonly approverField: F.Char;
|
|
561
|
+
readonly quorum: F.Selection<'any' | 'all' | 'count', { readonly required: true; readonly default: true }>;
|
|
562
|
+
readonly quorumCount: F.Integer;
|
|
563
|
+
readonly deadlineHours: F.Integer;
|
|
564
|
+
readonly escalateRole: F.Char;
|
|
506
565
|
};
|
|
507
566
|
readonly methods: ApprovalLevelMethods;
|
|
508
567
|
}
|
|
@@ -511,6 +570,29 @@ export interface ApprovalLevel {
|
|
|
511
570
|
export interface ApprovalLevelMethods extends F.Methods<typeof import('../../permissions/index.js').permissionsShutro, 'approval.level'> {
|
|
512
571
|
}
|
|
513
572
|
|
|
573
|
+
/** `approval.link` (owner: permissions). */
|
|
574
|
+
export interface ApprovalLink {
|
|
575
|
+
readonly name: 'approval.link';
|
|
576
|
+
readonly fields: {
|
|
577
|
+
readonly id: F.Id<'approval.link'>;
|
|
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 request: F.Many2one<'approval.request', { readonly required: true }>;
|
|
584
|
+
readonly user: F.Many2one<'res.users', { readonly required: true }>;
|
|
585
|
+
readonly tokenHash: F.Char<{ readonly required: true }>;
|
|
586
|
+
readonly expiresAt: F.Datetime<{ readonly required: true }>;
|
|
587
|
+
readonly usedAt: F.Datetime;
|
|
588
|
+
};
|
|
589
|
+
readonly methods: ApprovalLinkMethods;
|
|
590
|
+
}
|
|
591
|
+
|
|
592
|
+
/** Methods of `approval.link`: declared ones and transitions. */
|
|
593
|
+
export interface ApprovalLinkMethods extends F.Methods<typeof import('../../permissions/index.js').permissionsShutro, 'approval.link'> {
|
|
594
|
+
}
|
|
595
|
+
|
|
514
596
|
/** `approval.policy` (owner: permissions). */
|
|
515
597
|
export interface ApprovalPolicy {
|
|
516
598
|
readonly name: 'approval.policy';
|
|
@@ -528,6 +610,9 @@ export interface ApprovalPolicy {
|
|
|
528
610
|
readonly company: F.Many2one<'res.company'>;
|
|
529
611
|
readonly onApproved: F.Char;
|
|
530
612
|
readonly onRejected: F.Char;
|
|
613
|
+
readonly onSentBack: F.Char;
|
|
614
|
+
readonly onWithdrawn: F.Char;
|
|
615
|
+
readonly reasonRequired: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
531
616
|
readonly levels: F.One2many<'approval.level', { readonly required: true }>;
|
|
532
617
|
};
|
|
533
618
|
readonly methods: ApprovalPolicyMethods;
|
|
@@ -554,8 +639,16 @@ export interface ApprovalRequest {
|
|
|
554
639
|
readonly targetModel: F.Char<{ readonly required: true }>;
|
|
555
640
|
readonly targetId: F.Integer<{ readonly required: true }>;
|
|
556
641
|
readonly company: F.Many2one<'res.company'>;
|
|
557
|
-
readonly approverRole: F.Char
|
|
558
|
-
readonly
|
|
642
|
+
readonly approverRole: F.Char;
|
|
643
|
+
readonly approvers: F.Many2many<'res.users', { readonly required: true }>;
|
|
644
|
+
readonly required: F.Integer<{ readonly required: true; readonly default: true }>;
|
|
645
|
+
readonly round: F.Integer<{ readonly required: true; readonly default: true }>;
|
|
646
|
+
readonly votes: F.One2many<'approval.vote', { readonly required: true }>;
|
|
647
|
+
readonly dueAt: F.Datetime;
|
|
648
|
+
readonly remindedAt: F.Datetime;
|
|
649
|
+
readonly escalatedTo: F.Char;
|
|
650
|
+
readonly escalatedAt: F.Datetime;
|
|
651
|
+
readonly state: F.Selection<'pending' | 'approved' | 'rejected' | 'sent_back' | 'cancelled', { readonly required: true; readonly default: true }>;
|
|
559
652
|
readonly requestedBy: F.Many2one<'res.users'>;
|
|
560
653
|
readonly decidedBy: F.Many2one<'res.users'>;
|
|
561
654
|
readonly decidedAt: F.Datetime;
|
|
@@ -568,6 +661,31 @@ export interface ApprovalRequest {
|
|
|
568
661
|
export interface ApprovalRequestMethods extends F.Methods<typeof import('../../permissions/index.js').permissionsShutro, 'approval.request'> {
|
|
569
662
|
}
|
|
570
663
|
|
|
664
|
+
/** `approval.vote` (owner: permissions). */
|
|
665
|
+
export interface ApprovalVote {
|
|
666
|
+
readonly name: 'approval.vote';
|
|
667
|
+
readonly fields: {
|
|
668
|
+
readonly id: F.Id<'approval.vote'>;
|
|
669
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
670
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
671
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
672
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
673
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
674
|
+
readonly request: F.Many2one<'approval.request', { readonly required: true }>;
|
|
675
|
+
readonly user: F.Many2one<'res.users', { readonly required: true }>;
|
|
676
|
+
readonly decision: F.Selection<'approve' | 'reject' | 'send_back', { readonly required: true }>;
|
|
677
|
+
readonly comment: F.Text;
|
|
678
|
+
readonly at: F.Datetime<{ readonly required: true }>;
|
|
679
|
+
readonly onBehalfOf: F.Many2one<'res.users'>;
|
|
680
|
+
readonly ip: F.Char;
|
|
681
|
+
};
|
|
682
|
+
readonly methods: ApprovalVoteMethods;
|
|
683
|
+
}
|
|
684
|
+
|
|
685
|
+
/** Methods of `approval.vote`: declared ones and transitions. */
|
|
686
|
+
export interface ApprovalVoteMethods extends F.Methods<typeof import('../../permissions/index.js').permissionsShutro, 'approval.vote'> {
|
|
687
|
+
}
|
|
688
|
+
|
|
571
689
|
/** `audit.event` (owner: base). */
|
|
572
690
|
export interface AuditEvent {
|
|
573
691
|
readonly name: 'audit.event';
|
|
@@ -1091,6 +1209,7 @@ export interface ProductCategory {
|
|
|
1091
1209
|
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1092
1210
|
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1093
1211
|
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
1212
|
+
readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
1094
1213
|
readonly name: F.Char<{ readonly required: true; readonly translate: true }>;
|
|
1095
1214
|
readonly parent: F.Many2one<'product.category'>;
|
|
1096
1215
|
};
|
|
@@ -38,6 +38,7 @@ export const tradeFinanceAccount = defineModule({
|
|
|
38
38
|
columns: ['lc', 'date', 'name', 'amount', { field: 'state', widget: 'badge' }],
|
|
39
39
|
}),
|
|
40
40
|
'trade.lc.charge.form': form(TradeCharge, (k) => ({
|
|
41
|
+
chatter: true,
|
|
41
42
|
header: {
|
|
42
43
|
statusbar: 'state',
|
|
43
44
|
buttons: [k.button('post', { primary: true, label: 'Post' })],
|
|
@@ -3112,6 +3112,131 @@ export declare const tradeFinanceAccountShutro: import("../server/orm.js").Modul
|
|
|
3112
3112
|
readonly hasDefault: false;
|
|
3113
3113
|
readonly readonly: false;
|
|
3114
3114
|
}>;
|
|
3115
|
+
}>>, import("../server/orm.js").Model<"account.analytic", {
|
|
3116
|
+
readonly id: import("../server/orm.js").IdField<"account.analytic">;
|
|
3117
|
+
readonly createdAt: import("../server/orm.js").ScalarField<'datetime', Date, Date, {
|
|
3118
|
+
required: true;
|
|
3119
|
+
readonly: true;
|
|
3120
|
+
computed: false;
|
|
3121
|
+
inverse: false;
|
|
3122
|
+
hasDefault: false;
|
|
3123
|
+
sequence: false;
|
|
3124
|
+
}>;
|
|
3125
|
+
readonly updatedAt: import("../server/orm.js").ScalarField<'datetime', Date, Date, {
|
|
3126
|
+
required: true;
|
|
3127
|
+
readonly: true;
|
|
3128
|
+
computed: false;
|
|
3129
|
+
inverse: false;
|
|
3130
|
+
hasDefault: false;
|
|
3131
|
+
sequence: false;
|
|
3132
|
+
}>;
|
|
3133
|
+
readonly createdBy: import("../server/orm.js").Many2oneField<'res.users', {
|
|
3134
|
+
required: false;
|
|
3135
|
+
readonly: true;
|
|
3136
|
+
computed: false;
|
|
3137
|
+
inverse: false;
|
|
3138
|
+
hasDefault: false;
|
|
3139
|
+
sequence: false;
|
|
3140
|
+
}>;
|
|
3141
|
+
readonly updatedBy: import("../server/orm.js").Many2oneField<'res.users', {
|
|
3142
|
+
required: false;
|
|
3143
|
+
readonly: true;
|
|
3144
|
+
computed: false;
|
|
3145
|
+
inverse: false;
|
|
3146
|
+
hasDefault: false;
|
|
3147
|
+
sequence: false;
|
|
3148
|
+
}>;
|
|
3149
|
+
readonly displayName: import("../server/orm.js").CharField<{
|
|
3150
|
+
required: true;
|
|
3151
|
+
readonly: true;
|
|
3152
|
+
computed: true;
|
|
3153
|
+
inverse: false;
|
|
3154
|
+
hasDefault: false;
|
|
3155
|
+
sequence: false;
|
|
3156
|
+
}>;
|
|
3157
|
+
readonly active: import("../server/orm.js").ActiveField;
|
|
3158
|
+
readonly company: import("../server/orm.js").CompanyField<true>;
|
|
3159
|
+
readonly code: import("../server/orm.js").CharField<{
|
|
3160
|
+
readonly required: false;
|
|
3161
|
+
readonly computed: false;
|
|
3162
|
+
readonly inverse: false;
|
|
3163
|
+
readonly sequence: false;
|
|
3164
|
+
readonly computeName: undefined;
|
|
3165
|
+
readonly store: true;
|
|
3166
|
+
readonly hasDefault: false;
|
|
3167
|
+
readonly readonly: false;
|
|
3168
|
+
}, string>;
|
|
3169
|
+
readonly name: import("../server/orm.js").CharField<{
|
|
3170
|
+
readonly required: true;
|
|
3171
|
+
readonly computed: false;
|
|
3172
|
+
readonly inverse: false;
|
|
3173
|
+
readonly sequence: false;
|
|
3174
|
+
readonly computeName: undefined;
|
|
3175
|
+
readonly store: true;
|
|
3176
|
+
readonly hasDefault: false;
|
|
3177
|
+
readonly readonly: false;
|
|
3178
|
+
}, string | Readonly<Record<string, string>>>;
|
|
3179
|
+
readonly parent: import("../server/orm.js").Many2oneField<"account.analytic", {
|
|
3180
|
+
readonly required: false;
|
|
3181
|
+
readonly computed: false;
|
|
3182
|
+
readonly inverse: false;
|
|
3183
|
+
readonly sequence: false;
|
|
3184
|
+
readonly computeName: undefined;
|
|
3185
|
+
readonly store: true;
|
|
3186
|
+
readonly hasDefault: false;
|
|
3187
|
+
readonly readonly: false;
|
|
3188
|
+
}>;
|
|
3189
|
+
readonly note: import("../server/orm.js").ScalarField<"text", string, string, {
|
|
3190
|
+
readonly required: false;
|
|
3191
|
+
readonly computed: false;
|
|
3192
|
+
readonly inverse: false;
|
|
3193
|
+
readonly sequence: false;
|
|
3194
|
+
readonly computeName: undefined;
|
|
3195
|
+
readonly store: true;
|
|
3196
|
+
readonly hasDefault: false;
|
|
3197
|
+
readonly readonly: false;
|
|
3198
|
+
}>;
|
|
3199
|
+
}, {} & import("../server/orm.js").TransitionMethods<{
|
|
3200
|
+
readonly code: import("../server/orm.js").CharField<{
|
|
3201
|
+
readonly required: false;
|
|
3202
|
+
readonly computed: false;
|
|
3203
|
+
readonly inverse: false;
|
|
3204
|
+
readonly sequence: false;
|
|
3205
|
+
readonly computeName: undefined;
|
|
3206
|
+
readonly store: true;
|
|
3207
|
+
readonly hasDefault: false;
|
|
3208
|
+
readonly readonly: false;
|
|
3209
|
+
}, string>;
|
|
3210
|
+
readonly name: import("../server/orm.js").CharField<{
|
|
3211
|
+
readonly required: true;
|
|
3212
|
+
readonly computed: false;
|
|
3213
|
+
readonly inverse: false;
|
|
3214
|
+
readonly sequence: false;
|
|
3215
|
+
readonly computeName: undefined;
|
|
3216
|
+
readonly store: true;
|
|
3217
|
+
readonly hasDefault: false;
|
|
3218
|
+
readonly readonly: false;
|
|
3219
|
+
}, string | Readonly<Record<string, string>>>;
|
|
3220
|
+
readonly parent: import("../server/orm.js").Many2oneField<"account.analytic", {
|
|
3221
|
+
readonly required: false;
|
|
3222
|
+
readonly computed: false;
|
|
3223
|
+
readonly inverse: false;
|
|
3224
|
+
readonly sequence: false;
|
|
3225
|
+
readonly computeName: undefined;
|
|
3226
|
+
readonly store: true;
|
|
3227
|
+
readonly hasDefault: false;
|
|
3228
|
+
readonly readonly: false;
|
|
3229
|
+
}>;
|
|
3230
|
+
readonly note: import("../server/orm.js").ScalarField<"text", string, string, {
|
|
3231
|
+
readonly required: false;
|
|
3232
|
+
readonly computed: false;
|
|
3233
|
+
readonly inverse: false;
|
|
3234
|
+
readonly sequence: false;
|
|
3235
|
+
readonly computeName: undefined;
|
|
3236
|
+
readonly store: true;
|
|
3237
|
+
readonly hasDefault: false;
|
|
3238
|
+
readonly readonly: false;
|
|
3239
|
+
}>;
|
|
3115
3240
|
}>>, import("../server/orm.js").Model<"account.account", {
|
|
3116
3241
|
readonly id: import("../server/orm.js").IdField<"account.account">;
|
|
3117
3242
|
readonly createdAt: import("../server/orm.js").ScalarField<'datetime', Date, Date, {
|
|
@@ -4804,6 +4929,16 @@ export declare const tradeFinanceAccountShutro: import("../server/orm.js").Modul
|
|
|
4804
4929
|
readonly hasDefault: false;
|
|
4805
4930
|
readonly readonly: false;
|
|
4806
4931
|
}>;
|
|
4932
|
+
readonly analytic: import("../server/orm.js").Many2oneField<"account.analytic", {
|
|
4933
|
+
readonly required: false;
|
|
4934
|
+
readonly computed: false;
|
|
4935
|
+
readonly inverse: false;
|
|
4936
|
+
readonly sequence: false;
|
|
4937
|
+
readonly computeName: undefined;
|
|
4938
|
+
readonly store: true;
|
|
4939
|
+
readonly hasDefault: false;
|
|
4940
|
+
readonly readonly: false;
|
|
4941
|
+
}>;
|
|
4807
4942
|
readonly quantity: import("../server/orm.js").DecimalField<{
|
|
4808
4943
|
readonly required: false;
|
|
4809
4944
|
readonly computed: false;
|
|
@@ -5155,6 +5290,16 @@ export declare const tradeFinanceAccountShutro: import("../server/orm.js").Modul
|
|
|
5155
5290
|
readonly hasDefault: false;
|
|
5156
5291
|
readonly readonly: false;
|
|
5157
5292
|
}>;
|
|
5293
|
+
readonly analytic: import("../server/orm.js").Many2oneField<"account.analytic", {
|
|
5294
|
+
readonly required: false;
|
|
5295
|
+
readonly computed: false;
|
|
5296
|
+
readonly inverse: false;
|
|
5297
|
+
readonly sequence: false;
|
|
5298
|
+
readonly computeName: undefined;
|
|
5299
|
+
readonly store: true;
|
|
5300
|
+
readonly hasDefault: false;
|
|
5301
|
+
readonly readonly: false;
|
|
5302
|
+
}>;
|
|
5158
5303
|
readonly quantity: import("../server/orm.js").DecimalField<{
|
|
5159
5304
|
readonly required: false;
|
|
5160
5305
|
readonly computed: false;
|
|
@@ -7080,6 +7225,7 @@ export declare const tradeFinanceAccountShutro: import("../server/orm.js").Modul
|
|
|
7080
7225
|
hasDefault: false;
|
|
7081
7226
|
sequence: false;
|
|
7082
7227
|
}>;
|
|
7228
|
+
readonly active: import("../server/orm.js").ActiveField;
|
|
7083
7229
|
readonly name: import("../server/orm.js").CharField<{
|
|
7084
7230
|
readonly required: true;
|
|
7085
7231
|
readonly computed: false;
|
|
@@ -184,6 +184,7 @@ export const PresentationPayment = extendModel('trade.lc.presentation', {
|
|
|
184
184
|
/** A bank charge on an LC (commission, amendment, acceptance, SWIFT): posted to LC charges, an expense. */
|
|
185
185
|
export const TradeCharge = defineModel('trade.lc.charge', {
|
|
186
186
|
label: 'LC charge',
|
|
187
|
+
tracking: ['state', 'amount'],
|
|
187
188
|
order: ['date asc', 'id asc'],
|
|
188
189
|
access: {
|
|
189
190
|
'trade_finance.user': ['read', 'write', 'create'],
|
|
@@ -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: 36963ef5f845ed84
|
|
2
2
|
// Bindings of module `trade_finance_purchase`: 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: 36963ef5f845ed84
|
|
2
2
|
// Schema view of module `trade_finance_purchase` (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;
|
|
@@ -75,6 +78,29 @@ export interface AccountTax {
|
|
|
75
78
|
export interface AccountTaxMethods extends F.Methods<typeof import('../../product/index.js').productShutro, 'account.tax'> {
|
|
76
79
|
}
|
|
77
80
|
|
|
81
|
+
/** `approval.delegation` (owner: permissions). */
|
|
82
|
+
export interface ApprovalDelegation {
|
|
83
|
+
readonly name: 'approval.delegation';
|
|
84
|
+
readonly fields: {
|
|
85
|
+
readonly id: F.Id<'approval.delegation'>;
|
|
86
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
87
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
88
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
89
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
90
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
91
|
+
readonly user: F.Many2one<'res.users', { readonly required: true; readonly default: true }>;
|
|
92
|
+
readonly delegate: F.Many2one<'res.users', { readonly required: true }>;
|
|
93
|
+
readonly dateFrom: F.DateOnly<{ readonly required: true }>;
|
|
94
|
+
readonly dateTo: F.DateOnly<{ readonly required: true }>;
|
|
95
|
+
readonly note: F.Char;
|
|
96
|
+
};
|
|
97
|
+
readonly methods: ApprovalDelegationMethods;
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
/** Methods of `approval.delegation`: declared ones and transitions. */
|
|
101
|
+
export interface ApprovalDelegationMethods extends F.Methods<typeof import('../../permissions/index.js').permissionsShutro, 'approval.delegation'> {
|
|
102
|
+
}
|
|
103
|
+
|
|
78
104
|
/** `approval.level` (owner: permissions). */
|
|
79
105
|
export interface ApprovalLevel {
|
|
80
106
|
readonly name: 'approval.level';
|
|
@@ -89,7 +115,14 @@ export interface ApprovalLevel {
|
|
|
89
115
|
readonly sequence: F.Integer<{ readonly default: true }>;
|
|
90
116
|
readonly name: F.Char<{ readonly required: true }>;
|
|
91
117
|
readonly condition: F.Json;
|
|
92
|
-
readonly
|
|
118
|
+
readonly approverKind: F.Selection<'role' | 'users' | 'manager' | 'field', { readonly required: true; readonly default: true }>;
|
|
119
|
+
readonly approverRole: F.Char;
|
|
120
|
+
readonly approverUsers: F.Many2many<'res.users', { readonly required: true }>;
|
|
121
|
+
readonly approverField: F.Char;
|
|
122
|
+
readonly quorum: F.Selection<'any' | 'all' | 'count', { readonly required: true; readonly default: true }>;
|
|
123
|
+
readonly quorumCount: F.Integer;
|
|
124
|
+
readonly deadlineHours: F.Integer;
|
|
125
|
+
readonly escalateRole: F.Char;
|
|
93
126
|
};
|
|
94
127
|
readonly methods: ApprovalLevelMethods;
|
|
95
128
|
}
|
|
@@ -98,6 +131,29 @@ export interface ApprovalLevel {
|
|
|
98
131
|
export interface ApprovalLevelMethods extends F.Methods<typeof import('../../permissions/index.js').permissionsShutro, 'approval.level'> {
|
|
99
132
|
}
|
|
100
133
|
|
|
134
|
+
/** `approval.link` (owner: permissions). */
|
|
135
|
+
export interface ApprovalLink {
|
|
136
|
+
readonly name: 'approval.link';
|
|
137
|
+
readonly fields: {
|
|
138
|
+
readonly id: F.Id<'approval.link'>;
|
|
139
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
140
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
141
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
142
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
143
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
144
|
+
readonly request: F.Many2one<'approval.request', { readonly required: true }>;
|
|
145
|
+
readonly user: F.Many2one<'res.users', { readonly required: true }>;
|
|
146
|
+
readonly tokenHash: F.Char<{ readonly required: true }>;
|
|
147
|
+
readonly expiresAt: F.Datetime<{ readonly required: true }>;
|
|
148
|
+
readonly usedAt: F.Datetime;
|
|
149
|
+
};
|
|
150
|
+
readonly methods: ApprovalLinkMethods;
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
/** Methods of `approval.link`: declared ones and transitions. */
|
|
154
|
+
export interface ApprovalLinkMethods extends F.Methods<typeof import('../../permissions/index.js').permissionsShutro, 'approval.link'> {
|
|
155
|
+
}
|
|
156
|
+
|
|
101
157
|
/** `approval.policy` (owner: permissions). */
|
|
102
158
|
export interface ApprovalPolicy {
|
|
103
159
|
readonly name: 'approval.policy';
|
|
@@ -115,6 +171,9 @@ export interface ApprovalPolicy {
|
|
|
115
171
|
readonly company: F.Many2one<'res.company'>;
|
|
116
172
|
readonly onApproved: F.Char;
|
|
117
173
|
readonly onRejected: F.Char;
|
|
174
|
+
readonly onSentBack: F.Char;
|
|
175
|
+
readonly onWithdrawn: F.Char;
|
|
176
|
+
readonly reasonRequired: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
118
177
|
readonly levels: F.One2many<'approval.level', { readonly required: true }>;
|
|
119
178
|
};
|
|
120
179
|
readonly methods: ApprovalPolicyMethods;
|
|
@@ -141,8 +200,16 @@ export interface ApprovalRequest {
|
|
|
141
200
|
readonly targetModel: F.Char<{ readonly required: true }>;
|
|
142
201
|
readonly targetId: F.Integer<{ readonly required: true }>;
|
|
143
202
|
readonly company: F.Many2one<'res.company'>;
|
|
144
|
-
readonly approverRole: F.Char
|
|
145
|
-
readonly
|
|
203
|
+
readonly approverRole: F.Char;
|
|
204
|
+
readonly approvers: F.Many2many<'res.users', { readonly required: true }>;
|
|
205
|
+
readonly required: F.Integer<{ readonly required: true; readonly default: true }>;
|
|
206
|
+
readonly round: F.Integer<{ readonly required: true; readonly default: true }>;
|
|
207
|
+
readonly votes: F.One2many<'approval.vote', { readonly required: true }>;
|
|
208
|
+
readonly dueAt: F.Datetime;
|
|
209
|
+
readonly remindedAt: F.Datetime;
|
|
210
|
+
readonly escalatedTo: F.Char;
|
|
211
|
+
readonly escalatedAt: F.Datetime;
|
|
212
|
+
readonly state: F.Selection<'pending' | 'approved' | 'rejected' | 'sent_back' | 'cancelled', { readonly required: true; readonly default: true }>;
|
|
146
213
|
readonly requestedBy: F.Many2one<'res.users'>;
|
|
147
214
|
readonly decidedBy: F.Many2one<'res.users'>;
|
|
148
215
|
readonly decidedAt: F.Datetime;
|
|
@@ -155,6 +222,31 @@ export interface ApprovalRequest {
|
|
|
155
222
|
export interface ApprovalRequestMethods extends F.Methods<typeof import('../../permissions/index.js').permissionsShutro, 'approval.request'> {
|
|
156
223
|
}
|
|
157
224
|
|
|
225
|
+
/** `approval.vote` (owner: permissions). */
|
|
226
|
+
export interface ApprovalVote {
|
|
227
|
+
readonly name: 'approval.vote';
|
|
228
|
+
readonly fields: {
|
|
229
|
+
readonly id: F.Id<'approval.vote'>;
|
|
230
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
231
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
232
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
233
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
234
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
235
|
+
readonly request: F.Many2one<'approval.request', { readonly required: true }>;
|
|
236
|
+
readonly user: F.Many2one<'res.users', { readonly required: true }>;
|
|
237
|
+
readonly decision: F.Selection<'approve' | 'reject' | 'send_back', { readonly required: true }>;
|
|
238
|
+
readonly comment: F.Text;
|
|
239
|
+
readonly at: F.Datetime<{ readonly required: true }>;
|
|
240
|
+
readonly onBehalfOf: F.Many2one<'res.users'>;
|
|
241
|
+
readonly ip: F.Char;
|
|
242
|
+
};
|
|
243
|
+
readonly methods: ApprovalVoteMethods;
|
|
244
|
+
}
|
|
245
|
+
|
|
246
|
+
/** Methods of `approval.vote`: declared ones and transitions. */
|
|
247
|
+
export interface ApprovalVoteMethods extends F.Methods<typeof import('../../permissions/index.js').permissionsShutro, 'approval.vote'> {
|
|
248
|
+
}
|
|
249
|
+
|
|
158
250
|
/** `audit.event` (owner: base). */
|
|
159
251
|
export interface AuditEvent {
|
|
160
252
|
readonly name: 'audit.event';
|
|
@@ -678,6 +770,7 @@ export interface ProductCategory {
|
|
|
678
770
|
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
679
771
|
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
680
772
|
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
773
|
+
readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
681
774
|
readonly name: F.Char<{ readonly required: true; readonly translate: true }>;
|
|
682
775
|
readonly parent: F.Many2one<'product.category'>;
|
|
683
776
|
};
|
|
@@ -2354,6 +2354,7 @@ export declare const tradeFinancePurchaseShutro: import("../server/orm.js").Modu
|
|
|
2354
2354
|
readonly to: "to_approve";
|
|
2355
2355
|
readonly guard: (records: never) => unknown;
|
|
2356
2356
|
readonly message: "Add at least one line before submitting the order.";
|
|
2357
|
+
readonly before: (records: never) => unknown;
|
|
2357
2358
|
readonly after: (records: never) => unknown;
|
|
2358
2359
|
};
|
|
2359
2360
|
readonly confirm: {
|
|
@@ -2391,7 +2392,9 @@ export declare const tradeFinancePurchaseShutro: import("../server/orm.js").Modu
|
|
|
2391
2392
|
hasDefault: true;
|
|
2392
2393
|
sequence: false;
|
|
2393
2394
|
}>;
|
|
2394
|
-
}, {
|
|
2395
|
+
}, {
|
|
2396
|
+
readonly submitting: (this: unknown) => Promise<undefined>;
|
|
2397
|
+
} & import("../server/orm.js").TransitionMethods<{
|
|
2395
2398
|
readonly name: import("../server/orm.js").CharField<{
|
|
2396
2399
|
readonly required: true;
|
|
2397
2400
|
readonly computed: false;
|
|
@@ -2532,6 +2535,7 @@ export declare const tradeFinancePurchaseShutro: import("../server/orm.js").Modu
|
|
|
2532
2535
|
readonly to: "to_approve";
|
|
2533
2536
|
readonly guard: (records: never) => unknown;
|
|
2534
2537
|
readonly message: "Add at least one line before submitting the order.";
|
|
2538
|
+
readonly before: (records: never) => unknown;
|
|
2535
2539
|
readonly after: (records: never) => unknown;
|
|
2536
2540
|
};
|
|
2537
2541
|
readonly confirm: {
|
|
@@ -3587,6 +3591,7 @@ export declare const tradeFinancePurchaseShutro: import("../server/orm.js").Modu
|
|
|
3587
3591
|
hasDefault: false;
|
|
3588
3592
|
sequence: false;
|
|
3589
3593
|
}>;
|
|
3594
|
+
readonly active: import("../server/orm.js").ActiveField;
|
|
3590
3595
|
readonly name: import("../server/orm.js").CharField<{
|
|
3591
3596
|
readonly required: true;
|
|
3592
3597
|
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: 6aa201c2af7a099c
|
|
2
2
|
// Bindings of module `trade_finance_sale`: 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';
|