Workflow (from the FigJam ADP board): - 9 new ADP action methods to wire up the orphan states that the board showed had no entry or no exit path: put_on_hold, withdraw, mark_denied, mark_rejected, mark_needs_correction, cancel, reopen_cancelled, reopen_expired, resubmit_from_denied. - 12-month auto-expire cron (_cron_adp_expire_approved) configurable via fusion_claims.adp_approval_expiry_months, runs daily at 03:00. - 3 new recovery buttons in the ADP form view (Reopen cancelled, Reopen expired, Resubmit from denied) in both the primary status bar and the secondary details panel. Email (from the 2026-04 email audit): - 6 new ADP stage email methods via a shared _adp_send_stage_email helper: assessment_scheduled, assessment_completed, application_received, accepted, cancelled, expired. Each has a matching dispatch entry in write(). - _send_rejection_email now includes the client (was authorizer-only). - _send_accepted_email excludes the authorizer per the new rule: "Accepted" is a passive intermediate state with no authorizer action required. - _send_ready_for_delivery_email excludes the authorizer: operational scheduling, not delivery confirmation. Authorizers are notified at case_closed when the product is actually delivered. - action_adp_put_on_hold and action_adp_withdraw now fire their matching email methods so direct action-method calls get the same notifications as the status_change_reason_wizard path. Authorizer notification rule (locked in for this update): Send to authorizer ONLY for initial involvement (assessment/submit/ resubmit), delivery confirmation (case_closed), and problem states (rejected, denied, needs_correction, withdrawn, on_hold, cancelled, expired). Skip for billing, payment, ready_delivery scheduling, and passive intermediates (accepted). Scope: ADP + ADP/ODSP only. MOD workflow emails reverted and deferred to a separate update. Deployed to odoo-westin (westin-v19) and odoo-mobility (mobility). Pre-existing stock_route_warehouse FK orphans on mobility worked around by verifying fusion_claims transaction committed before container restart.
156 lines
7.5 KiB
XML
156 lines
7.5 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<odoo>
|
|
<!--
|
|
Default configuration parameters for Fusion Claims.
|
|
noupdate="1" ensures these are ONLY set on first install,
|
|
never overwritten during module upgrades.
|
|
-->
|
|
<data noupdate="1">
|
|
|
|
<!-- ADP Billing -->
|
|
<record id="config_vendor_code" model="ir.config_parameter">
|
|
<field name="key">fusion_claims.vendor_code</field>
|
|
<field name="value"></field>
|
|
</record>
|
|
<record id="config_adp_posting_base_date" model="ir.config_parameter">
|
|
<field name="key">fusion_claims.adp_posting_base_date</field>
|
|
<field name="value">2026-01-23</field>
|
|
</record>
|
|
<record id="config_adp_posting_frequency_days" model="ir.config_parameter">
|
|
<field name="key">fusion_claims.adp_posting_frequency_days</field>
|
|
<field name="value">14</field>
|
|
</record>
|
|
|
|
<!-- Email Notifications -->
|
|
<record id="config_enable_email_notifications" model="ir.config_parameter">
|
|
<field name="key">fusion_claims.enable_email_notifications</field>
|
|
<field name="value">True</field>
|
|
</record>
|
|
<record id="config_application_reminder_days" model="ir.config_parameter">
|
|
<field name="key">fusion_claims.application_reminder_days</field>
|
|
<field name="value">4</field>
|
|
</record>
|
|
<record id="config_application_reminder_2_days" model="ir.config_parameter">
|
|
<field name="key">fusion_claims.application_reminder_2_days</field>
|
|
<field name="value">4</field>
|
|
</record>
|
|
|
|
<!-- AI Settings -->
|
|
<record id="config_ai_model" model="ir.config_parameter">
|
|
<field name="key">fusion_claims.ai_model</field>
|
|
<field name="value">gpt-4o-mini</field>
|
|
</record>
|
|
<record id="config_auto_parse_xml" model="ir.config_parameter">
|
|
<field name="key">fusion_claims.auto_parse_xml</field>
|
|
<field name="value">True</field>
|
|
</record>
|
|
|
|
<!-- Field Mappings (defaults for fresh installs) -->
|
|
<record id="config_field_sale_type" model="ir.config_parameter">
|
|
<field name="key">fusion_claims.field_sale_type</field>
|
|
<field name="value">x_fc_sale_type</field>
|
|
</record>
|
|
<record id="config_field_so_client_type" model="ir.config_parameter">
|
|
<field name="key">fusion_claims.field_so_client_type</field>
|
|
<field name="value">x_fc_client_type</field>
|
|
</record>
|
|
<record id="config_field_so_authorizer" model="ir.config_parameter">
|
|
<field name="key">fusion_claims.field_so_authorizer</field>
|
|
<field name="value">x_fc_authorizer_id</field>
|
|
</record>
|
|
<record id="config_field_invoice_type" model="ir.config_parameter">
|
|
<field name="key">fusion_claims.field_invoice_type</field>
|
|
<field name="value">x_fc_invoice_type</field>
|
|
</record>
|
|
<record id="config_field_inv_client_type" model="ir.config_parameter">
|
|
<field name="key">fusion_claims.field_inv_client_type</field>
|
|
<field name="value">x_fc_client_type</field>
|
|
</record>
|
|
<record id="config_field_inv_authorizer" model="ir.config_parameter">
|
|
<field name="key">fusion_claims.field_inv_authorizer</field>
|
|
<field name="value">x_fc_authorizer_id</field>
|
|
</record>
|
|
<record id="config_field_product_code" model="ir.config_parameter">
|
|
<field name="key">fusion_claims.field_product_code</field>
|
|
<field name="value">x_fc_adp_device_code</field>
|
|
</record>
|
|
<record id="config_field_sol_serial" model="ir.config_parameter">
|
|
<field name="key">fusion_claims.field_sol_serial</field>
|
|
<field name="value">x_fc_serial_number</field>
|
|
</record>
|
|
<record id="config_field_aml_serial" model="ir.config_parameter">
|
|
<field name="key">fusion_claims.field_aml_serial</field>
|
|
<field name="value">x_fc_serial_number</field>
|
|
</record>
|
|
|
|
<!-- March of Dimes -->
|
|
<record id="config_mod_default_email" model="ir.config_parameter">
|
|
<field name="key">fusion_claims.mod_default_email</field>
|
|
<field name="value">hvmp@marchofdimes.ca</field>
|
|
</record>
|
|
|
|
<!-- Twilio SMS -->
|
|
<record id="config_twilio_enabled" model="ir.config_parameter">
|
|
<field name="key">fusion_claims.twilio_enabled</field>
|
|
<field name="value">False</field>
|
|
</record>
|
|
<record id="config_twilio_account_sid" model="ir.config_parameter">
|
|
<field name="key">fusion_claims.twilio_account_sid</field>
|
|
<field name="value"></field>
|
|
</record>
|
|
<record id="config_twilio_auth_token" model="ir.config_parameter">
|
|
<field name="key">fusion_claims.twilio_auth_token</field>
|
|
<field name="value"></field>
|
|
</record>
|
|
<record id="config_twilio_phone_number" model="ir.config_parameter">
|
|
<field name="key">fusion_claims.twilio_phone_number</field>
|
|
<field name="value"></field>
|
|
</record>
|
|
|
|
<!-- MOD Follow-up Settings -->
|
|
<record id="config_mod_followup_interval" model="ir.config_parameter">
|
|
<field name="key">fusion_claims.mod_followup_interval_days</field>
|
|
<field name="value">14</field>
|
|
</record>
|
|
<record id="config_mod_followup_escalation" model="ir.config_parameter">
|
|
<field name="key">fusion_claims.mod_followup_escalation_days</field>
|
|
<field name="value">3</field>
|
|
</record>
|
|
<!-- Hard cap on auto follow-up emails per order per 30-day window. -->
|
|
<record id="config_mod_followup_max_per_month" model="ir.config_parameter">
|
|
<field name="key">fusion_claims.mod_followup_max_per_month</field>
|
|
<field name="value">2</field>
|
|
</record>
|
|
<record id="config_mod_followup_window_days" model="ir.config_parameter">
|
|
<field name="key">fusion_claims.mod_followup_window_days</field>
|
|
<field name="value">30</field>
|
|
</record>
|
|
<!-- Per-cron-run throttle so a backlog of stale MOD cases cannot
|
|
blast 30+ emails in one minute. Remaining orders roll over to
|
|
the next day's cron run. -->
|
|
<record id="config_mod_followup_max_per_cron_run" model="ir.config_parameter">
|
|
<field name="key">fusion_claims.mod_followup_max_per_cron_run</field>
|
|
<field name="value">10</field>
|
|
</record>
|
|
|
|
<!-- ADP funding window: approved applications auto-expire after N months
|
|
if not progressed to ready_delivery. ADP doesn't actively notify of
|
|
expiry — we trust this window to reflect reality. -->
|
|
<record id="config_adp_approval_expiry_months" model="ir.config_parameter">
|
|
<field name="key">fusion_claims.adp_approval_expiry_months</field>
|
|
<field name="value">12</field>
|
|
</record>
|
|
|
|
<!-- ODSP Settings -->
|
|
<record id="config_sa_mobility_email" model="ir.config_parameter">
|
|
<field name="key">fusion_claims.sa_mobility_email</field>
|
|
<field name="value">samobility@ontario.ca</field>
|
|
</record>
|
|
<record id="config_sa_mobility_phone" model="ir.config_parameter">
|
|
<field name="key">fusion_claims.sa_mobility_phone</field>
|
|
<field name="value">1-888-222-5099</field>
|
|
</record>
|
|
|
|
</data>
|
|
</odoo>
|