diff options
| author | HafidBuroiroh <hafidburoiroh09@gmail.com> | 2025-09-25 11:22:26 +0700 |
|---|---|---|
| committer | HafidBuroiroh <hafidburoiroh09@gmail.com> | 2025-09-25 11:22:26 +0700 |
| commit | fabd151ff9a8b4c118062299653c77fd34ea89df (patch) | |
| tree | b268100b7f192a5b5854de3c5387ec6a316a3df9 | |
| parent | 2bfd932b541351452dda67039740ac1e72ca2326 (diff) | |
<hafid> add misc in refund
| -rw-r--r-- | indoteknik_custom/models/refund_sale_order.py | 33 |
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')) |
