29 lines
1.2 KiB
Python

# pyrefly: ignore [missing-import]
from odoo import api, fields, models
class EducationTransportRoute(models.Model):
_name = 'education.transport.route'
_description = 'Transport Route'
_inherit = ['mail.thread', 'mail.activity.mixin']
name = fields.Char(string='Route Name', required=True, tracking=True)
code = fields.Char(string='Code', required=True, tracking=True)
campus_id = fields.Many2one('education.campus', string='Campus', required=True)
direction = fields.Selection([
('pickup', 'Pickup'),
('drop', 'Drop'),
('both', 'Both')
], string='Direction', required=True, default='both', tracking=True)
distance = fields.Float(string='Distance (km)', tracking=True)
estimated_duration = fields.Integer(string='Estimated Duration (min)', tracking=True)
stop_ids = fields.One2many('education.transport.route.stop', 'route_id', string='Stops')
active = fields.Boolean(default=True)
company_id = fields.Many2one('res.company', string='Company', required=True, default=lambda self: self.env.company)
_sql_constraints = [
('unique_code', 'unique(code, company_id)', 'Route code must be unique per company!')
]