# Copyright (C) 2018 - TODAY, Pavlov Media # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). from odoo import fields, models, api class AgreementServiceProfile(models.Model): _name = 'agreement.serviceprofile' _description = 'Agreement Service Profiles' def _default_stage_id(self): return self.env.ref('agreement_serviceprofile.servpro_stage_draft') name = fields.Char(string="Name", required=True) stage_id = fields.Many2one('agreement.stage', string="Stage", default=_default_stage_id, copy=False, group_expand='_read_group_stage_ids',) agreement_id = fields.Many2one('agreement', string="Agreement", ondelete="cascade") active = fields.Boolean(string="Active", default=True, help="If unchecked, it will allow you " + "to hide this service profile" " without removing it.") notes = fields.Text(string="Notes") product_id = fields.Many2one('product.template', 'Service Product', domain="[('is_serviceprofile', '=', True), " "('type', '=', 'service')]", required=True) partner_id = fields.Many2one(related='agreement_id.partner_id', string='Partner') # Used for Kanban grouped_by view @api.model def _read_group_stage_ids(self, stages, domain, order): stage_ids = self.env["agreement.stage"].search( [('stage_type', '=', 'serviceprofile')]) return stage_ids