[ADD] class-interface for document-based models
This commit is contained in:
parent
822b095cdf
commit
096a4d7b80
@ -4,10 +4,10 @@ from odoo import _, api, fields, models
|
|||||||
from odoo.tools.misc import DEFAULT_SERVER_DATE_FORMAT, DEFAULT_SERVER_DATETIME_FORMAT
|
from odoo.tools.misc import DEFAULT_SERVER_DATE_FORMAT, DEFAULT_SERVER_DATETIME_FORMAT
|
||||||
|
|
||||||
from ..utils import MODULE_NAME
|
from ..utils import MODULE_NAME
|
||||||
from ..utils.misc import Extension
|
from ..utils.misc import Extension, IDocument
|
||||||
|
|
||||||
|
|
||||||
class PartnerContract(models.Model, Extension):
|
class PartnerContract(models.Model, IDocument, Extension):
|
||||||
_name = "res.partner.contract"
|
_name = "res.partner.contract"
|
||||||
_description = "Contract"
|
_description = "Contract"
|
||||||
_inherit = ["mail.thread", "mail.activity.mixin", "mail.followers"]
|
_inherit = ["mail.thread", "mail.activity.mixin", "mail.followers"]
|
||||||
|
@ -3,10 +3,10 @@ import math
|
|||||||
from odoo import _, api, fields, models
|
from odoo import _, api, fields, models
|
||||||
|
|
||||||
from ..utils import MODULE_NAME
|
from ..utils import MODULE_NAME
|
||||||
from ..utils.misc import Extension
|
from ..utils.misc import Extension, IDocument
|
||||||
|
|
||||||
|
|
||||||
class ContractOrderAnnex(models.Model, Extension):
|
class ContractOrderAnnex(models.Model, IDocument, Extension):
|
||||||
_name = "res.partner.contract.annex"
|
_name = "res.partner.contract.annex"
|
||||||
_description = "Contract Annex"
|
_description = "Contract Annex"
|
||||||
|
|
||||||
|
@ -1,8 +1,20 @@
|
|||||||
|
import inspect
|
||||||
import datetime as dt
|
import datetime as dt
|
||||||
|
|
||||||
|
from odoo import fields
|
||||||
from odoo.tools.misc import DEFAULT_SERVER_DATE_FORMAT, DEFAULT_SERVER_DATETIME_FORMAT
|
from odoo.tools.misc import DEFAULT_SERVER_DATE_FORMAT, DEFAULT_SERVER_DATETIME_FORMAT
|
||||||
|
|
||||||
|
|
||||||
|
class IDocument(object):
|
||||||
|
"""Class must be used as an interface for create new document based model"""
|
||||||
|
|
||||||
|
def get_name_by_document_template(self, document_template_id: fields.Many2one):
|
||||||
|
raise NotImplementedError('Method {} is not implemented'.format(inspect.currentframe().f_code.co_name))
|
||||||
|
|
||||||
|
def get_filename_by_document_template(self, document_template_id: fields.Many2one):
|
||||||
|
raise NotImplementedError('Method {} is not implemented'.format(inspect.currentframe().f_code.co_name))
|
||||||
|
|
||||||
|
|
||||||
class Extension(object):
|
class Extension(object):
|
||||||
|
|
||||||
def parse_odoo_date(self, date: str):
|
def parse_odoo_date(self, date: str):
|
||||||
|
Loading…
x
Reference in New Issue
Block a user