summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--indoteknik_custom/models/stock_picking.py16
1 files changed, 16 insertions, 0 deletions
diff --git a/indoteknik_custom/models/stock_picking.py b/indoteknik_custom/models/stock_picking.py
index dc30570e..84a374c5 100644
--- a/indoteknik_custom/models/stock_picking.py
+++ b/indoteknik_custom/models/stock_picking.py
@@ -65,6 +65,20 @@ class StockPicking(models.Model):
def ask_approval(self):
if self.env.user.is_accounting:
raise UserError("Bisa langsung Validate")
+
+ if self.is_internal_use:
+ stock_move_lines = self.env['stock.move.line'].search([
+ ('picking_id', '!=', False),
+ ('product_id', '=', 236805),
+ ('picking_id.partner_id', '=', self.partner_id.id),
+ ('qty_done', '>', 0),
+ ])
+ list_state = ['confirmed', 'done']
+ for stock_move_line in stock_move_lines:
+ if stock_move_line.picking_id.state not in list_state:
+ continue
+ raise UserError('Sudah pernah dikirim kalender')
+
for pick in self:
if not pick.is_internal_use:
raise UserError("Selain Internal Use bisa langsung Validate")
@@ -136,6 +150,8 @@ class StockPicking(models.Model):
if line.move_id.sale_line_id.qty_delivered + line.qty_done > line.move_id.sale_line_id.product_uom_qty:
raise UserError("Qty Delivered akan lebih dari Qty SO")
+ self.approval_status = 'approved'
+
res = super(StockPicking, self).button_validate()
return res