From 89f8718fe1a4ec7168e5f6c389ee5e844c1e4177 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=83=A1=E5=B0=A7?= Date: Fri, 23 May 2025 14:20:38 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BD=93=E8=AF=A2=E4=BB=B7=E5=8D=95=E7=A1=AE?= =?UTF-8?q?=E8=AE=A4=E4=B8=BA=E9=87=87=E8=B4=AD=E5=8D=95=E6=97=B6=EF=BC=8C?= =?UTF-8?q?=E6=A0=B9=E6=8D=AE=E9=87=87=E8=B4=AD=E7=94=B3=E8=AF=B7=E6=98=8E?= =?UTF-8?q?=E7=BB=86=E8=A1=8C=E5=8F=98=E4=B8=BA=E9=87=87=E8=B4=AD=E5=8D=95?= =?UTF-8?q?=E6=95=B0=E9=87=8F=E6=9D=A5=E5=AE=8C=E6=88=90=E9=87=87=E8=B4=AD?= =?UTF-8?q?=E7=94=B3=E8=AF=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../models/purchase_order.py | 16 +++++++++++++++ .../views/purchase_request_view.xml | 20 +++++++++++++++++++ 2 files changed, 36 insertions(+) diff --git a/jikimo_purchase_request/models/purchase_order.py b/jikimo_purchase_request/models/purchase_order.py index 59a7959c..95f81e9f 100644 --- a/jikimo_purchase_request/models/purchase_order.py +++ b/jikimo_purchase_request/models/purchase_order.py @@ -1,4 +1,5 @@ from odoo import api, fields, models, _ +from odoo.tools import float_compare class PurchaseOrder(models.Model): @@ -38,3 +39,18 @@ class PurchaseOrder(models.Model): move_ids.write({'state': 'waiting', 'is_done': False}) return res + def write(self, vals): + res = super(PurchaseOrder, self).write(vals) + if 'state' in vals and vals['state'] == 'purchase': + purchase_request = self.order_line.purchase_request_lines.request_id + if purchase_request: + finished = True + # 判断该采购申请所有明细行是否都完成 + for purchase_request_line in purchase_request.line_ids: + finished_qty = sum(purchase_request_line.purchase_lines.filtered(lambda line: line.state == 'purchase').mapped('product_qty')) + if float_compare(finished_qty ,purchase_request_line.product_qty, precision_rounding=purchase_request_line.product_id.uom_id.rounding) < 0: + finished = False + break + if finished: + purchase_request.button_done() + return res diff --git a/jikimo_purchase_request/views/purchase_request_view.xml b/jikimo_purchase_request/views/purchase_request_view.xml index 9976b52a..d8357fac 100644 --- a/jikimo_purchase_request/views/purchase_request_view.xml +++ b/jikimo_purchase_request/views/purchase_request_view.xml @@ -15,6 +15,26 @@ + + + + + 1 + + + oe_highlight + + + + + + purchase.request.sf.tree + purchase.request + + + + hide +