diff --git a/models/__pycache__/pos_session.cpython-310.pyc b/models/__pycache__/pos_session.cpython-310.pyc index 60bea1e..36f8a79 100644 Binary files a/models/__pycache__/pos_session.cpython-310.pyc and b/models/__pycache__/pos_session.cpython-310.pyc differ diff --git a/models/pos_session.py b/models/pos_session.py index 9585408..4f0ff3f 100644 --- a/models/pos_session.py +++ b/models/pos_session.py @@ -75,11 +75,16 @@ class PosSession(models.Model): def _post_statement_difference(self, amount, is_opening): for session in self: session_amount = amount - opening_float = session._get_opening_float_amount() if session.config_id.cash_control else 0.0 - if not is_opening and opening_float: - if session.currency_id.compare_amounts(session.cash_register_balance_end_real, opening_float) <= 0: - session_amount += opening_float - if session.currency_id.is_zero(session_amount): + if not is_opening and session.config_id.cash_control: + opening_float = session._get_opening_float_amount() + if opening_float: + if session.currency_id.is_zero(session_amount + opening_float): + continue + if session.currency_id.compare_amounts(session.cash_register_balance_end_real or 0.0, opening_float) <= 0: + session_amount += opening_float + if session.currency_id.is_zero(session_amount): + continue + elif session.currency_id.is_zero(session_amount): continue super(PosSession, session)._post_statement_difference(session_amount, is_opening)