Commit ec4ec06c authored by xianyang's avatar xianyang

优化账户类型汇总

parent 34557118
......@@ -632,19 +632,22 @@ class HomePageDisplay(object):
assets_sql = f"select reference_type,type,sum(amount) as amount from {self.date} where {' and '.join(assets_cond)} GROUP BY reference_type,type"
total_data = LinkMysql(env.DB_HISTORY).query_mysql(assets_sql)
# 数据分类
res_list = []
income = []
outcome = []
for i in total_data:
op = {}
if TYPE_NAME.get(i['reference_type']):
op['name'] = TYPE_NAME.get(i['reference_type'])
else:
op['name'] = i['reference_type']
op['money'] = round(i['amount'] / 1000, 3)
if i['type'] == 0:
op['type'] = '出账'
self.outcome = self.outcome + i['amount']
outcome.append(op)
else:
op['type'] = '入账'
self.income = self.income + i['amount']
op['money'] = round(i['amount']/1000, 3)
res_list.append(op)
income.append(op)
res_list = outcome + income
return res_list, self.outcome/1000, self.income/1000
......@@ -65,7 +65,12 @@ def account_data_to_file(db, data, outcome, income, header):
outcome_list = [i for i in data if i['type'] == '出账']
workbook = xlsxwriter.Workbook("static/账户类型汇总.xlsx")
worksheet = workbook.add_worksheet()
worksheet.merge_range("A1:B1", "出账")
merge_format = workbook.add_format({
'align': 'center', # 水平居中
'valign': 'vcenter', # 垂直居中
'fg_color': '#D7E4BC', # 颜色填充
})
worksheet.merge_range("A1:B1", "出账", merge_format)
worksheet.write(1, 0, '类型')
worksheet.write(1, 1, '金额(元)')
row = 2
......@@ -77,7 +82,7 @@ def account_data_to_file(db, data, outcome, income, header):
worksheet.write(row, 0, '合计')
worksheet.write(row, 1, income)
row += 2
worksheet.merge_range(f"A{row}:B{row}", "入账")
worksheet.merge_range(f"A{row}:B{row}", "入账", merge_format)
worksheet.write(1, 0, '类型')
worksheet.write(1, 1, '金额(元)')
for y in income_list:
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment