You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

59 lines
1.9 KiB

# Copyright 2019 Myceliandre - Nicolas JEUDY
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
from odoo import api, fields, models
class PersonalDataCategory(models.Model):
_name = "privacy.subject.category"
_description = "Subjects category"
name = fields.Char('Name', index=True, required=True, translate=True)
class PersonalDataLegal(models.Model):
_name = "privacy.legal"
_description = "Legal"
name = fields.Char('Name', index=True, required=True, translate=True)
class PrivacyActivity(models.Model):
_inherit = 'privacy.activity'
def _default_company(self):
return self.env['res.company']._company_default_get('privacy.activity')
@api.multi
def _compute_has_sensitive(self):
for record in self:
record.has_sensitive = 'sensitive' in record.personal_data_ids.mapped('type')
value = fields.Boolean(compute='_get_value')
personal_data_ids = fields.Many2many('privacy.personal.data')
subjects_categ_ids = fields.Many2many('privacy.subject.category')
has_sensitive = fields.Boolean(compute='_compute_has_sensitive')
legal_ids = fields.Many2many('privacy.legal')
controller_ids = fields.Many2many(
"res.partner",
"privacy_activity_res_partner_controler_ids",
string="Controllers",
)
define_objective = fields.Boolean(
"Define objective",
help="Add detailed objectif from a custom list.",
)
objective_ids = fields.Many2many('privacy.objective', string="Details")
company_id = fields.Many2one('res.company', 'Company', index=True, default=_default_company)
class PrivacyObjective(models.Model):
_name = "privacy.objective"
_description = "Objective database"
name = fields.Char('Name', index=True, required=True, translate=True)
description = fields.Html('Description')
active = fields.Boolean(
default=True,
index=True,
)