38 lines
1.6 KiB
Python
38 lines
1.6 KiB
Python
from netforce.model import get_model
|
|
from netforce import migration
|
|
from netforce.access import set_active_user, set_active_company
|
|
|
|
class Migration(migration.Migration):
|
|
_name="clinic.check.seq"
|
|
_version="2.11.0"
|
|
|
|
def migrate(self):
|
|
set_active_user(1)
|
|
set_active_company(1)
|
|
fnames=['branch_id','prefix']
|
|
seqs=dict([(x['branch_id'][0],x['prefix']) for x in get_model("sequence").search_read([['type','=','clinic_hdcase']],fnames)])
|
|
print('seqs ',seqs)
|
|
count=0
|
|
for hdcase in get_model('clinic.hd.case').search_browse([]):
|
|
seq=seqs[hdcase.branch_id.id]
|
|
rp=seq.split("/")[-1].replace("-","")
|
|
if '/' in hdcase.number and hdcase.number!='/':
|
|
if seq not in hdcase.number:
|
|
pf=hdcase.number.split('-')[0].split("/")[-1]
|
|
new_hdcase_number=hdcase.number.replace(pf,rp)
|
|
new_visit_number=hdcase.visit_id.number.replace(pf,rp)
|
|
print(hdcase.number, new_hdcase_number,hdcase.department_id.name)
|
|
print(hdcase.visit_id.number, new_visit_number, hdcase.visit_id.department_id.name)
|
|
hdcase.write({
|
|
'number': new_hdcase_number,
|
|
})
|
|
hdcase.visit_id.write({
|
|
'number': new_visit_number,
|
|
})
|
|
print('-'*100)
|
|
#print(seq, ' : ', hdcase.number, hdcase.visit_id.number, hdcase.date, hdcase.patient_id.name)
|
|
count+=1
|
|
print('total unmatch', count)
|
|
|
|
Migration.register()
|