This module fixes a bug in ``account_invoice_triple_discount`` when combined with ``purchase_triple_discount``.

**Problem Solved:**

In purchase orders, when configuring discounts in the ``discount2`` or ``discount3`` columns:

* Upon saving, all discounts were accumulated in the ``discount1`` column
* The ``discount2`` and ``discount3`` fields were reset to zero
* This occurred because the original mixin's ``write`` method always reset these fields

**Solution:**

The module overrides the ``write`` method of ``triple.discount.mixin`` to:

#. Detect if ``discount1``, ``discount2`` or ``discount3`` are being explicitly modified
#. If there are explicit discounts, ignore the computed ``discount`` field
#. If only the ``discount`` field comes, maintain legacy behavior
#. Make the total ``discount`` field readonly in relevant views

**Additional Features:**

* Makes the ``discount`` field (total discount) **readonly** in:

  * Partner form view (``res.partner``)
  * Supplier info in product form (``product.supplierinfo``)
  * Purchase order lines (``purchase.order.line``)
  * Account move lines (``account.move.line``)
  * Base mixin (``triple.discount.mixin``)

* Forces users to work only with the ``discount1``, ``discount2`` and ``discount3`` columns
* Avoids confusion between computed total and individual discounts
