|
dolibarr 25.0.0-alpha
|
Class ToolInvoices. More...


Public Member Functions | |
| __construct (DoliDB $db, $user=null, $conf=null) | |
| Constructor. | |
| getDefinitions () | |
| Returns an array of tool definitions, including name, description, and input schema. | |
| getRequiredRights (string $toolName) | |
| Customer and supplier invoice reads and lifecycle actions. | |
| writeConfirmationPreview (string $toolName, array $args) | |
| Preview of the invoice action this call would perform. | |
| getCategories () | |
| Return categories this tool belongs to. | |
| execute (string $name, array $args) | |
| Executes the requested tool function based on its name. | |
Public Member Functions inherited from McpTool | |
| __construct ($db, $user, $conf) | |
| Constructor. | |
| isSystem () | |
| Return true if this is a system/infrastructure tool that must always remain visible and executable regardless of the admin allow-list. | |
Private Member Functions | |
| getUser () | |
| Return the authenticated user, preferring DI ($this->user) and falling back to global $user. | |
| searchInvoices ($args) | |
| Search invoices based on filters. | |
| getInvoice ($args) | |
| Get full invoice details. | |
| validateInvoice ($args) | |
| Validate a draft invoice. | |
| payInvoice ($args) | |
| Register a payment on an invoice. | |
| searchSupplierInvoices ($args) | |
| Search supplier invoices. | |
| getSupplierInvoice ($args) | |
| Get one supplier invoice with lines. | |
| findCustomer ($identifier) | |
| Find a customer by identifier. | |
| findInvoice ($identifier) | |
| Find an invoice by identifier. | |
| findBankAccount ($identifier) | |
| Find a bank account. | |
Additional Inherited Members | |
Public Attributes inherited from McpTool | |
| const | RIGHTS_UNDECLARED = 'undeclared' |
| Default of getRequiredRights(): the class never declared anything, deny. | |
| const | NO_WRITE = '' |
| Returned by writeConfirmationPreview() when the tool writes nothing. | |
Class ToolInvoices.
Provides various tools related to Dolibarr invoices.
Definition at line 38 of file invoices.class.php.
| ToolInvoices::__construct | ( | DoliDB | $db, |
| $user = null, | |||
| $conf = null ) |
Constructor.
Aligned with McpHandler's instantiation contract: new $className($db, $user, $conf).
| DoliDB | $db | Database handler |
| User | null | $user | Service user provided by McpHandler (from AI_MCP_USER_ID) |
| Conf | null | $conf | Dolibarr config (optional) |
Definition at line 50 of file invoices.class.php.
| ToolInvoices::execute | ( | string | $name, |
| array | $args ) |
Executes the requested tool function based on its name.
| string | $name | The name of the tool to execute. |
| array<string,mixed> | $args The arguments for the tool (key-value pairs). |
Reimplemented from McpTool.
Definition at line 249 of file invoices.class.php.
References getInvoice(), getSupplierInvoice(), payInvoice(), searchInvoices(), searchSupplierInvoices(), and validateInvoice().
|
private |
Find a bank account.
| string | int | $identifier | Bank account id, ref or label |
Definition at line 830 of file invoices.class.php.
References getEntity().
Referenced by payInvoice().
|
private |
Find a customer by identifier.
| string | $identifier | ID, ref, code or name |
Definition at line 733 of file invoices.class.php.
References getEntity().
Referenced by searchInvoices().
|
private |
Find an invoice by identifier.
| string | int | $identifier | Invoice ID or ref |
Definition at line 802 of file invoices.class.php.
Referenced by getInvoice(), payInvoice(), and validateInvoice().
| ToolInvoices::getCategories | ( | ) |
Return categories this tool belongs to.
Used by the intent parser to filter available tools.
Reimplemented from McpTool.
Definition at line 237 of file invoices.class.php.
| ToolInvoices::getDefinitions | ( | ) |
Returns an array of tool definitions, including name, description, and input schema.
Reimplemented from McpTool.
Definition at line 81 of file invoices.class.php.
|
private |
Get full invoice details.
| array<string,mixed> | $args Input parameters (ref or id) |
Definition at line 413 of file invoices.class.php.
References $id, dol_html_entity_decode(), dol_print_date(), findInvoice(), and price().
Referenced by execute().
| ToolInvoices::getRequiredRights | ( | string | $toolName | ) |
Customer and supplier invoice reads and lifecycle actions.
| string | $toolName | Tool being executed. |
Reimplemented from McpTool.
Definition at line 193 of file invoices.class.php.
References McpTool\RIGHTS_UNDECLARED.
|
private |
Get one supplier invoice with lines.
| array<string,mixed> | $args ref or id |
Definition at line 676 of file invoices.class.php.
References dol_html_entity_decode(), dol_print_date(), getEntity(), price(), and user.
Referenced by execute().
|
private |
Return the authenticated user, preferring DI ($this->user) and falling back to global $user.
In HTTP MCP context there is no PHP web session — only the service user injected via DI.
Definition at line 65 of file invoices.class.php.
References user.
Referenced by payInvoice(), and validateInvoice().
|
private |
Register a payment on an invoice.
| array<string,mixed> | $args Input parameters (invoice, amount, payment_mode, bank_account) |
Definition at line 507 of file invoices.class.php.
References dol_getIdFromCode(), dol_now(), findBankAccount(), findInvoice(), getUser(), and price().
Referenced by execute().
|
private |
Search invoices based on filters.
| array<string,mixed> | $args Input filters (limit, status, customer) |
Definition at line 281 of file invoices.class.php.
References dol_print_date(), dol_syslog(), findCustomer(), getEntity(), and price().
Referenced by execute().
|
private |
Search supplier invoices.
| array<string,mixed> | $args query, status, limit |
Definition at line 581 of file invoices.class.php.
References dol_print_date(), dol_syslog(), price(), and user.
Referenced by execute().
|
private |
Validate a draft invoice.
| array<string,mixed> | $args Input parameters (invoice ref or id) |
Definition at line 459 of file invoices.class.php.
References findInvoice(), and getUser().
Referenced by execute().
| ToolInvoices::writeConfirmationPreview | ( | string | $toolName, |
| array | $args ) |
Preview of the invoice action this call would perform.
| string | $toolName | Tool that would run. |
| array<string,mixed> | $args Arguments it would run with. |
Reimplemented from McpTool.
Definition at line 215 of file invoices.class.php.
References McpTool\NO_WRITE, and price().