summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAzka Nathan <darizkyfaz@gmail.com>2025-04-22 10:10:58 +0700
committerAzka Nathan <darizkyfaz@gmail.com>2025-04-22 10:10:58 +0700
commit19e32a22d394e0597278ee7e1c1373d7cb799ff5 (patch)
tree040e6631b3b808538952c15524b062e0f55e4253
parentb1f520b1b3b100deea99980b5781744411fe6936 (diff)
push
-rw-r--r--indoteknik_custom/models/stock_picking.py57
1 files changed, 29 insertions, 28 deletions
diff --git a/indoteknik_custom/models/stock_picking.py b/indoteknik_custom/models/stock_picking.py
index a860dd5d..95e0d59f 100644
--- a/indoteknik_custom/models/stock_picking.py
+++ b/indoteknik_custom/models/stock_picking.py
@@ -270,35 +270,36 @@ class StockPicking(models.Model):
for rec in self:
rec.calculate_line_no()
- invoice = self.env['account.move'].search([('sale_id', '=', rec.sale_id.id), ('move_type', '=', 'out_invoice'), ('state', '=', 'posted')], limit=1, order='create_date desc')
-
- if invoice and not self.env.context.get('active_model') == 'stock.picking':
- rec._check_date_doc_kirim_modification()
- if rec.date_doc_kirim != invoice.invoice_date:
- get_approval_invoice_date = self.env['approval.invoice.date'].search([('picking_id', '=', rec.id),('state', '=', 'draft')], limit=1)
-
- if get_approval_invoice_date and get_approval_invoice_date.state == 'draft':
- get_approval_invoice_date.date_doc_do = rec.date_doc_kirim
- else:
- approval_invoice_date = self.env['approval.invoice.date'].create({
- 'picking_id': rec.id,
- 'date_invoice': invoice.invoice_date,
- 'date_doc_do': rec.date_doc_kirim,
- 'sale_id': rec.sale_id.id,
- 'move_id': invoice.id,
- 'partner_id': rec.partner_id.id
- })
-
- rec.approval_invoice_date_id = approval_invoice_date.id
-
- if approval_invoice_date:
- return {
- 'type': 'ir.actions.client',
- 'tag': 'display_notification',
- 'params': { 'title': 'Notification', 'message': 'Invoice Date Tidak Sesuai, Document Approval Invoice Date Terbuat', 'next': {'type': 'ir.actions.act_window_close'} },
- }
+ if rec.picking_type_code == 'outgoing' and 'BU/OUT/' in rec.name:
+ invoice = self.env['account.move'].search([('sale_id', '=', rec.sale_id.id), ('move_type', '=', 'out_invoice'), ('state', '=', 'posted')], limit=1, order='create_date desc')
+
+ if invoice and not self.env.context.get('active_model') == 'stock.picking':
+ rec._check_date_doc_kirim_modification()
+ if rec.date_doc_kirim != invoice.invoice_date:
+ get_approval_invoice_date = self.env['approval.invoice.date'].search([('picking_id', '=', rec.id),('state', '=', 'draft')], limit=1)
+
+ if get_approval_invoice_date and get_approval_invoice_date.state == 'draft':
+ get_approval_invoice_date.date_doc_do = rec.date_doc_kirim
+ else:
+ approval_invoice_date = self.env['approval.invoice.date'].create({
+ 'picking_id': rec.id,
+ 'date_invoice': invoice.invoice_date,
+ 'date_doc_do': rec.date_doc_kirim,
+ 'sale_id': rec.sale_id.id,
+ 'move_id': invoice.id,
+ 'partner_id': rec.partner_id.id
+ })
+
+ rec.approval_invoice_date_id = approval_invoice_date.id
+
+ if approval_invoice_date:
+ return {
+ 'type': 'ir.actions.client',
+ 'tag': 'display_notification',
+ 'params': { 'title': 'Notification', 'message': 'Invoice Date Tidak Sesuai, Document Approval Invoice Date Terbuat', 'next': {'type': 'ir.actions.act_window_close'} },
+ }
- rec.last_update_date_doc_kirim = fields.Datetime.now()
+ rec.last_update_date_doc_kirim = fields.Datetime.now()
@api.constrains('scan_koli_lines')