diff --git a/__manifest__.py b/__manifest__.py index 4d3517f874d43270a52d771f2b0d45df9a7eda84..a7b889f5db61a2c4e52d024c062514e6c77a8e35 100644 --- a/__manifest__.py +++ b/__manifest__.py @@ -32,9 +32,9 @@ "data": [ "security/ir.model.access.csv", "views/menuitem.xml", - "views/health_insurance_view.xml", "views/health_insurance_plan_view.xml", "views/res_partner_views.xml", + "views/insurance_grouper_view.xml", "data/general.xml", "data/res_partner_data.xml", "data/health_insurance_plan_data.xml", diff --git a/data/health_insurance_plan_data.xml b/data/health_insurance_plan_data.xml index 9f6a30f1d2beb45dcac0506581397a4a61a3f470..6abc9a49c97cafb2cda703bba33525ccafc1a777 100644 --- a/data/health_insurance_plan_data.xml +++ b/data/health_insurance_plan_data.xml @@ -4,17 +4,17 @@ <data noupdate="1"> <record id="insurance_plan_pami_334" model="health.insurance.plan"> <field name="name">PLAN 334</field> - <field name="partner_id" ref="health_insurance.res_partner_pami"/> + <field name="insurance_id" ref="health_insurance.res_partner_pami"/> <field name="code">PLAN 334</field> </record> <record id="insurance_plan_pami_337" model="health.insurance.plan"> <field name="name">PLAN 337</field> - <field name="partner_id" ref="health_insurance.res_partner_pami"/> + <field name="insurance_id" ref="health_insurance.res_partner_pami"/> <field name="code">PLAN 337</field> </record> <record id="insurance_plan_pami_338" model="health.insurance.plan"> <field name="name">PLAN 338</field> - <field name="partner_id" ref="health_insurance.res_partner_pami"/> + <field name="insurance_id" ref="health_insurance.res_partner_pami"/> <field name="code">PLAN 338</field> </record> </data> diff --git a/i18n/es_AR.mo b/i18n/es_AR.mo index 2176c51a259da04b78d7acbe1a3fb5d3e6d6c000..38f8343793965989534a2d1b36aa09e92a1564e6 100644 Binary files a/i18n/es_AR.mo and b/i18n/es_AR.mo differ diff --git a/i18n/es_AR.po b/i18n/es_AR.po index 422dc8b59327f05dac452cf26a33b56a033786f5..031250dd8dbc5d8ba2b91595273b2d12a201a949 100644 --- a/i18n/es_AR.po +++ b/i18n/es_AR.po @@ -6,8 +6,8 @@ msgid "" msgstr "" "Project-Id-Version: Odoo Server 12.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-07-22 19:56+0000\n" -"PO-Revision-Date: 2020-07-22 16:57-0300\n" +"POT-Creation-Date: 2020-08-18 18:28+0000\n" +"PO-Revision-Date: 2020-08-18 15:30-0300\n" "Last-Translator: <>\n" "Language-Team: \n" "MIME-Version: 1.0\n" @@ -23,7 +23,8 @@ msgid "Active" msgstr "Activo" #. module: health_insurance -#: model_terms:ir.ui.view,arch_db:health_insurance.health_insurance_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.insurance_grouper_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.res_partner_insurance_plan_view_form msgid "Address" msgstr "Dirección" @@ -39,7 +40,8 @@ msgid "Administrative Address" msgstr "Dirección Administrativa" #. module: health_insurance -#: model_terms:ir.ui.view,arch_db:health_insurance.health_insurance_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.insurance_grouper_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.res_partner_insurance_plan_view_form msgid "Avatar" msgstr "" @@ -50,7 +52,8 @@ msgid "Can import roll?" msgstr "¿Puede importar padrón de afiliados?" #. module: health_insurance -#: model_terms:ir.ui.view,arch_db:health_insurance.health_insurance_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.insurance_grouper_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.res_partner_insurance_plan_view_form msgid "City" msgstr "Ciudad" @@ -76,22 +79,26 @@ msgid "Contact" msgstr "Contacto" #. module: health_insurance -#: model_terms:ir.ui.view,arch_db:health_insurance.health_insurance_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.insurance_grouper_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.res_partner_insurance_plan_view_form msgid "Contact / Address" msgstr "Contacto/Dirección" #. module: health_insurance -#: model_terms:ir.ui.view,arch_db:health_insurance.health_insurance_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.insurance_grouper_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.res_partner_insurance_plan_view_form msgid "Contact Name" msgstr "Nombre del contacto" #. module: health_insurance -#: model_terms:ir.ui.view,arch_db:health_insurance.health_insurance_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.insurance_grouper_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.res_partner_insurance_plan_view_form msgid "Contacts & Addresses" msgstr "Contactos y direcciones" #. module: health_insurance -#: model_terms:ir.ui.view,arch_db:health_insurance.health_insurance_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.insurance_grouper_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.res_partner_insurance_plan_view_form msgid "Country" msgstr "PaÃs" @@ -108,7 +115,8 @@ msgid "Created on" msgstr "Creado el" #. module: health_insurance -#: model_terms:ir.ui.view,arch_db:health_insurance.health_insurance_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.insurance_grouper_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.res_partner_insurance_plan_view_form msgid "Delivery" msgstr "Entrega" @@ -128,46 +136,58 @@ msgstr "Tipo de documento" msgid "Group By..." msgstr "Agrupar por..." +#. module: health_insurance +#: model_terms:ir.ui.view,arch_db:health_insurance.health_insurance_plan_view_search +msgid "Grouper" +msgstr "Agrupador" + +#. module: health_insurance +#: model:ir.actions.act_window,name:health_insurance.insurance_grouper_action +#: model:ir.ui.menu,name:health_insurance.menu_insurance_grouper +msgid "Groupers" +msgstr "Agrupadores" + #. module: health_insurance #: model:ir.model,name:health_insurance.model_health_attention_point msgid "Health Attention Point" msgstr "Boca de atención" #. module: health_insurance -#: model:ir.model.fields,field_description:health_insurance.field_health_insurance_plan__partner_id +#: model:ir.model.fields,field_description:health_insurance.field_health_insurance_plan__insurance_id #: model_terms:ir.ui.view,arch_db:health_insurance.health_insurance_plan_view_form -#: model_terms:ir.ui.view,arch_db:health_insurance.health_insurance_plan_view_search -#: model_terms:ir.ui.view,arch_db:health_insurance.health_insurance_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.res_partner_insurance_plan_view_form msgid "Health Insurance" msgstr "Obra Social" #. module: health_insurance #: model:ir.model,name:health_insurance.model_health_insurance_plan -#: model_terms:ir.ui.view,arch_db:health_insurance.health_insurance_plan_view_form msgid "Health Insurance Plan" msgstr "Plan de Obra Social" #. module: health_insurance -#: model_terms:ir.ui.view,arch_db:health_insurance.health_insurance_plan_view_search -#: model_terms:ir.ui.view,arch_db:health_insurance.health_insurance_view_search -msgid "Health Insurance Plans" -msgstr "Planes de Obra Social" - -#. module: health_insurance -#: model:ir.actions.act_window,name:health_insurance.health_insurance_action #: model:ir.ui.menu,name:health_insurance.menu_health_insurance +#: model:ir.ui.menu,name:health_insurance.menu_health_insurance_plan #: model:ir.ui.menu,name:health_insurance.menu_health_insurance_root -#: model_terms:ir.ui.view,arch_db:health_insurance.health_insurance_view_tree +#: model_terms:ir.ui.view,arch_db:health_insurance.health_insurance_plan_view_search +#: model_terms:ir.ui.view,arch_db:health_insurance.insurance_grouper_view_tree msgid "Health Insurances" msgstr "Obras Sociales" #. module: health_insurance -#: model:ir.actions.act_window,name:health_insurance.health_insurance_plan_action -#: model:ir.ui.menu,name:health_insurance.menu_health_insurance_plan #: model_terms:ir.ui.view,arch_db:health_insurance.health_insurance_plan_view_tree msgid "Health Insurances Plans" msgstr "Planes de Obras Sociales" +#. module: health_insurance +#: model:ir.model,name:health_insurance.model_health_insurance +msgid "Health insurance master" +msgstr "" + +#. module: health_insurance +#: model:ir.actions.act_window,name:health_insurance.health_insurance_plan_action +msgid "Health insurances" +msgstr "Obras sociales" + #. module: health_insurance #: model:ir.model.fields,field_description:health_insurance.field_health_attention_point__id #: model:ir.model.fields,field_description:health_insurance.field_health_insurance_plan__id @@ -185,17 +205,31 @@ msgid "Insurance Alias" msgstr "Seudónimo de obra social" #. module: health_insurance -#: model_terms:ir.ui.view,arch_db:health_insurance.health_insurance_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.insurance_grouper_view_form +msgid "Insurance Grouper" +msgstr "Agrupador de obras sociales" + +#. module: health_insurance +#: model:ir.model.fields,field_description:health_insurance.field_res_partner__insurance_plan_id +#: model:ir.model.fields,field_description:health_insurance.field_res_users__insurance_plan_id +msgid "Insurance plan" +msgstr "Plan de obra social" + +#. module: health_insurance +#: model_terms:ir.ui.view,arch_db:health_insurance.insurance_grouper_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.res_partner_insurance_plan_view_form msgid "Internal Notes" msgstr "Notas internas" #. module: health_insurance -#: model_terms:ir.ui.view,arch_db:health_insurance.health_insurance_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.insurance_grouper_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.res_partner_insurance_plan_view_form msgid "Internal note..." msgstr "Nota Interna..." #. module: health_insurance -#: model_terms:ir.ui.view,arch_db:health_insurance.health_insurance_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.insurance_grouper_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.res_partner_insurance_plan_view_form msgid "Invoice" msgstr "Factura" @@ -205,14 +239,13 @@ msgid "Invoice address" msgstr "Dirección de facturación" #. module: health_insurance -#: model:ir.model.fields,field_description:health_insurance.field_health_insurance_plan__invoicing_type #: model:ir.model.fields,field_description:health_insurance.field_res_partner__invoicing_type #: model:ir.model.fields,field_description:health_insurance.field_res_users__invoicing_type msgid "Invoicing Type" msgstr "Tipo de facturación" #. module: health_insurance -#: code:addons/health_insurance/models/health_insurance_plan.py:39 +#: code:addons/health_insurance/models/health_insurance_plan.py:41 #, python-format msgid "It already exists a health insurance plan of code %s and health insurance %s" msgstr "Ya existe un plan de con código %s y Obra Social %s" @@ -236,17 +269,18 @@ msgid "Last Updated on" msgstr "Última actualización el" #. module: health_insurance -#: model_terms:ir.ui.view,arch_db:health_insurance.health_insurance_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.insurance_grouper_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.res_partner_insurance_plan_view_form msgid "Logo" msgstr "" #. module: health_insurance -#: model_terms:ir.ui.view,arch_db:health_insurance.health_insurance_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.insurance_grouper_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.res_partner_insurance_plan_view_form msgid "Mobile:" msgstr "Móvil:" #. module: health_insurance -#: selection:health.insurance.plan,invoicing_type:0 #: selection:res.partner,invoicing_type:0 msgid "N/A" msgstr "" @@ -254,13 +288,13 @@ msgstr "" #. module: health_insurance #: model:ir.model.fields,field_description:health_insurance.field_health_insurance_plan__name #: model_terms:ir.ui.view,arch_db:health_insurance.health_insurance_plan_view_form -#: model_terms:ir.ui.view,arch_db:health_insurance.health_insurance_view_form -#: model_terms:ir.ui.view,arch_db:health_insurance.health_insurance_view_tree +#: model_terms:ir.ui.view,arch_db:health_insurance.insurance_grouper_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.insurance_grouper_view_tree +#: model_terms:ir.ui.view,arch_db:health_insurance.res_partner_insurance_plan_view_form msgid "Name" msgstr "Nombre" #. module: health_insurance -#: selection:health.insurance.plan,invoicing_type:0 #: selection:res.partner,invoicing_type:0 msgid "No Taxed" msgstr "No Gravado" @@ -276,6 +310,11 @@ msgstr "Observaciones" msgid "Other address" msgstr "Otra dirección" +#. module: health_insurance +#: model:ir.model.fields,field_description:health_insurance.field_health_insurance_plan__partner_id +msgid "Partner" +msgstr "Empresa" + #. module: health_insurance #: model:ir.model.fields,field_description:health_insurance.field_res_partner__partner_type #: model:ir.model.fields,field_description:health_insurance.field_res_users__partner_type @@ -288,15 +327,21 @@ msgid "Patient" msgstr "Paciente" #. module: health_insurance -#: model_terms:ir.ui.view,arch_db:health_insurance.health_insurance_view_form -#: model_terms:ir.ui.view,arch_db:health_insurance.health_insurance_view_kanban +#: model_terms:ir.ui.view,arch_db:health_insurance.insurance_grouper_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.insurance_grouper_view_kanban +#: model_terms:ir.ui.view,arch_db:health_insurance.res_partner_insurance_plan_view_form msgid "Phone:" msgstr "Teléfono:" +#. module: health_insurance +#: selection:res.partner,partner_type:0 +msgid "Plan" +msgstr "" + #. module: health_insurance #: model:ir.model.fields,field_description:health_insurance.field_res_partner__health_insurance_plan_ids #: model:ir.model.fields,field_description:health_insurance.field_res_users__health_insurance_plan_ids -#: model_terms:ir.ui.view,arch_db:health_insurance.health_insurance_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.insurance_grouper_view_form msgid "Plans" msgstr "Planes" @@ -332,9 +377,9 @@ msgid "SOFSA Alias" msgstr "Seudónimo de SOFSA" #. module: health_insurance -#: model_terms:ir.ui.view,arch_db:health_insurance.health_insurance_view_search -msgid "Search Health Insurance" -msgstr "Buscar Obra Social" +#: model_terms:ir.ui.view,arch_db:health_insurance.insurance_grouper_view_search +msgid "Search grouper" +msgstr "" #. module: health_insurance #: selection:res.partner,type:0 @@ -347,22 +392,24 @@ msgid "Sofsa User" msgstr "Usuario de Sofsa" #. module: health_insurance -#: model_terms:ir.ui.view,arch_db:health_insurance.health_insurance_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.insurance_grouper_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.res_partner_insurance_plan_view_form msgid "State" msgstr "Provincia" #. module: health_insurance -#: model_terms:ir.ui.view,arch_db:health_insurance.health_insurance_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.insurance_grouper_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.res_partner_insurance_plan_view_form msgid "Street 2..." msgstr "Calle 2..." #. module: health_insurance -#: model_terms:ir.ui.view,arch_db:health_insurance.health_insurance_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.insurance_grouper_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.res_partner_insurance_plan_view_form msgid "Street..." msgstr "Calle..." #. module: health_insurance -#: selection:health.insurance.plan,invoicing_type:0 #: selection:res.partner,invoicing_type:0 msgid "Taxed" msgstr "Gravado" @@ -374,41 +421,47 @@ msgid "Used by Sales and Purchase Apps to select the relevant address depending msgstr "Usado por el modulo de ventas y compras para seleccionar la dirección reelevante dependiendo el contexto" #. module: health_insurance -#: model_terms:ir.ui.view,arch_db:health_insurance.health_insurance_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.insurance_grouper_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.res_partner_insurance_plan_view_form msgid "XXXX" msgstr "" #. module: health_insurance -#: model_terms:ir.ui.view,arch_db:health_insurance.health_insurance_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.insurance_grouper_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.res_partner_insurance_plan_view_form msgid "ZIP" msgstr "C.P." #. module: health_insurance -#: model_terms:ir.ui.view,arch_db:health_insurance.health_insurance_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.res_partner_insurance_plan_view_form msgid "Zip..." msgstr "C.P." #. module: health_insurance -#: model_terms:ir.ui.view,arch_db:health_insurance.health_insurance_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.res_partner_insurance_plan_view_form msgid "e.g. BE0477472701" msgstr "Por ejemplo, ESA00000000" #. module: health_insurance -#: model_terms:ir.ui.view,arch_db:health_insurance.health_insurance_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.insurance_grouper_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.res_partner_insurance_plan_view_form msgid "e.g. Mr." msgstr "Por ejemplo, Mr." #. module: health_insurance -#: model_terms:ir.ui.view,arch_db:health_insurance.health_insurance_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.insurance_grouper_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.res_partner_insurance_plan_view_form msgid "e.g. Sales Director" msgstr "Por ejemplo, Director de Ventas" #. module: health_insurance -#: model_terms:ir.ui.view,arch_db:health_insurance.health_insurance_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.insurance_grouper_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.res_partner_insurance_plan_view_form msgid "e.g. https://www.eynes.com.ar" msgstr "Por ejemplo, https://www.eynes.com.ar" #. module: health_insurance -#: model_terms:ir.ui.view,arch_db:health_insurance.health_insurance_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.insurance_grouper_view_form +#: model_terms:ir.ui.view,arch_db:health_insurance.res_partner_insurance_plan_view_form msgid "internal note..." msgstr "Nota interna..." diff --git a/models/health_insurance.py b/models/health_insurance.py index a0b3daf6270839605e6a48df6f99947cc065b962..353c125b0ff02a84fc6acd6d7951af9d185fcb61 100644 --- a/models/health_insurance.py +++ b/models/health_insurance.py @@ -30,22 +30,33 @@ class Partner(models.Model): partner_type = fields.Selection( [('insurance', 'Insurance'), + ('plan', 'Plan'), ('sofsa_user', 'Sofsa User')], string="Partner type", default=lambda x: x._get_default_partner_type()) + + #Insurance fields health_insurance_plan_ids = fields.One2many( 'health.insurance.plan', 'partner_id', string='Plans') + + can_import_roll = fields.Boolean(string='Can import roll?') + requires_plan = fields.Boolean(string='Requires plan?') + + #Plan fields invoicing_type = fields.Selection( [('tax', 'Taxed'), ('no_tax', 'No Taxed'), ('na', 'N/A')], string='Invoicing Type', default='na') type = fields.Selection( selection_add=[('claim', 'Claim Address'), ('administrative', 'Administrative Address')]) + insurance_plan_id = fields.Many2one( + 'health.insurance.plan', + string='Insurance plan', + required=True, + ondelete='cascade') - can_import_roll = fields.Boolean(string='Can import roll?') - requires_plan = fields.Boolean(string='Requires plan?') @api.multi def _get_default_partner_type(self): diff --git a/models/health_insurance_plan.py b/models/health_insurance_plan.py index 47b5420ae0367b42ea3ea6daab605f795c56aa71..b2be4820d6b7bf4fcb88f59f601f1675bd8293e0 100644 --- a/models/health_insurance_plan.py +++ b/models/health_insurance_plan.py @@ -17,18 +17,20 @@ class HealthInsurancePlan(models.Model): _name = "health.insurance.plan" _description = "Health Insurance Plan" - partner_id = fields.Many2one( + insurance_id = fields.Many2one( 'res.partner', string='Health Insurance', required=True, - domain='[("partner_type","=", "insurance")]') + domain='[("partner_type","=", "insurance")]', + ondelete='restrict') + partner_id = fields.Many2one( + 'res.partner', + string='Partner', + ondelete='restrict') active = fields.Boolean(default=True) name = fields.Char(string='Name', required=True) code = fields.Char(string='Code', required=True) observations = fields.Text(string='Observations') - invoicing_type = fields.Selection( - [('tax', 'Taxed'), ('no_tax', 'No Taxed'), ('na', 'N/A')], - string='Invoicing Type', default='na') attention_point_ids = fields.One2many('health.attention.point','insurance_plan_id','Related attention points') @api.constrains('code', 'partner_id') @@ -38,3 +40,28 @@ class HealthInsurancePlan(models.Model): raise ValidationError( _('It already exists a health insurance plan of code %s and health insurance %s') % (_(self.code), _(self.partner_id.name))) + + @api.multi + def get_partner_vals(self): + vals = { + 'name': self.name, + 'ref': self.code, + 'insurance_plan_id': self.id, + 'partner_type': 'plan', + } + return vals + + @api.model + def create(self, values): + res = super(HealthInsurancePlan, self).create(values) + partner = self.env['res.partner'] + pr = partner.create(res.get_partner_vals()) + res.partner_id = pr + return res + + @api.multi + def write(self, values): + super(HealthInsurancePlan, self).write(values) + for plan in self: + plan.partner_id.write(plan.get_partner_vals()) + diff --git a/views/health_insurance_plan_view.xml b/views/health_insurance_plan_view.xml index eb4082e5a7f35b792ea38c504e10150f4ff1fd57..1c75909b218362c87a84a17e79cd3978ae7f2d4d 100644 --- a/views/health_insurance_plan_view.xml +++ b/views/health_insurance_plan_view.xml @@ -2,6 +2,160 @@ <odoo> <data> + + <!-- Plan partner view --> + <record id="res_partner_insurance_plan_view_form" model="ir.ui.view"> + <field name="name">res.partner.insurance.plan.form</field> + <field name="model">res.partner</field> + <field eval="8" name="priority"/> + <field name="arch" type="xml"> + <form string="Health Insurance"> + <sheet> + <div class="oe_title"> + <h1 class="mt0"> + <field name="ref" class="col-2 oe_inline" placeholder="XXXX" required="True"/> + - + <field name="name" class="col-7" placeholder="Name" required="True"/> + </h1> + <field name="partner_type" readonly="True" invisible="True"/> + </div> + <group> + <group> + <label for="street" string="Address"/> + <div> + <div class="o_address_format" name="div_address"> + <field name="street" placeholder="Street..." class="o_address_street"/> + <field name="street2" placeholder="Street 2..." class="o_address_street"/> + <field name="city" placeholder="City" class="o_address_city"/> + <field name="state_id" class="o_address_state" placeholder="State" options='{"no_open": True}' context="{'country_id': country_id}"/> + <field name="zip" placeholder="Zip..." class="o_address_zip"/> + <field name="country_id" placeholder="Country" class="o_address_country" options='{"no_open": True, "no_create": True}'/> + </div> + </div> + + <field name="property_account_position_id" required="1" options='{"no_open": True, "no_create": True}'/> + <field name="invoicing_type" required="1" /> + <field name="document_type_id" required="1" options='{"no_open": True, "no_create": True}'/> + <field name="vat" placeholder="e.g. BE0477472701" required="True"/> + </group> + <group> + <field name="phone" widget="phone"/> + <field name="email" widget="email" context="{'gravatar_image': True}"/> + <field name="website" widget="url" placeholder="e.g. https://www.eynes.com.ar"/> + </group> + </group> + <notebook> + <page string="Contacts & Addresses"> + <field name="child_ids" mode="kanban"> + <kanban> + <field name="id"/> + <field name="color"/> + <field name="name"/> + <field name="title"/> + <field name="type"/> + <field name="email"/> + <field name="parent_id"/> + <field name="is_company"/> + <field name="function"/> + <field name="phone"/> + <field name="street"/> + <field name="street2"/> + <field name="zip"/> + <field name="city"/> + <field name="country_id"/> + <field name="mobile"/> + <field name="state_id"/> + <field name="image_small"/> + <field name="lang"/> + <!-- fields in form x2many view to diminish requests --> + <field name="comment"/> + <field name="customer"/> + <field name="display_name"/> + <field name="supplier"/> + <templates> + <t t-name="kanban-box"> + <t t-set="color" t-value="kanban_color(record.color.raw_value)"/> + <div t-att-class="color + (record.title.raw_value == 1 ? ' oe_kanban_color_alert' : '') + ' oe_kanban_global_click'"> + <div class="o_kanban_image"> + <img alt="" t-if="record.image_small.raw_value" t-att-src="kanban_image('res.partner', 'image_small', record.id.raw_value)"/> + <t t-if="!record.image_small.raw_value"> + <img alt="Delivery" t-if="record.type.raw_value === 'delivery'" t-att-src="_s + "/base/static/img/truck.png""/> + <img alt="Invoice" t-if="record.type.raw_value === 'invoice'" t-att-src="_s + "/base/static/img/money.png""/> + <t t-if="record.type.raw_value !== 'invoice' && record.type.raw_value !== 'delivery'"> + <img alt="Logo" t-if="record.is_company.raw_value === true" t-att-src="_s + "/base/static/img/company_image.png""/> + <img alt="Avatar" t-if="record.is_company.raw_value === false" t-att-src="_s + "/base/static/img/avatar.png""/> + </t> + </t> + </div> + <div class="oe_kanban_details"> + <field name="name"/> + <div t-if="record.function.raw_value"><field name="function"/></div> + <div t-if="record.email.raw_value"><field name="email" widget="email"/></div> + <div t-if="record.type.raw_value != 'contact'"> + <div> + <field name="zip"/> + <field name="city"/> + </div> + <field t-if="record.state_id.raw_value" name="state_id"/> + <field name="country_id"/> + </div> + <div t-if="record.phone.raw_value">Phone: <field name="phone"/></div> + <div t-if="record.mobile.raw_value">Mobile: <field name="mobile"/></div> + </div> + </div> + </t> + </templates> + </kanban> + <form string="Contact / Address"> + <sheet> + <!-- parent_id and type fields needed in attrs in base_address_city module which overwrites + _fields_view_get() of partner. It would be better to put those fields there but the web client + dosen't support when a field is displayed several times in the same view.--> + <field name="type" required="1" widget="radio" options="{'horizontal': true}"/> + <field name="parent_id" invisible="1"/> + <hr/> + <group> + <group attrs="{'invisible': [('type','=', 'contact')]}"> + <label for="street" string="Address"/> + <div> + <div class="o_address_format" name="div_address"> + <field name="street" placeholder="Street..." class="o_address_street"/> + <field name="street2" placeholder="Street 2..." class="o_address_street"/> + <field name="city" placeholder="City" class="o_address_city"/> + <field name="state_id" class="o_address_state" placeholder="State" options="{"no_open": True}" context="{'country_id': country_id, 'zip': zip}"/> + <field name="zip" placeholder="ZIP" class="o_address_zip"/> + <field name="country_id" placeholder="Country" class="o_address_country" options="{"no_open": True, "no_create": True}"/> + </div> + </div> + </group> + <group> + <field name="name" string="Contact Name" attrs="{'required' : [('type', '=', 'contact')]}"/> + <field name="title" placeholder="e.g. Mr." attrs="{'invisible': [('type','!=', 'contact')]}"/> + <field name="function" placeholder="e.g. Sales Director" attrs="{'invisible': [('type','!=', 'contact')]}"/> + <field name="email"/> + <field name="phone" widget="phone"/> + <field name="mobile" widget="phone"/> + <field name="comment" placeholder="internal note..."/> + </group> + </group> + <field name="supplier" invisible="True"/> + <field name="customer" invisible="True"/> + <field name="lang" invisible="True"/> + <field name="image" invisible="True"/> + <field name="user_id" invisible="True"/> + </sheet> + </form> + </field> + </page> + <page name="internal_notes" string="Internal Notes"> + <field name="comment" placeholder="Internal note..."/> + </page> + </notebook> + </sheet> + </form> + </field> + </record> + <!-- Form View --> <record id="health_insurance_plan_view_form" model="ir.ui.view"> @@ -9,7 +163,7 @@ <field name="model">health.insurance.plan</field> <field eval="8" name="priority"/> <field name="arch" type="xml"> - <form string="Health Insurance Plan"> + <form string="Health Insurance"> <sheet> <div class="oe_button_box" name="button_box"> <button name="toggle_active" type="object" class="oe_stat_button" icon="fa-check"> @@ -22,11 +176,12 @@ </h1> </div> <group> - <field name="partner_id" class="oe_inline" + <field name="code"/> + <field name="partner_id" readonly="1" attrs="{'invisible': [('partner_id','=',False)]}" + context="{'form_view_ref': 'health_insurance.res_partner_insurance_plan_view_form'}"/> + <field name="insurance_id" class="oe_inline" placeholder="Health Insurance" required="True" context="{'form_view_ref': 'health_insurance.health_insurance_view_form'}"/> - <field name="code"/> - <field name="invoicing_type" /> </group> <group> <field name="attention_point_ids"> @@ -56,7 +211,7 @@ <tree string="Health Insurances Plans"> <field name="name"/> <field name="code"/> - <field name="partner_id"/> + <field name="insurance_id"/> </tree> </field> </record> @@ -67,7 +222,7 @@ <field name="model">health.insurance.plan</field> <field name="type">search</field> <field name="arch" type="xml"> - <search string="Health Insurance Plans"> + <search string="Health Insurances"> <field name="name" filter_domain="['|',('name','ilike',self), ('code','=',self)]"/> @@ -75,8 +230,8 @@ <field name="code"/> <group expand="0" string="Group By..." groups="base.group_user"> - <filter name="health_insurance" string="Health Insurance" - domain="[]" context="{'group_by':'partner_id'}"/> + <filter name="insurance_grouper" string="Grouper" + domain="[]" context="{'group_by':'insurance_id'}"/> </group> </search> </field> @@ -84,17 +239,17 @@ <!-- Action View --> <record id="health_insurance_plan_action" model="ir.actions.act_window"> - <field name="name">Health Insurances Plans</field> + <field name="name">Health insurances</field> <field name="type">ir.actions.act_window</field> <field name="res_model">health.insurance.plan</field> <field name="view_type">form</field> <field name="view_mode">tree,form</field> <field name="search_view_id" ref="health_insurance_plan_view_search" /> - <field name="context">{'search_default_health_insurance':1, 'default_partner_type': 'insurance'}</field> + <field name="context">{'search_default_insurance_grouper':1, 'default_partner_type': 'insurance'}</field> </record> <!-- Menu Item --> - <menuitem id="menu_health_insurance_plan" name="Health Insurances Plans" + <menuitem id="menu_health_insurance_plan" name="Health Insurances" parent="health_insurance.menu_health_insurance_root" action="health_insurance_plan_action" sequence="20" groups="base.group_user"/> diff --git a/views/health_insurance_view.xml b/views/insurance_grouper_view.xml similarity index 81% rename from views/health_insurance_view.xml rename to views/insurance_grouper_view.xml index 88e928413d245347d63742b0d84f64e7abaa78e0..ff09d4fd2479ed917dc409b27924c04b35a31674 100644 --- a/views/health_insurance_view.xml +++ b/views/insurance_grouper_view.xml @@ -4,12 +4,12 @@ <data> <!-- Form View --> - <record id="health_insurance_view_form" model="ir.ui.view"> - <field name="name">health.insurance.form</field> + <record id="insurance_grouper_view_form" model="ir.ui.view"> + <field name="name">insurance.grouper.form</field> <field name="model">res.partner</field> <field eval="8" name="priority"/> <field name="arch" type="xml"> - <form string="Health Insurance"> + <form string="Insurance Grouper"> <sheet> <div class="oe_title"> <h1 class="mt0"> @@ -21,22 +21,6 @@ </div> <group> <group> - <label for="street" string="Address"/> - <div> - <div class="o_address_format" name="div_address"> - <field name="street" placeholder="Street..." class="o_address_street"/> - <field name="street2" placeholder="Street 2..." class="o_address_street"/> - <field name="city" placeholder="City" class="o_address_city"/> - <field name="state_id" class="o_address_state" placeholder="State" options='{"no_open": True}' context="{'country_id': country_id}"/> - <field name="zip" placeholder="Zip..." class="o_address_zip"/> - <field name="country_id" placeholder="Country" class="o_address_country" options='{"no_open": True, "no_create": True}'/> - </div> - </div> - - <field name="property_account_position_id" required="1" options='{"no_open": True, "no_create": True}'/> - <field name="invoicing_type" required="1" /> - <field name="document_type_id" required="1" options='{"no_open": True, "no_create": True}'/> - <field name="vat" placeholder="e.g. BE0477472701" required="True"/> <field name="can_import_roll"/> <field name="requires_plan"/> </group> @@ -167,8 +151,8 @@ </record> <!-- Kanban View --> - <record id="health_insurance_view_kanban" model="ir.ui.view"> - <field name="name">health.insurance.kanban</field> + <record id="insurance_grouper_view_kanban" model="ir.ui.view"> + <field name="name">insurance.grouper.kanban</field> <field name="model">res.partner</field> <field name="arch" type="xml"> <kanban> @@ -208,8 +192,8 @@ </record> <!-- Tree View --> - <record id="health_insurance_view_tree" model="ir.ui.view"> - <field name="name">health.insurance.tree</field> + <record id="insurance_grouper_view_tree" model="ir.ui.view"> + <field name="name">insurance.grouper.tree</field> <field name="model">res.partner</field> <field eval="8" name="priority"/> <field name="arch" type="xml"> @@ -217,67 +201,62 @@ <field name="name" string="Name"/> <field name="ref"/> <field name="email"/> - <field name="city"/> - <field name="state_id"/> - <field name="zip"/> <field name="phone"/> </tree> </field> </record> <!-- Search View --> - <record id="health_insurance_view_search" model="ir.ui.view"> + <record id="insurance_grouper_view_search" model="ir.ui.view"> <field name="name">health.insurance.search</field> <field name="model">res.partner</field> <field name="arch" type="xml"> - <search string="Search Health Insurance"> + <search string="Search grouper"> <field name="name" filter_domain="['|','|',('display_name','ilike',self), ('ref','=',self),('email','ilike',self)]"/> <field name="ref"/> - <field name="vat"/> - <field name="health_insurance_plan_ids" string="Health Insurance Plans"/> </search> </field> </record> <!-- Action View --> - <record id="health_insurance_action" model="ir.actions.act_window"> - <field name="name">Health Insurances</field> + <record id="insurance_grouper_action" model="ir.actions.act_window"> + <field name="name">Groupers</field> <field name="type">ir.actions.act_window</field> <field name="res_model">res.partner</field> <field name="view_type">form</field> <field name="view_mode">kanban,tree,form</field> - <field name="search_view_id" ref="health_insurance_view_search"/> + <field name="search_view_id" ref="insurance_grouper_view_search"/> <field name="domain">[('partner_type','=','insurance')]</field> <field name="context">{'default_partner_type': 'insurance'}</field> </record> - <record id="health_insurance_action_kanban_view" model="ir.actions.act_window.view"> + <record id="insurance_grouper_action_kanban_view" model="ir.actions.act_window.view"> <field name="sequence" eval="1"/> <field name="view_mode">kanban</field> - <field name="view_id" ref="health_insurance_view_kanban"/> - <field name="act_window_id" ref="health_insurance_action"/> + <field name="view_id" ref="insurance_grouper_view_kanban"/> + <field name="act_window_id" ref="insurance_grouper_action"/> </record> - <record id="health_insurance_action_tree_view" model="ir.actions.act_window.view"> + <record id="insurance_grouper_action_tree_view" model="ir.actions.act_window.view"> <field name="sequence" eval="2"/> <field name="view_mode">tree</field> - <field name="view_id" ref="health_insurance_view_tree"/> - <field name="act_window_id" ref="health_insurance_action"/> + <field name="view_id" ref="insurance_grouper_view_tree"/> + <field name="act_window_id" ref="insurance_grouper_action"/> </record> - <record id="health_insurance_action_form_view" model="ir.actions.act_window.view"> + <record id="insurance_grouper_action_form_view" model="ir.actions.act_window.view"> <field name="sequence" eval="3"/> <field name="view_mode">form</field> - <field name="view_id" ref="health_insurance_view_form"/> - <field name="act_window_id" ref="health_insurance_action"/> + <field name="view_id" ref="insurance_grouper_view_form"/> + <field name="act_window_id" ref="insurance_grouper_action"/> </record> <!-- Menu Item --> - <menuitem id="menu_health_insurance" name="Health Insurances" + <menuitem id="menu_insurance_grouper" name="Groupers" parent="health_insurance.menu_health_insurance_root" - action="health_insurance_action" sequence="1" groups="base.group_user"/> + action="insurance_grouper_action" sequence="1" groups="base.group_user"/> </data> </odoo>