From b9436c5990acd522a38dcb97eff191c971dd1c0e Mon Sep 17 00:00:00 2001 From: "watcha.h" Date: Thu, 15 Oct 2015 12:09:42 +0700 Subject: [PATCH] migrate/update sequence --- netforce_clinic/migrations/__init__.py | 3 +- netforce_clinic/migrations/check_seq.py | 37 +++++++++++++++++++++++++ 2 files changed, 39 insertions(+), 1 deletion(-) create mode 100644 netforce_clinic/migrations/check_seq.py diff --git a/netforce_clinic/migrations/__init__.py b/netforce_clinic/migrations/__init__.py index ed43705..eb3aead 100644 --- a/netforce_clinic/migrations/__init__.py +++ b/netforce_clinic/migrations/__init__.py @@ -1,4 +1,5 @@ #from . import clinic_setting #from . import repost_invoice -from . import conv_bal +#from . import conv_bal #from . import tb_ap_import +from . import check_seq diff --git a/netforce_clinic/migrations/check_seq.py b/netforce_clinic/migrations/check_seq.py new file mode 100644 index 0000000..95b7559 --- /dev/null +++ b/netforce_clinic/migrations/check_seq.py @@ -0,0 +1,37 @@ +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()