水电表,按钮
This commit is contained in:
@@ -49,13 +49,21 @@ class HydropowerReport(models.Model):
|
||||
'房屋名称': property_id.name,
|
||||
'业户名称': property_id.lessee_id.name if property_id.lessee_id else '',
|
||||
'水费': 0.0,
|
||||
'水费期间': '',
|
||||
'_water_last_meter': None,
|
||||
'_water_meter_date': None,
|
||||
'电费': 0.0,
|
||||
'电费期间': '',
|
||||
'_electric_last_meter': None,
|
||||
'_electric_meter_date': None,
|
||||
'小计': 0.0
|
||||
}
|
||||
property_dict[key]['水费'] += water.receivables
|
||||
property_dict[key]['水费期间'] = f"{start_date}到{end_date}"
|
||||
# 记录最早 last_meter 和最晚 meter_date
|
||||
if water.last_meter:
|
||||
if property_dict[key]['_water_last_meter'] is None or water.last_meter < property_dict[key]['_water_last_meter']:
|
||||
property_dict[key]['_water_last_meter'] = water.last_meter
|
||||
if water.meter_date:
|
||||
if property_dict[key]['_water_meter_date'] is None or water.meter_date > property_dict[key]['_water_meter_date']:
|
||||
property_dict[key]['_water_meter_date'] = water.meter_date
|
||||
|
||||
for electric in electric_data:
|
||||
for property_id in electric.yuthon_property_ids:
|
||||
@@ -65,18 +73,41 @@ class HydropowerReport(models.Model):
|
||||
'房屋名称': property_id.name,
|
||||
'业户名称': property_id.lessee_id.name if property_id.lessee_id else '',
|
||||
'水费': 0.0,
|
||||
'水费期间': '',
|
||||
'_water_last_meter': None,
|
||||
'_water_meter_date': None,
|
||||
'电费': 0.0,
|
||||
'电费期间': '',
|
||||
'_electric_last_meter': None,
|
||||
'_electric_meter_date': None,
|
||||
'小计': 0.0
|
||||
}
|
||||
property_dict[key]['电费'] += electric.receivables
|
||||
property_dict[key]['电费期间'] = f"{start_date}到{end_date}"
|
||||
# 记录最早 last_meter 和最晚 meter_date
|
||||
if electric.last_meter:
|
||||
if property_dict[key]['_electric_last_meter'] is None or electric.last_meter < property_dict[key]['_electric_last_meter']:
|
||||
property_dict[key]['_electric_last_meter'] = electric.last_meter
|
||||
if electric.meter_date:
|
||||
if property_dict[key]['_electric_meter_date'] is None or electric.meter_date > property_dict[key]['_electric_meter_date']:
|
||||
property_dict[key]['_electric_meter_date'] = electric.meter_date
|
||||
|
||||
rows = []
|
||||
total_water = 0.0
|
||||
total_electric = 0.0
|
||||
for idx, (key, value) in enumerate(property_dict.items(), start=1):
|
||||
# 拼装水费期间:最早 last_meter 到 最晚 meter_date
|
||||
w_last = value.pop('_water_last_meter')
|
||||
w_curr = value.pop('_water_meter_date')
|
||||
if w_last and w_curr:
|
||||
value['水费期间'] = f"{w_last}到{w_curr}"
|
||||
else:
|
||||
value['水费期间'] = ''
|
||||
# 拼装电费期间
|
||||
e_last = value.pop('_electric_last_meter')
|
||||
e_curr = value.pop('_electric_meter_date')
|
||||
if e_last and e_curr:
|
||||
value['电费期间'] = f"{e_last}到{e_curr}"
|
||||
else:
|
||||
value['电费期间'] = ''
|
||||
|
||||
value['小计'] = round(value['水费'] + value['电费'], 2)
|
||||
value['水费'] = round(value['水费'], 2)
|
||||
value['电费'] = round(value['电费'], 2)
|
||||
|
||||
Reference in New Issue
Block a user