minor fix report

This commit is contained in:
wilson gomez 2021-08-18 13:52:52 -05:00
parent bc64439d10
commit 05e12b35f3
3 changed files with 80 additions and 79 deletions

View File

@ -22,7 +22,7 @@ def register():
module='syncronize_companies', type_='model')
Pool.register(
account.TrialBalanceClassic,
sale.SaleDailyReport,
# sale.SaleDailyReport,
sale.SaleDetailedReport,
sale.PortfolioDetailedReport,
sale.ExpiredPortfolioReport,

155
sale.py
View File

@ -32,83 +32,84 @@ class SaleIncomeDailyStart(metaclass=PoolMeta):
)
class SaleDailyReport(metaclass=PoolMeta):
__name__ = 'sale_goal.sale_daily_report'
@classmethod
def get_context(cls, records, header, data):
# report_context = super(SaleDailyReport, cls).get_context(records, data)
report_context = {}
pool = Pool()
Sale = pool.get('sale.sale')
User = pool.get('res.user')
Company = pool.get('company.company')
company = Company(data['company'])
Journal = pool.get('account.statement.journal')
user_ = User(Transaction().user)
dom_sales = [
('company', '=', data['company']),
('sale_date', '=', data['sale_date']),
('number', '!=', None),
]
states_sale = ['confirmed', 'processing', 'done']
if data['include_canceled']:
states_sale.append('cancel')
dom_sales.append(('state', 'in', states_sale))
journal_name = ''
if data['journal']:
dom_sales.append(('payments.statement.journal', '=', data['journal']))
journal = Journal(data['journal'])
journal_name = journal.name.upper()
ctx = {
'company': user_.company.id,
'user': user_.id,
'shops': [s.id for s in user_.shops],
'shop': user_.shop.id,
}
with Transaction().set_context(ctx):
sales = Sale.search(dom_sales, order=[('number', 'ASC')])
untaxed_amount_ = []
tax_amount_ = []
total_amount_ = []
total_amount_ = []
total_journal_paid_ = []
sequence = 0
for sale in sales:
sequence += 1
setattr(sale, 'sequence', sequence)
journal_paid = _ZERO
if data['journal'] and sale.state != 'cancel':
for p in sale.payments:
if p.statement.journal.id == data['journal']:
journal_paid += p.amount
total_journal_paid_.append(journal_paid)
setattr(sale, 'journal_paid', journal_paid)
if not hasattr(sale, 'sale_device'):
setattr(sale, 'sale_device', None)
if sale.state == 'cancel':
continue
untaxed_amount_.append(sale.untaxed_amount)
tax_amount_.append(sale.tax_amount)
total_amount_.append(sale.total_amount)
report_context['data'] = data
report_context['records'] = sales
report_context['total_amount'] = sum(total_amount_)
report_context['tax_amount'] = sum(tax_amount_)
report_context['untaxed_amount'] = sum(untaxed_amount_)
report_context['date'] = data['sale_date']
report_context['company'] = company.party.name
report_context['journal'] = journal_name
report_context['total_journal_paid'] = sum(total_journal_paid_)
return report_context
# class SaleDailyReport(metaclass=PoolMeta):
# __name__ = 'sale_goal.sale_daily_report'
#
# @classmethod
# def get_context(cls, records, header, data):
# # report_context = super(SaleDailyReport, cls).get_context(records, data)
# report_context = {}
# pool = Pool()
# Sale = pool.get('sale.sale')
# User = pool.get('res.user')
# Company = pool.get('company.company')
# company = Company(data['company'])
# Journal = pool.get('account.statement.journal')
# user_ = User(Transaction().user)
#
# dom_sales = [
# ('company', '=', data['company']),
# ('sale_date', '=', data['sale_date']),
# ('number', '!=', None),
# ]
# states_sale = ['confirmed', 'processing', 'done']
# if data['include_canceled']:
# states_sale.append('cancel')
# dom_sales.append(('state', 'in', states_sale))
#
# journal_name = ''
# if data['journal']:
# dom_sales.append(('payments.statement.journal', '=', data['journal']))
# journal = Journal(data['journal'])
# journal_name = journal.name.upper()
#
# ctx = {
# 'company': user_.company.id,
# 'user': user_.id,
# 'shops': [s.id for s in user_.shops],
# 'shop': user_.shop.id,
# }
# with Transaction().set_context(ctx):
# sales = Sale.search(dom_sales, order=[('number', 'ASC')])
#
# untaxed_amount_ = []
# tax_amount_ = []
# total_amount_ = []
# total_amount_ = []
# total_journal_paid_ = []
# sequence = 0
#
# for sale in sales:
# sequence += 1
#
# setattr(sale, 'sequence', sequence)
# journal_paid = _ZERO
# if data['journal'] and sale.state != 'cancel':
# for p in sale.payments:
# if p.statement.journal.id == data['journal']:
# journal_paid += p.amount
# total_journal_paid_.append(journal_paid)
#
# setattr(sale, 'journal_paid', journal_paid)
# if not hasattr(sale, 'sale_device'):
# setattr(sale, 'sale_device', None)
# if sale.state == 'cancel':
# continue
#
# untaxed_amount_.append(sale.untaxed_amount)
# tax_amount_.append(sale.tax_amount)
# total_amount_.append(sale.total_amount)
#
# report_context['data'] = data
# report_context['records'] = sales
# report_context['total_amount'] = sum(total_amount_)
# report_context['tax_amount'] = sum(tax_amount_)
# report_context['untaxed_amount'] = sum(untaxed_amount_)
# report_context['date'] = data['sale_date']
# report_context['company'] = company.party.name
# report_context['journal'] = journal_name
# report_context['total_journal_paid'] = sum(total_journal_paid_)
# return report_context
class SaleMonthByShopStart(metaclass=PoolMeta):

View File

@ -1,7 +1,7 @@
<?xml version="1.0"?>
<!-- This file is part of Tryton. The COPYRIGHT file at the top level of
this repository contains the full copyright notices and license terms. -->
<tree editable="bottom">
<tree editable="1">
<field name="database"/>
<field name="api_connection"/>
</tree>