48 lines
1.5 KiB
Python
48 lines
1.5 KiB
Python
import webnotes
|
|
from webnotes.utils import get_defaults, cstr
|
|
|
|
@webnotes.whitelist()
|
|
def get_companies():
|
|
return [r[0] for r in webnotes.conn.sql("""select name from tabCompany where docstatus!=2""")]
|
|
|
|
@webnotes.whitelist()
|
|
def get_children():
|
|
args = webnotes.form_dict
|
|
ctype, company = args['ctype'], args['comp']
|
|
|
|
company_field = ctype=='Account' and 'company' or 'company_name'
|
|
|
|
# root
|
|
if args['parent'] == company:
|
|
acc = webnotes.conn.sql(""" select
|
|
name as value, if(group_or_ledger='Group', 1, 0) as expandable
|
|
from `tab%s`
|
|
where ifnull(parent_%s,'') = ''
|
|
and %s = %s and docstatus<2
|
|
order by name""" % (ctype, ctype.lower().replace(' ','_'), company_field, '%s'),
|
|
args['parent'], as_dict=1)
|
|
else:
|
|
# other
|
|
acc = webnotes.conn.sql("""select
|
|
name as value, if(group_or_ledger='Group', 1, 0) as expandable
|
|
from `tab%s`
|
|
where ifnull(parent_%s,'') = %s
|
|
and docstatus<2
|
|
order by name""" % (ctype, ctype.lower().replace(' ','_'), '%s'),
|
|
args['parent'], as_dict=1)
|
|
|
|
if ctype == 'Account':
|
|
currency = webnotes.conn.sql("select default_currency from `tabCompany` where name = %s", company)[0][0]
|
|
for each in acc:
|
|
bal = webnotes.conn.sql("select balance from `tabAccount Balance` \
|
|
where account = %s and period = %s", (each.get('value'), get_defaults('fiscal_year')))[0][0]
|
|
each['balance'] = currency + ' ' + cstr(bal)
|
|
|
|
return acc
|
|
|
|
|
|
@webnotes.whitelist()
|
|
def get_account_balance():
|
|
args = webnotes.form_dict
|
|
acc = args['acc']
|
|
return 'Rs. 100' |