summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--indoteknik_custom/models/automatic_purchase.py11
-rw-r--r--indoteknik_custom/models/sale_order_line.py12
-rw-r--r--indoteknik_custom/views/automatic_purchase.xml3
3 files changed, 25 insertions, 1 deletions
diff --git a/indoteknik_custom/models/automatic_purchase.py b/indoteknik_custom/models/automatic_purchase.py
index af09abf0..e169af83 100644
--- a/indoteknik_custom/models/automatic_purchase.py
+++ b/indoteknik_custom/models/automatic_purchase.py
@@ -570,6 +570,17 @@ class AutomaticPurchaseSalesMatch(models.Model):
qty_po = fields.Float(string='Qty PO')
purchase_price = fields.Float(string='Purchase Price SO')
purchase_tax_id = fields.Many2one('account.tax', string='Tax', domain=['|', ('active', '=', False), ('active', '=', True)])
+ note_procurement = fields.Char(string='Note Detail', help="Harap diisi jika ada keterangan tambahan dari Procurement, agar dapat dimonitoring")
+
+ @api.constrains('note_procurement')
+ def note_procurement_to_so_line(self):
+ for rec in self:
+ so_line = self.env['sale.order.line'].search([
+ ('id', '=', rec.sale_line_id.id),
+ ], limit=1)
+
+ if so_line.note_procurement != rec.note_procurement:
+ so_line.note_procurement = rec.note_procurement
class SyncPurchasingJob(models.Model):
_name = 'sync.purchasing.job'
diff --git a/indoteknik_custom/models/sale_order_line.py b/indoteknik_custom/models/sale_order_line.py
index 8fb34328..11346fc9 100644
--- a/indoteknik_custom/models/sale_order_line.py
+++ b/indoteknik_custom/models/sale_order_line.py
@@ -31,6 +31,18 @@ class SaleOrderLine(models.Model):
qty_reserved = fields.Float(string='Qty Reserved', compute='_compute_qty_reserved')
reserved_from = fields.Char(string='Reserved From', copy=False)
+ @api.constrains('note_procurement')
+ def note_procurement_to_apo(self):
+ for line in self:
+ matches_so = self.env['automatic.purchase.sales.match'].search([
+ ('sale_line_id', '=', line.id),
+ ])
+
+ for match_so in matches_so:
+ match_so.note_procurement = line.note_procurement
+
+
+
@api.onchange('product_uom', 'product_uom_qty')
def product_uom_change(self):
if not self.product_uom or not self.product_id:
diff --git a/indoteknik_custom/views/automatic_purchase.xml b/indoteknik_custom/views/automatic_purchase.xml
index 974fbd17..cdaf6297 100644
--- a/indoteknik_custom/views/automatic_purchase.xml
+++ b/indoteknik_custom/views/automatic_purchase.xml
@@ -44,7 +44,7 @@
<field name="name">automatic.purchase.sales.match.tree</field>
<field name="model">automatic.purchase.sales.match</field>
<field name="arch" type="xml">
- <tree>
+ <tree editable="bottom">
<field name="sale_id" readonly="1"/>
<field name="sale_line_id" readonly="1" optional="hide"/>
<field name="picking_id" readonly="1" optional="hide"/>
@@ -57,6 +57,7 @@
<field name="product_id" readonly="1"/>
<field name="qty_so" readonly="1"/>
<field name="qty_po" readonly="1"/>
+ <field name="note_procurement"/>
</tree>
</field>
</record>