Merge branch 'master' of github.com:webnotes/erpnext

This commit is contained in:
Anand Doshi 2013-07-26 16:08:49 +05:30
commit 4d3aa04d15
5 changed files with 32 additions and 16 deletions

View File

@ -21,7 +21,7 @@ from webnotes.utils import flt
def execute(filters=None):
if not filters: filters = {}
columns = get_columns()
last_col = len(columns) - 1
last_col = len(columns)
item_list = get_items(filters)
aii_account_map = get_aii_accounts()
@ -35,8 +35,10 @@ def execute(filters=None):
d.purchase_receipt, expense_head, d.qty, d.rate, d.amount]
for tax in tax_accounts:
row.append(item_tax.get(d.parent, {}).get(d.item_code, {}).get(tax, 0))
row.append(sum(row[last_col:]))
total_tax = sum(row[last_col:])
row += [total_tax, d.amount + total_tax]
data.append(row)
return columns, data
@ -104,6 +106,6 @@ def get_tax_accounts(item_list, columns):
tax_accounts.sort()
columns += [account_head + ":Currency:80" for account_head in tax_accounts]
columns.append("Total:Currency:80")
columns += ["Total Tax:Currency:80", "Total:Currency:80"]
return item_tax, tax_accounts

View File

@ -21,7 +21,7 @@ from webnotes.utils import flt
def execute(filters=None):
if not filters: filters = {}
columns = get_columns()
last_col = len(columns) - 1
last_col = len(columns)
item_list = get_items(filters)
item_tax, tax_accounts = get_tax_accounts(item_list, columns)
@ -35,7 +35,9 @@ def execute(filters=None):
for tax in tax_accounts:
row.append(item_tax.get(d.parent, {}).get(d.item_code, {}).get(tax, 0))
row.append(sum(row[last_col:]))
total_tax = sum(row[last_col:])
row += [total_tax, d.amount + total_tax]
data.append(row)
return columns, data
@ -100,6 +102,6 @@ def get_tax_accounts(item_list, columns):
tax_accounts.sort()
columns += [account_head + ":Currency:80" for account_head in tax_accounts]
columns.append("Total:Currency:80")
columns += ["Total Tax:Currency:80", "Total:Currency:80"]
return item_tax, tax_accounts

View File

@ -31,7 +31,8 @@ def execute(filters=None):
return columns, invoice_list
invoice_expense_map = get_invoice_expense_map(invoice_list)
invoice_expense_map, invoice_tax_map = get_invoice_tax_map(invoice_list, invoice_expense_map)
invoice_expense_map, invoice_tax_map = get_invoice_tax_map(invoice_list,
invoice_expense_map, expense_accounts)
invoice_po_pr_map = get_invoice_po_pr_map(invoice_list)
account_map = get_account_details(invoice_list)
@ -138,15 +139,18 @@ def get_invoice_expense_map(invoice_list):
return invoice_expense_map
def get_invoice_tax_map(invoice_list, invoice_expense_map):
def get_invoice_tax_map(invoice_list, invoice_expense_map, expense_accounts):
tax_details = webnotes.conn.sql("""select parent, account_head, sum(tax_amount) as tax_amount
from `tabPurchase Taxes and Charges` where parent in (%s) group by parent, account_head""" %
', '.join(['%s']*len(invoice_list)), tuple([inv.name for inv in invoice_list]), as_dict=1)
invoice_tax_map = {}
for d in tax_details:
if d.account_head in invoice_expense_map.get(d.parent):
invoice_expense_map[d.parent][d.account_head] += flt(d.tax_amount)
if d.account_head in expense_accounts:
if invoice_expense_map[d.parent].has_key(d.account_head):
invoice_expense_map[d.parent][d.account_head] += flt(d.tax_amount)
else:
invoice_expense_map[d.parent][d.account_head] = flt(d.tax_amount)
else:
invoice_tax_map.setdefault(d.parent, webnotes._dict()).setdefault(d.account_head, [])
invoice_tax_map[d.parent][d.account_head] = flt(d.tax_amount)
@ -180,4 +184,4 @@ def get_account_details(invoice_list):
where name in (%s)""" % ", ".join(["%s"]*len(accounts)), tuple(accounts), as_dict=1):
account_map[acc.name] = acc.parent_account
return account_map
return account_map

View File

@ -30,7 +30,8 @@ def execute(filters=None):
return columns, invoice_list
invoice_income_map = get_invoice_income_map(invoice_list)
invoice_income_map, invoice_tax_map = get_invoice_tax_map(invoice_list, invoice_income_map)
invoice_income_map, invoice_tax_map = get_invoice_tax_map(invoice_list,
invoice_income_map, income_accounts)
invoice_so_dn_map = get_invoice_so_dn_map(invoice_list)
customer_map = get_customer_deatils(invoice_list)
@ -137,15 +138,18 @@ def get_invoice_income_map(invoice_list):
return invoice_income_map
def get_invoice_tax_map(invoice_list, invoice_income_map):
def get_invoice_tax_map(invoice_list, invoice_income_map, income_accounts):
tax_details = webnotes.conn.sql("""select parent, account_head, sum(tax_amount) as tax_amount
from `tabSales Taxes and Charges` where parent in (%s) group by parent, account_head""" %
', '.join(['%s']*len(invoice_list)), tuple([inv.name for inv in invoice_list]), as_dict=1)
invoice_tax_map = {}
for d in tax_details:
if d.account_head in invoice_income_map.get(d.parent):
invoice_income_map[d.parent][d.account_head] += flt(d.tax_amount)
if d.account_head in income_accounts:
if invoice_income_map[d.parent].has_key(d.account_head):
invoice_income_map[d.parent][d.account_head] += flt(d.tax_amount)
else:
invoice_income_map[d.parent][d.account_head] = flt(d.tax_amount)
else:
invoice_tax_map.setdefault(d.parent, webnotes._dict()).setdefault(d.account_head, [])
invoice_tax_map[d.parent][d.account_head] = flt(d.tax_amount)

View File

@ -39,6 +39,10 @@ def execute_all():
run_fn(flush)
def execute_daily():
# event reminders
from core.doctype.event.event import send_event_digest
run_fn(send_event_digest)
# email digest
from setup.doctype.email_digest.email_digest import send
run_fn(send)