from odoo import api, fields, models class FlHearing(models.Model): """ Phase 2 — Full implementation. Phase 1: Stub with fields needed by fl_case computed fields. """ _name = 'fl.hearing' _description = 'Case Hearing' _inherit = ['mail.thread'] _order = 'hearing_date asc' case_id = fields.Many2one( 'fl.case', required=True, ondelete='cascade', index=True ) name = fields.Char(string='Hearing Description', required=True) hearing_date = fields.Datetime( string='Hearing Date / Time', tracking=True ) location = fields.Char( string='Location', default='Lawson E. Thomas Courthouse Center, 175 NW 1st Ave, Miami, FL 33128' ) courtroom = fields.Char(string='Courtroom') judge_id = fields.Many2one( 'res.partner', string='Judge', related='case_id.judge_id', store=True ) hearing_type = fields.Selection([ ('status_conference', 'Status Conference'), ('motion', 'Motion Hearing'), ('temporary_relief', 'Temporary Relief Hearing'), ('mediation', 'Mediation'), ('final', 'Final Hearing'), ('contempt', 'Contempt Hearing'), ('other', 'Other'), ], string='Hearing Type', default='final') state = fields.Selection([ ('scheduled', 'Scheduled'), ('completed', 'Completed'), ('cancelled', 'Cancelled'), ('continued', 'Continued'), ], string='Status', default='scheduled', tracking=True) notes = fields.Text(string='Notes') outcome = fields.Text(string='Outcome / Result') order_entered = fields.Boolean(string='Order Entered')