summaryrefslogtreecommitdiff
path: root/base_accounting_kit
diff options
context:
space:
mode:
authorstephanchrst <stephanchrst@gmail.com>2022-10-19 14:31:51 +0700
committerstephanchrst <stephanchrst@gmail.com>2022-10-19 14:31:51 +0700
commit9dee43d8a7cdcfa362e67adc2119eb4cbeb10ba6 (patch)
treebd468e63a263e9b9e6eb33e87aba4e42be0307cc /base_accounting_kit
parent82c4f007778ae4f7d7bdd45287d4b87f8f37cc9c (diff)
Update credit_limit.py
Diffstat (limited to 'base_accounting_kit')
-rwxr-xr-xbase_accounting_kit/models/credit_limit.py56
1 files changed, 39 insertions, 17 deletions
diff --git a/base_accounting_kit/models/credit_limit.py b/base_accounting_kit/models/credit_limit.py
index 63bba0c..ceef4d7 100755
--- a/base_accounting_kit/models/credit_limit.py
+++ b/base_accounting_kit/models/credit_limit.py
@@ -81,36 +81,58 @@ class SaleOrder(models.Model):
outstanding_amount = 0
# this is only outstanding per user, must add outstanding parent
+ partners = []
+ parent_id = 0
if rec.partner_id.parent_id:
- partners = self.env['res.partner'].search([
- ('active', '=', True),
- ('parent_id', '=', rec.partner_id.parent_id.id)
- ])
+ # partners = self.env['res.partner'].search([
+ # '&',
+ # ('active', '=', True),
+ # ('type', '=', 'contact'),
+ # '|',
+ # ('parent_id', '=', rec.partner_id.parent_id.id),
+ # ('id', '=', rec.partner_id.id),
+ # ])
+ parent_id = rec.partner_id.parent_id
else:
- partners = rec.partner_id
+ parent_id = rec.partner_id
+ partners += parent_id.child_ids
+ partners.append(parent_id)
+
for partner in partners:
- all_order_ids = self.env['sale.order'].search([
- ('state', 'in', ['sale', 'done']),
- ('partner_id', '=', partner.id),
- ('id', '!=', rec.id)
- ])
+ if partner.type != 'contact':
+ continue
+ print(partner.name)
+ # all_order_ids = self.env['sale.order'].search([
+ # ('state', 'in', ['sale', 'done']),
+ # ('partner_id', '=', partner.id),
+ # ('id', '!=', rec.id)
+ # ])
paid_invoice_ids = self.env['account.move'].search([
- ('payment_state', '=', 'paid'),
+ # ('payment_state', '=', 'paid'),
('partner_id', '=', partner.id),
- ('move_type', '=', 'out_invoice')
+ ('move_type', '=', 'out_invoice'),
+ ('amount_residual_signed', '>', 0),
+ ('state', '=', 'posted')
])
+ # amount_residual_signed
- if all_order_ids:
- for order in all_order_ids:
- all_order_amount += order.amount_total
+ # if all_order_ids:
+ # # print("-----check here-----")
+ # for order in all_order_ids:
+ # # print(order.name)
+ # # print(order.amount_total)
+ # all_order_amount += order.amount_total
if paid_invoice_ids:
+ print("-----check invoice here-----")
for invoice in paid_invoice_ids:
+ print(invoice.name)
+ print(invoice.amount_total)
paid_invoice_amount += invoice.amount_total
- outstanding_amount = all_order_amount - paid_invoice_amount
- print(outstanding_amount)
+ # outstanding_amount = all_order_amount - paid_invoice_amount
+ outstanding_amount = paid_invoice_amount
rec.outstanding_amount = outstanding_amount
has_due = fields.Boolean()