mirror of
https://github.com/bringout/oca-purchase.git
synced 2026-04-21 22:02:04 +02:00
🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
33 lines
1.1 KiB
Python
33 lines
1.1 KiB
Python
# Copyright 2024 Onestein
|
|
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
|
|
from odoo import api, fields, models
|
|
|
|
from odoo.addons.purchase.models.purchase import PurchaseOrder as Purchase
|
|
|
|
|
|
class PurchaseOrder(models.Model):
|
|
_inherit = "purchase.order"
|
|
|
|
require_signature = fields.Boolean(
|
|
string="Online Signature",
|
|
compute="_compute_require_signature",
|
|
store=True,
|
|
readonly=False,
|
|
precompute=True,
|
|
states=Purchase.READONLY_STATES,
|
|
help="Request a online signature and/or payment to the customer in "
|
|
"order to confirm orders automatically.",
|
|
)
|
|
signature = fields.Image(
|
|
copy=False, attachment=True, max_width=1024, max_height=1024
|
|
)
|
|
signed_by = fields.Char(copy=False)
|
|
signed_on = fields.Datetime(copy=False)
|
|
|
|
@api.depends("company_id")
|
|
def _compute_require_signature(self):
|
|
for order in self:
|
|
order.require_signature = order.company_id.purchase_portal_confirmation_sign
|
|
|
|
def _has_to_be_signed(self):
|
|
return self.state == "sent" and self.require_signature and not self.signature
|