clinic/netforce_clinic/migrations/update_patient_name.py

31 lines
935 B
Python

import time
from netforce.migration import Migration
from netforce.model import Model, fields, get_model
class UpdatePatientName(Migration):
_name='update.petient.name'
_version="2.12.9"
def migrate(self):
datenow=time.strftime("%Y-%m-%d")
y,m,d=datenow.split("-")
for f, model in [('date', 'clinic.hd.case'),('visit_date','clinic.visit')]:
cond=[
[f,'>=','%s-01-01'%(y)],
[f,'<=',datenow],
['patient_name','=',None],
]
print("update %s ... "%model)
objs=get_model(model).search_browse(cond)
for index, obj in enumerate(objs):
patient=obj.patient_id
vals={
'patient_name': patient.name_get()[-1][1]
}
obj.write(vals)
#print("%s/%s"%(index+1, len(hdcases)))
UpdatePatientName.register()