diff options
| author | Mqdd <ahmadmiqdad27@gmail.com> | 2025-11-25 08:59:41 +0700 |
|---|---|---|
| committer | Mqdd <ahmadmiqdad27@gmail.com> | 2025-11-25 08:59:41 +0700 |
| commit | 1e10f5149dcd753018b919aa9fac5e54c81a533c (patch) | |
| tree | 4e561a147c6250b7d4eb41bb8bce500eee0014bd /indoteknik_custom/models/refund_sale_order.py | |
| parent | bb2be920076aabc49b4f9fdd896d14e096e633eb (diff) | |
| parent | 61aabd2a7be015a19d9a16d8e160f5a3c3c6efaf (diff) | |
Merge branch 'odoo-backup' of https://bitbucket.org/altafixco/indoteknik-addons into locator_mqddlocator_mqdd
merge
Diffstat (limited to 'indoteknik_custom/models/refund_sale_order.py')
| -rw-r--r-- | indoteknik_custom/models/refund_sale_order.py | 48 |
1 files changed, 21 insertions, 27 deletions
diff --git a/indoteknik_custom/models/refund_sale_order.py b/indoteknik_custom/models/refund_sale_order.py index cbc0b717..38ab69fa 100644 --- a/indoteknik_custom/models/refund_sale_order.py +++ b/indoteknik_custom/models/refund_sale_order.py @@ -331,6 +331,7 @@ class RefundSaleOrder(models.Model): so_names = self.env['sale.order'].browse(so_ids).mapped('name') domain = [ ('journal_id', '=', 11), + ('sale_id', '=', False), ('state', '=', 'posted'), ('ref', 'ilike', 'uang muka penjualan'), ('ref', 'not ilike', 'reklas'), @@ -351,30 +352,23 @@ class RefundSaleOrder(models.Model): has_settlement = any(so.payment_status == 'settlement' for so in ssos) sisa_uang_masuk = 0.0 - amounts = [] - if has_moves and has_settlement: - amounts.append(sum(moves.mapped('amount_total_signed'))) - amounts.append(sum(ssos.mapped('gross_amount'))) - else: - if has_moves: - amounts.append(sum(moves.mapped('amount_total_signed'))) - if has_settlement: - amounts.append(sum(ssos.mapped('gross_amount'))) + has_journal = has_moves or has_moves2 or has_moves3 or has_piutangbca or has_piutangmdr or has_misc - # sisanya bisa dijumlahkan tanpa konflik + if has_moves: + sisa_uang_masuk += sum(moves.mapped('amount_total_signed')) if has_moves2: - amounts.append(sum(moves2.mapped('amount_total_signed'))) + sisa_uang_masuk += sum(moves2.mapped('amount_total_signed')) if has_moves3: - amounts.append(sum(moves3.mapped('amount_total_signed'))) + sisa_uang_masuk += sum(moves3.mapped('amount_total_signed')) if has_piutangbca: - amounts.append(sum(piutangbca.mapped('amount_total_signed'))) + sisa_uang_masuk += sum(piutangbca.mapped('amount_total_signed')) if has_piutangmdr: - amounts.append(sum(piutangmdr.mapped('amount_total_signed'))) + sisa_uang_masuk += sum(piutangmdr.mapped('amount_total_signed')) if has_misc: - amounts.append(sum(misc.mapped('amount_total_signed'))) - - sisa_uang_masuk = sum(amounts) + sisa_uang_masuk += sum(misc.mapped('amount_total_signed')) + if has_settlement and not has_journal: + sisa_uang_masuk += sum(ssos.mapped('gross_amount')) if not sisa_uang_masuk: raise UserError( @@ -696,6 +690,7 @@ class RefundSaleOrder(models.Model): domain = [ ('journal_id', '=', 11), + ('sale_id', '=', False), ('state', '=', 'posted'), ('ref', 'ilike', 'uang muka penjualan'), ('ref', 'not ilike', 'reklas'), @@ -717,24 +712,23 @@ class RefundSaleOrder(models.Model): sisa_uang_masuk = 0.0 - amounts = [] + has_journal = has_moves or has_moves2 or has_moves3 or has_piutangbca or has_piutangmdr or has_misc if has_moves: - amounts.append(sum(moves.mapped('amount_total_signed'))) + sisa_uang_masuk += sum(moves.mapped('amount_total_signed')) if has_moves2: - amounts.append(sum(moves2.mapped('amount_total_signed'))) + sisa_uang_masuk += sum(moves2.mapped('amount_total_signed')) if has_moves3: - amounts.append(sum(moves3.mapped('amount_total_signed'))) + sisa_uang_masuk += sum(moves3.mapped('amount_total_signed')) if has_piutangbca: - amounts.append(sum(piutangbca.mapped('amount_total_signed'))) + sisa_uang_masuk += sum(piutangbca.mapped('amount_total_signed')) if has_piutangmdr: - amounts.append(sum(piutangmdr.mapped('amount_total_signed'))) + sisa_uang_masuk += sum(piutangmdr.mapped('amount_total_signed')) if has_misc: - amounts.append(sum(misc.mapped('amount_total_signed'))) - if has_settlement: - amounts.append(sum(ssos.mapped('gross_amount'))) + sisa_uang_masuk += sum(misc.mapped('amount_total_signed')) - sisa_uang_masuk = sum(amounts) + if has_settlement and not has_journal: + sisa_uang_masuk += sum(ssos.mapped('gross_amount')) self.uang_masuk = sisa_uang_masuk - amount_refund_before |
