# 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.model import ModelView, Workflow from trytond.pool import Pool, PoolMeta import logging logger = logging.getLogger(__name__) class Move(metaclass=PoolMeta): __name__ = 'stock.move' @classmethod def check_over_shipment(cls, moves): pool = Pool() SaleLine = pool.get('sale.line') for move in moves: if isinstance(move.origin, SaleLine): move.origin.check_over_shipment() @classmethod @ModelView.button @Workflow.transition('done') def do(cls, moves): logger.info("SALE_TOLERANCE:%s",moves) super(Move, cls).do(moves) cls.check_over_shipment(moves) logger.info("SALE_TOLERANCE2:%s",moves) @classmethod @ModelView.button @Workflow.transition('assigned') def assign(cls, moves): super(Move, cls).assign(moves) cls.check_over_shipment(moves)