summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoryhu-odoo <yhu@odoo.com>2020-06-17 12:29:13 +0000
committeryhu-odoo <yhu@odoo.com>2020-06-29 13:27:24 +0000
commit0f80e69b8d260c0ed4bbbbad2d0c1e88ab054bf5 (patch)
tree8e996c42e0f1b578a497d8aed9c611637d89b44f
parent78a860fe862687c409e8b0ad0544cb9c5923be7d (diff)
[IMP] purchase(_stock): track qty_received in chatter
Track the change of qty_received of POL in the chatter of PO. Task 2265912 PR #52809 Signed-off-by: Simon Lejeune (sle) <sle@openerp.com>
-rw-r--r--addons/purchase/models/purchase.py6
-rw-r--r--addons/purchase/views/purchase_template.xml10
-rw-r--r--addons/purchase_stock/models/purchase.py2
3 files changed, 17 insertions, 1 deletions
diff --git a/addons/purchase/models/purchase.py b/addons/purchase/models/purchase.py
index 805f4612dd6..d771ff2ce52 100644
--- a/addons/purchase/models/purchase.py
+++ b/addons/purchase/models/purchase.py
@@ -920,6 +920,12 @@ class PurchaseOrderLine(models.Model):
line.order_id.message_post_with_view('purchase.track_po_line_template',
values={'line': line, 'product_qty': values['product_qty']},
subtype_id=self.env.ref('mail.mt_note').id)
+ if 'qty_received' in values:
+ for line in self:
+ if values['qty_received'] != line.qty_received and line.order_id.state == 'purchase':
+ line.order_id.message_post_with_view('purchase.track_po_line_qty_received_template',
+ values={'line': line, 'qty_received': values['qty_received']},
+ subtype_id=self.env.ref('mail.mt_note').id)
return super(PurchaseOrderLine, self).write(values)
def unlink(self):
diff --git a/addons/purchase/views/purchase_template.xml b/addons/purchase/views/purchase_template.xml
index d844cb9ec77..7aaaf19d823 100644
--- a/addons/purchase/views/purchase_template.xml
+++ b/addons/purchase/views/purchase_template.xml
@@ -15,4 +15,14 @@
</div>
</template>
+ <template id="track_po_line_qty_received_template">
+ <div>
+ <strong>The received quantity has been updated.</strong>
+ <ul>
+ <li><t t-esc="line.product_id.display_name"/>:</li>
+ Received Quantity: <t t-esc="line.qty_received" /> -&gt; <t t-esc="float(qty_received)"/><br/>
+ </ul>
+ </div>
+ </template>
+
</odoo>
diff --git a/addons/purchase_stock/models/purchase.py b/addons/purchase_stock/models/purchase.py
index 66c7c136697..aad035d5b55 100644
--- a/addons/purchase_stock/models/purchase.py
+++ b/addons/purchase_stock/models/purchase.py
@@ -333,7 +333,7 @@ class PurchaseOrderLine(models.Model):
total -= move.product_uom._compute_quantity(move.product_uom_qty, line.product_uom)
else:
total += move.product_uom._compute_quantity(move.product_uom_qty, line.product_uom)
- line.qty_received = total
+ line.write({'qty_received': total})
@api.model_create_multi
def create(self, vals_list):