clinic/netforce_clinic/models/report_medical_summary.py

55 lines
1.6 KiB
Python
Raw Normal View History

2014-11-05 06:45:28 +00:00
import time
2014-11-10 05:10:39 +00:00
from calendar import monthrange
2014-11-05 06:45:28 +00:00
from netforce.model import Model,fields,get_model
2014-11-05 07:03:12 +00:00
from netforce.access import get_active_company
2014-11-10 05:10:39 +00:00
from . import utils
2014-11-05 06:45:28 +00:00
class ReportMedicalSummary(Model):
_name="clinic.report.medical.summary"
_string="Report Medical Summary"
_transient=True
_fields={
"date": fields.Date("Month", required=True),
}
_defaults={
'date': lambda *a: time.strftime("%Y-%m-%d"),
}
def get_report_data(self,ids,context={}):
2014-11-10 05:10:39 +00:00
date=time.strftime("%Y-%m-%d")
defaults=context.get('defaults')
if defaults:
date=defaults['date']
year=int(date[0:4])
month=int(date[5:7])
weekday, total_day=monthrange(year, month)
dom=[]
dom.append([['state','=','completed']])
dom.append([['time_start','>=','%s-%s-01 00:00:00'%(year,month)]])
dom.append([['time_stop','<=','%s-%s-%s 23:59:59'%(year,month,total_day)]])
print("dom ", dom)
2014-11-05 07:28:20 +00:00
2014-11-10 05:10:39 +00:00
products=[]
for hd_case in get_model('clinic.hd.case').search_browse(dom):
print("="*30)
for line in hd_case.lines:
prod=line.product_id
if line.type=='fee':
continue
if prod.type=='service':
continue
2014-11-05 07:03:12 +00:00
company_id=get_active_company()
company=get_model('company').browse(company_id)
data={
'company_name': company.name or "",
'parent_company_name': company.parent_id.name or "",
}
2014-11-05 06:45:28 +00:00
return data
ReportMedicalSummary.register()