summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHafidBuroiroh <hafidburoiroh09@gmail.com>2025-09-25 11:22:26 +0700
committerHafidBuroiroh <hafidburoiroh09@gmail.com>2025-09-25 11:22:26 +0700
commitfabd151ff9a8b4c118062299653c77fd34ea89df (patch)
treeb268100b7f192a5b5854de3c5387ec6a316a3df9
parent2bfd932b541351452dda67039740ac1e72ca2326 (diff)
<hafid> add misc in refund
-rw-r--r--indoteknik_custom/models/refund_sale_order.py33
1 files changed, 32 insertions, 1 deletions
diff --git a/indoteknik_custom/models/refund_sale_order.py b/indoteknik_custom/models/refund_sale_order.py
index 96082447..f4711faf 100644
--- a/indoteknik_custom/models/refund_sale_order.py
+++ b/indoteknik_custom/models/refund_sale_order.py
@@ -303,22 +303,35 @@ class RefundSaleOrder(models.Model):
('journal_id', '=', 7),
('state', '=', 'posted'),
])
+
+ misc = self.env['account.move'].search([
+ ('ref', 'ilike', invoices.mapped('name')[0]),
+ ('journal_id', '=', 13),
+ ('state', '=', 'posted'),
+ ])
has_moves = bool(moves)
has_piutangmdr = bool(piutangmdr)
has_piutangbca = bool(piutangbca)
+ has_misc = bool(misc)
ssos = self.env['sale.order'].browse(so_ids)
has_settlement = any(so.payment_status == 'settlement' for so in ssos)
sisa_uang_masuk = 0.0
if has_moves and has_settlement:
sisa_uang_masuk = sum(moves.mapped('amount_total_signed')) + sum(ssos.mapped('gross_amount'))
+ elif has_moves and has_misc:
+ sisa_uang_masuk = sum(moves.mapped('amount_total_signed')) + sum(misc.mapped('amount_total_signed'))
elif has_moves:
sisa_uang_masuk = sum(moves.mapped('amount_total_signed'))
elif has_settlement:
sisa_uang_masuk = sum(ssos.mapped('gross_amount'))
+ elif has_piutangbca and has_misc:
+ sisa_uang_masuk = sum(piutangbca.mapped('amount_total_signed')) + sum(misc.mapped('amount_total_signed'))
elif has_piutangbca:
sisa_uang_masuk = sum(piutangbca.mapped('amount_total_signed'))
+ elif has_piutangmdr and has_misc:
+ sisa_uang_masuk = sum(piutangmdr.mapped('amount_total_signed')) + sum(misc.mapped('amount_total_signed'))
elif has_piutangmdr:
sisa_uang_masuk = sum(piutangmdr.mapped('amount_total_signed'))
else:
@@ -528,8 +541,14 @@ class RefundSaleOrder(models.Model):
('journal_id', '=', 7),
('state', '=', 'posted'),
])
+
+ misc = self.env['account.move'].search([
+ ('ref', 'ilike', invoice_ids.mapped('name')[0]),
+ ('journal_id', '=', 13),
+ ('state', '=', 'posted'),
+ ])
- all_moves = moves | piutangbca | piutangmdr
+ all_moves = moves | piutangbca | piutangmdr | misc
for move in all_moves:
url = f"/web#id={move.id}&model=account.move&view_type=form"
@@ -581,21 +600,33 @@ class RefundSaleOrder(models.Model):
('journal_id', '=', 7),
('state', '=', 'posted'),
])
+ misc = self.env['account.move'].search([
+ ('ref', 'ilike', all_invoices.mapped('name')[0]),
+ ('journal_id', '=', 13),
+ ('state', '=', 'posted'),
+ ])
has_moves = bool(moves)
has_piutangmdr = bool(piutangmdr)
has_piutangbca = bool(piutangbca)
+ has_misc = bool(misc)
ssos = self.env['sale.order'].browse(so_ids)
has_settlement = any(so.payment_status == 'settlement' for so in ssos)
sisa_uang_masuk = 0.0
if has_moves and has_settlement:
sisa_uang_masuk = sum(moves.mapped('amount_total_signed')) + sum(ssos.mapped('gross_amount'))
+ if has_moves and has_misc:
+ sisa_uang_masuk = sum(moves.mapped('amount_total_signed')) + sum(misc.mapped('amount_total_signed'))
elif has_moves:
sisa_uang_masuk = sum(moves.mapped('amount_total_signed'))
elif has_settlement:
sisa_uang_masuk = sum(ssos.mapped('gross_amount'))
+ elif has_piutangbca and has_misc:
+ sisa_uang_masuk = sum(piutangbca.mapped('amount_total_signed')) + sum(misc.mapped('amount_total_signed'))
elif has_piutangbca:
sisa_uang_masuk = sum(piutangbca.mapped('amount_total_signed'))
+ elif has_piutangmdr and has_misc:
+ sisa_uang_masuk = sum(piutangmdr.mapped('amount_total_signed')) + sum(misc.mapped('amount_total_signed'))
elif has_piutangmdr:
sisa_uang_masuk = sum(piutangmdr.mapped('amount_total_signed'))