# This file is part of Tryton.  The COPYRIGHT file at the top level of
# this repository contains the full copyright notices and license terms.

from trytond.i18n import gettext
from trytond.model import fields
from trytond.modules.document_incoming.exceptions import (
    DocumentIncomingProcessError)
from trytond.pool import Pool, PoolMeta


class IncomingConfiguration(metaclass=PoolMeta):
    __name__ = 'document.incoming.configuration'

    default_controller = fields.Many2One('party.party', "Default Controller")


class Incoming(metaclass=PoolMeta):
    __name__ = 'document.incoming'

    @classmethod
    def __setup__(cls):
        super().__setup__()
        cls.type.selection.append(
            ('weight_report', "Weight Report"))

    @classmethod
    def _get_results(cls):
        return super()._get_results() | {'automation.document'}

    def _process_weight_report(self):
        pool = Pool()
        WR = pool.get('automation.document')
        # Configuration = pool.get('document.incoming.configuration')
        # config = Configuration(1)
        wr = WR()
        wr.document = self.id
        wr.type = 'weight_report'
        wr.state = 'draft'
        WR.save([wr])
        WR.run_ocr([wr])
        WR.run_metadata([wr])
        return wr

    # @property
    # def supplier_invoice_company(self):
    #     pass

    # @property
    # def supplier_invoice_party(self):
    #     pass
