summaryrefslogtreecommitdiff
path: root/indoteknik_custom/models/sourcing_job_order.py
diff options
context:
space:
mode:
authorHafidBuroiroh <hafidburoiroh09@gmail.com>2026-03-11 20:08:23 +0700
committerHafidBuroiroh <hafidburoiroh09@gmail.com>2026-03-11 20:08:23 +0700
commit4a200ee4e0caf44e78273215b12c3655655f4273 (patch)
tree8b3ace9f421088fc6e32bc38dafd4877792ee275 /indoteknik_custom/models/sourcing_job_order.py
parentf58fe20f96995228651a5a1a09c8c17a23e13838 (diff)
<hafid> naekin sorcing job
Diffstat (limited to 'indoteknik_custom/models/sourcing_job_order.py')
-rw-r--r--indoteknik_custom/models/sourcing_job_order.py31
1 files changed, 4 insertions, 27 deletions
diff --git a/indoteknik_custom/models/sourcing_job_order.py b/indoteknik_custom/models/sourcing_job_order.py
index 0e5334a8..ce0bc4ec 100644
--- a/indoteknik_custom/models/sourcing_job_order.py
+++ b/indoteknik_custom/models/sourcing_job_order.py
@@ -269,7 +269,7 @@ class SourcingJobOrderLine(models.Model):
product_id = fields.Many2one('product.product', string='Product', ondelete='cascade')
md_person_ids = fields.Many2one('res.users', string='MD Person', ondelete='cascade')
brand_id = fields.Many2one('x_manufactures', string='Manufactures', ondelete='cascade')
- so_id = fields.Many2one('sale.order', string='SO Number', tracking=True, readonly=True)
+ so_id = fields.Many2one('sale.order', string='SO Number', tracking=True)
product_name_md = fields.Char(string='Nama Barang')
descriptions_md = fields.Text(string='Deskripsi Barang')
@@ -325,11 +325,11 @@ class SourcingJobOrderLine(models.Model):
so_state = fields.Selection(
[
- ('draft', 'Draft'),
+ ('draft', 'Quotation'),
('cancel', 'Cancel'),
- ('sale', 'Sale')
+ ('sale', 'Sale Order')
],
- string="SO State",
+ string="Status SO",
compute="_compute_so_data"
)
@@ -408,7 +408,6 @@ class SourcingJobOrderLine(models.Model):
vals['show_salesperson'] = order.so_id.user_id.id
rec = super().create(vals)
- rec._check_line_limit()
return rec
def write(self, vals):
@@ -423,30 +422,8 @@ class SourcingJobOrderLine(models.Model):
res = super().write(vals)
if 'state' in vals:
self._update_parent_state()
- self._check_line_limit()
return res
- def _check_line_limit(self):
- for rec in self:
- if not rec.order_id or not rec.order_id.so_id:
- continue
-
- so = rec.order_id.so_id
-
- so_line_count = len(so.order_line)
-
- sourcing_lines = self.search([
- ('order_id', '=', rec.order_id.id),
- ('state', '!=', 'cancel')
- ])
-
- if len(sourcing_lines) > so_line_count:
- raise UserError(
- f"Jumlah Sourcing Line tidak boleh melebihi Sales Order Line.\n\n"
- f"Sales Order Line : {so_line_count}\n"
- f"Sourcing Line : {len(sourcing_lines)}"
- )
-
def _update_parent_state(self):
for rec in self:
order = rec.order_id