fix: enhance Fusion Claims Intelligence AI with client status and billing period tools

- Fix _read_group override crash (dict_values not subscriptable) in sale_order.py
- Migrate _fc_tool_claims_stats from deprecated read_group() to _read_group() API
- Enrich client details tool with funding history, invoice status, prev-funded devices
- Add Client Status Lookup tool (search by name, returns orders/invoices/next steps)
- Add ADP Billing Period tool (invoiced amounts, paid/unpaid, submission deadlines)
- Update AI agent system prompt with all 5 tools and usage examples
This commit is contained in:
2026-03-10 02:30:42 +00:00
parent 3342b57469
commit 7bd7b8f7c4
3 changed files with 386 additions and 50 deletions

View File

@@ -1836,7 +1836,8 @@ class SaleOrder(models.Model):
domain, groupby=groupby, aggregates=aggregates,
having=having, offset=offset, limit=limit, order=order,
)
if groupby and groupby[0] == 'x_fc_adp_application_status':
groupby_list = list(groupby) if not isinstance(groupby, (list, tuple)) else groupby
if groupby_list and groupby_list[0] == 'x_fc_adp_application_status':
status_order = self._STATUS_ORDER
result = sorted(result, key=lambda r: status_order.get(r[0], 999))
return result