folder rename
This commit is contained in:
@@ -0,0 +1,99 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
# Copyright 2026 Nexa Systems Inc.
|
||||
# License OPL-1 (Odoo Proprietary License v1.0)
|
||||
# Part of the Fusion Plating product family.
|
||||
|
||||
from odoo import fields, models
|
||||
|
||||
|
||||
class FpCnscLicence(models.Model):
|
||||
"""CNSC Licence record.
|
||||
|
||||
The Canadian Nuclear Safety Commission (CNSC) regulates all nuclear
|
||||
activities in Canada. A plating / finishing supplier that works on
|
||||
nuclear items may hold — or be listed under — one or more CNSC
|
||||
licences:
|
||||
|
||||
* Class II nuclear facility licence (on-site sources,
|
||||
irradiators, handling of nuclear substances)
|
||||
* Transport licence for nuclear substances
|
||||
* Export licence for controlled nuclear items
|
||||
|
||||
This record tracks the licence number, issue and expiry dates, and
|
||||
any key conditions so the facility can manage renewals and
|
||||
compliance awareness.
|
||||
"""
|
||||
_name = 'fusion.plating.cnsc.licence'
|
||||
_description = 'Fusion Plating — CNSC Licence'
|
||||
_inherit = ['mail.thread', 'mail.activity.mixin']
|
||||
_order = 'expiry_date, name'
|
||||
|
||||
name = fields.Char(
|
||||
string='Title',
|
||||
required=True,
|
||||
tracking=True,
|
||||
)
|
||||
licence_number = fields.Char(
|
||||
string='Licence Number',
|
||||
required=True,
|
||||
tracking=True,
|
||||
)
|
||||
facility_id = fields.Many2one(
|
||||
'fusion.plating.facility',
|
||||
string='Facility',
|
||||
tracking=True,
|
||||
)
|
||||
company_id = fields.Many2one(
|
||||
'res.company',
|
||||
related='facility_id.company_id',
|
||||
store=True,
|
||||
readonly=True,
|
||||
)
|
||||
licence_type = fields.Selection(
|
||||
[
|
||||
('class_ii_nuclear_facility', 'Class II Nuclear Facility'),
|
||||
('transport', 'Transport of Nuclear Substances'),
|
||||
('export', 'Export of Controlled Nuclear Items'),
|
||||
('other', 'Other'),
|
||||
],
|
||||
string='Licence Type',
|
||||
default='class_ii_nuclear_facility',
|
||||
required=True,
|
||||
tracking=True,
|
||||
)
|
||||
issue_date = fields.Date(
|
||||
string='Issue Date',
|
||||
tracking=True,
|
||||
)
|
||||
expiry_date = fields.Date(
|
||||
string='Expiry Date',
|
||||
tracking=True,
|
||||
)
|
||||
conditions = fields.Html(
|
||||
string='Licence Conditions',
|
||||
)
|
||||
state = fields.Selection(
|
||||
[
|
||||
('active', 'Active'),
|
||||
('expiring', 'Expiring Soon'),
|
||||
('expired', 'Expired'),
|
||||
('revoked', 'Revoked'),
|
||||
],
|
||||
string='Status',
|
||||
default='active',
|
||||
required=True,
|
||||
tracking=True,
|
||||
)
|
||||
attachment_id = fields.Many2one(
|
||||
'ir.attachment',
|
||||
string='Licence Document',
|
||||
)
|
||||
active = fields.Boolean(default=True)
|
||||
|
||||
_sql_constraints = [
|
||||
(
|
||||
'fp_cnsc_licence_number_uniq',
|
||||
'unique(licence_number, company_id)',
|
||||
'CNSC licence number must be unique per company.',
|
||||
),
|
||||
]
|
||||
Reference in New Issue
Block a user