report hd
parent
6f437ceba7
commit
86dc6b5fa3
|
@ -1,4 +1,5 @@
|
|||
<form model="clinic.cycle">
|
||||
<field name="name"/>
|
||||
<field name="duration"/>
|
||||
<field name="sequence"/>
|
||||
</form>
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
<list model="clinic.cycle">
|
||||
<field name="name"/>
|
||||
<field name="duration"/>
|
||||
<field name="sequence"/>
|
||||
</list>
|
||||
|
|
|
@ -7,10 +7,12 @@ class Cycle(Model):
|
|||
_fields={
|
||||
"name": fields.Char("Name",required=True,search=True),
|
||||
'duration': fields.Integer("Duration (hrs)"),
|
||||
'sequence': fields.Integer("Sequence"),
|
||||
}
|
||||
|
||||
_defaults={
|
||||
'duration': 1,
|
||||
'sequence': 1,
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -19,8 +19,6 @@ class HDReport(Model):
|
|||
_order="cycle_id desc"
|
||||
|
||||
def get_report_data(self,ids,context={}):
|
||||
obj=self.browse(ids)[0]
|
||||
lines=[]
|
||||
PATIENT_TYPE={
|
||||
"mg":"Medical Government",
|
||||
"sc":"Social Security",
|
||||
|
@ -28,33 +26,79 @@ class HDReport(Model):
|
|||
"personal": "Personal",
|
||||
"others": "Others",
|
||||
}
|
||||
date=time.strftime("%Y-%m-%d")
|
||||
dom=[]
|
||||
dom.append([
|
||||
'state','=','completed',
|
||||
])
|
||||
if obj.cycle_id:
|
||||
dom.append([
|
||||
'cycle_id','=',obj.cycle_id.id,
|
||||
])
|
||||
|
||||
if obj.date:
|
||||
dom.append(['time_start', ">=", obj.date+" 00:00:00"])
|
||||
dom.append(['time_stop', "<=", obj.date+" 23:59:59"])
|
||||
|
||||
dom.append(['state','=','completed'])
|
||||
if ids:
|
||||
obj=self.browse(ids)[0]
|
||||
if obj.date:
|
||||
date=obj.date
|
||||
if obj.cycle_id:
|
||||
dom.append([
|
||||
'cycle_id','=',obj.cycle_id.id,
|
||||
])
|
||||
dom.append(['time_start', ">=", date+" 00:00:00"])
|
||||
dom.append(['time_stop', "<=", date+" 23:59:59"])
|
||||
print("dom ", dom)
|
||||
for hd_case in get_model("clinic.hd.case").search_browse(dom):
|
||||
lines=[]
|
||||
cycles=[]
|
||||
index=0
|
||||
no_patient=0
|
||||
for hd_case in get_model("clinic.hd.case").search_browse(dom,order="cycle_id.sequence"):
|
||||
patient_type=hd_case.patient_id.type
|
||||
patient_type=PATIENT_TYPE.get(patient_type)
|
||||
lines.append({
|
||||
'cycle' : hd_case.cycle_id.name,
|
||||
cycle_name=hd_case.cycle_id.name or ""
|
||||
show_cycle=False
|
||||
if not cycle_name in cycles:
|
||||
cycles.append(cycle_name)
|
||||
show_cycle=True
|
||||
if index > 1:
|
||||
vals={
|
||||
'color': 'success',
|
||||
'show_cycle': False,
|
||||
'cycle' : "",
|
||||
'patient': "",
|
||||
'no_patient': no_patient,
|
||||
'patient_type' : "",
|
||||
'doctor' : "",
|
||||
'total' : "",
|
||||
'rc_no' : "",
|
||||
'nurse' : "",
|
||||
}
|
||||
lines.append(vals)
|
||||
no_patient=1
|
||||
else:
|
||||
no_patient+=1
|
||||
index+=1
|
||||
vals={
|
||||
'show_cycle': show_cycle,
|
||||
'cycle' : cycle_name,
|
||||
'patient': hd_case.patient_id.name,
|
||||
'patient_type' : patient_type,
|
||||
'no_patient': 0,
|
||||
'doctor' : hd_case.doctor_id.name,
|
||||
'total' : hd_case.fee,
|
||||
'rc_no' : hd_case.number,
|
||||
'nurse' : hd_case.nurse_id.name,
|
||||
})
|
||||
}
|
||||
lines.append(vals)
|
||||
|
||||
# XXX
|
||||
if lines:
|
||||
vals={
|
||||
'color': 'success',
|
||||
'show_cycle': False,
|
||||
'cycle' : "",
|
||||
'patient': "",
|
||||
'no_patient': no_patient,
|
||||
'patient_type' : "",
|
||||
'doctor' : "",
|
||||
'total' : "",
|
||||
'rc_no' : "",
|
||||
'nurse' : "",
|
||||
}
|
||||
lines.append(vals)
|
||||
|
||||
data={
|
||||
'lines': lines,
|
||||
}
|
||||
|
|
|
@ -1,63 +0,0 @@
|
|||
<center>
|
||||
<h2>
|
||||
HD Case Report
|
||||
</h2>
|
||||
</center>
|
||||
<table class="table table-striped">
|
||||
<thead class="scroll-header">
|
||||
<tr>
|
||||
<th>
|
||||
Cycle
|
||||
</th>
|
||||
<th>
|
||||
Patient
|
||||
</th>
|
||||
<th>
|
||||
Doctor
|
||||
</th>
|
||||
<th>
|
||||
HD Fee
|
||||
</th>
|
||||
<th>
|
||||
RC.No
|
||||
</th>
|
||||
<th>
|
||||
Nurse
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{{#each lines context=context}}
|
||||
<tr>
|
||||
<td colspan="10" style="font-weight:bold">
|
||||
{{cycle}}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
|
||||
</td>
|
||||
<td>
|
||||
{{patient}}
|
||||
</td>
|
||||
<td>
|
||||
{{doctor}}
|
||||
</td>
|
||||
<td>
|
||||
{{total}}
|
||||
</td>
|
||||
<td>
|
||||
{{rc_no}}
|
||||
</td>
|
||||
<td>
|
||||
{{nurse}}
|
||||
</td>
|
||||
</tr>
|
||||
{{/each}}
|
||||
</tbody>
|
||||
<tfoot>
|
||||
<tr style="font-weight:bold">
|
||||
|
||||
</tr>
|
||||
</tfoot>
|
||||
</table>
|
|
@ -15,6 +15,9 @@
|
|||
<th>
|
||||
Doctor
|
||||
</th>
|
||||
<th>
|
||||
Patient Type
|
||||
</th>
|
||||
<th>
|
||||
HD Fee
|
||||
</th>
|
||||
|
@ -28,21 +31,27 @@
|
|||
</thead>
|
||||
<tbody>
|
||||
{{#each lines context=context}}
|
||||
<tr>
|
||||
<td colspan="10" style="font-weight:bold">
|
||||
{{cycle}}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
|
||||
</td>
|
||||
<td>
|
||||
{{patient}}
|
||||
</td>
|
||||
{{#if show_cycle}}
|
||||
<tr>
|
||||
<td colspan="10" style="font-weight:bold">
|
||||
{{cycle}}
|
||||
</td>
|
||||
</tr>
|
||||
{{/if}}
|
||||
<tr class="{{color}}">
|
||||
{{#if no_patient}}
|
||||
<td>Total</td>
|
||||
<td>{{no_patient}}</td>
|
||||
{{else}}
|
||||
<td></td>
|
||||
<td>{{patient}}</td>
|
||||
{{/if}}
|
||||
<td>
|
||||
{{doctor}}
|
||||
</td>
|
||||
<td>
|
||||
{{patient_type}}
|
||||
</td>
|
||||
<td>
|
||||
{{total}}
|
||||
</td>
|
||||
|
|
Loading…
Reference in New Issue