allow to filter patient type on invoice
parent
1b79fdc191
commit
078279f07a
|
@ -5,5 +5,6 @@
|
||||||
</field>
|
</field>
|
||||||
<field name="memo" position="after">
|
<field name="memo" position="after">
|
||||||
<field name="account_id" string="Account Receivable" span="2"/>
|
<field name="account_id" string="Account Receivable" span="2"/>
|
||||||
|
<field name="patient_type_id" span="2"/>
|
||||||
</field>
|
</field>
|
||||||
</inherit>
|
</inherit>
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
<inherit model="account.invoice" inherit="cust_invoice_list">
|
<inherit inherit="cust_invoice_list">
|
||||||
<field name="partner_id" position="after">
|
<field name="ref" position="after">
|
||||||
<field name="department_id"/>
|
<field name="patient_type_id"/>
|
||||||
</field>
|
</field>
|
||||||
|
<field name="memo" position="replace"/>
|
||||||
</inherit>
|
</inherit>
|
||||||
|
|
|
@ -8,3 +8,4 @@
|
||||||
#from . import rename_dbl_hdcase_number
|
#from . import rename_dbl_hdcase_number
|
||||||
#from . import reset_hdcase_number
|
#from . import reset_hdcase_number
|
||||||
from . import remove_dbl_contact
|
from . import remove_dbl_contact
|
||||||
|
from . import update_invoice
|
||||||
|
|
|
@ -0,0 +1,22 @@
|
||||||
|
from netforce.model import get_model
|
||||||
|
from netforce import migration
|
||||||
|
from netforce.access import set_active_user, set_active_company
|
||||||
|
from netforce.database import get_connection
|
||||||
|
|
||||||
|
class Migration(migration.Migration):
|
||||||
|
_name="clinic.update.invoice"
|
||||||
|
_version="2.12.4"
|
||||||
|
|
||||||
|
def migrate(self):
|
||||||
|
set_active_company(1)
|
||||||
|
set_active_user(1)
|
||||||
|
db=get_connection()
|
||||||
|
for ptype_id in get_model("clinic.patient.type").search([]):
|
||||||
|
pids=get_model('clinic.patient').search([['type_id','=',ptype_id]])
|
||||||
|
if pids:
|
||||||
|
db.execute("""
|
||||||
|
update account_invoice set patient_type_id=%s where patient_id in %s
|
||||||
|
""",ptype_id,tuple(pids))
|
||||||
|
print("update type %s to invoice -> Done"%(ptype_id))
|
||||||
|
|
||||||
|
Migration.register()
|
|
@ -13,17 +13,23 @@ class AccountInvoice(Model):
|
||||||
res={}
|
res={}
|
||||||
for obj in self.browse(ids):
|
for obj in self.browse(ids):
|
||||||
pt_id=None
|
pt_id=None
|
||||||
|
pt_type_id=None
|
||||||
if obj.patient_partner_id:
|
if obj.patient_partner_id:
|
||||||
for pt in get_model('clinic.patient').search_browse([['partner_id','=',obj.patient_partner_id.id]]):
|
for pt in get_model('clinic.patient').search_browse([['partner_id','=',obj.patient_partner_id.id]]):
|
||||||
pt_id=pt.id
|
pt_id=pt.id
|
||||||
res[obj.id]=pt_id
|
pt_type_id=pt.type_id.id
|
||||||
|
res[obj.id]={
|
||||||
|
'patient_id': pt_id,
|
||||||
|
'patient_type_id': pt_type_id,
|
||||||
|
}
|
||||||
return res
|
return res
|
||||||
|
|
||||||
_fields={
|
_fields={
|
||||||
'clinic_expense_id': fields.Many2One("clinic.hd.case.expense","Expense"),
|
'clinic_expense_id': fields.Many2One("clinic.hd.case.expense","Expense"),
|
||||||
'department_id': fields.Many2One("clinic.department","Department",search=True),
|
'department_id': fields.Many2One("clinic.department","Department",search=True),
|
||||||
'patient_partner_id': fields.Many2One("partner","Partner Patient",search=True),
|
'patient_partner_id': fields.Many2One("partner","Partner Patient",search=True),
|
||||||
'patient_id': fields.Many2One("clinic.patient","Patient",function="_get_patient", store=True,search=True),
|
'patient_id': fields.Many2One("clinic.patient","Patient",function="_get_patient", function_multi=True,store=True,search=True),
|
||||||
|
'patient_type_id': fields.Many2One("clinic.patient.type","Patient Type",function="_get_patient", function_multi=True,store=True,search=True),
|
||||||
}
|
}
|
||||||
|
|
||||||
def _get_number(self,context={}):
|
def _get_number(self,context={}):
|
||||||
|
|
Loading…
Reference in New Issue