lot of refactor
This commit is contained in:
parent
a372adb614
commit
eaf02c709f
7 changed files with 96 additions and 15 deletions
|
|
@ -4,7 +4,7 @@
|
||||||
'name': 'Bemade Sethy',
|
'name': 'Bemade Sethy',
|
||||||
'version': '1.0',
|
'version': '1.0',
|
||||||
'category': 'Specific Module Category', # Specify your module's category here
|
'category': 'Specific Module Category', # Specify your module's category here
|
||||||
'summary': 'This module is developed by Bemade to instantiate the Sethy Odoo', # Provide a brief summary of the module
|
'summary': "This module is developed by Bemade to instantiate the Sethy's Odoo",
|
||||||
'author': 'Bemade',
|
'author': 'Bemade',
|
||||||
'website': 'https://bemade.org',
|
'website': 'https://bemade.org',
|
||||||
'email': 'it@bemade.org',
|
'email': 'it@bemade.org',
|
||||||
|
|
@ -14,15 +14,20 @@
|
||||||
'base',
|
'base',
|
||||||
'contacts',
|
'contacts',
|
||||||
'crm',
|
'crm',
|
||||||
|
'l10n_ca',
|
||||||
'membership',
|
'membership',
|
||||||
'partner_multi_relation'
|
'membership_extension',
|
||||||
|
'membership_variable_period',
|
||||||
|
'partner_multi_relation',
|
||||||
|
'sale_management'
|
||||||
],
|
],
|
||||||
'data': [
|
'data': [
|
||||||
# Reference to XML, CSV, and other data files
|
# Reference to XML, CSV, and other data files
|
||||||
|
'data/membership_category_data.xml',
|
||||||
|
'data/product_template_data.xml',
|
||||||
|
'data/partner_category_data.xml',
|
||||||
|
'data/partner_relation_type_data.xml',
|
||||||
'data/company_data.xml',
|
'data/company_data.xml',
|
||||||
'data/partner_tags_data.xml',
|
|
||||||
'data/partner_relations_data.xml',
|
|
||||||
'views/res_partner_views.xml',
|
|
||||||
'views/res_partner_relation_views.xml',
|
'views/res_partner_relation_views.xml',
|
||||||
'views/membership_membership_line.xml'
|
'views/membership_membership_line.xml'
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<odoo>
|
<odoo>
|
||||||
<data noupdate="0"> <!-- noupdate="1" means the data won't be updated when the module is upgraded -->
|
<data noupdate="1"> <!-- noupdate="1" means the data won't be updated when the module is upgraded -->
|
||||||
<!-- Assuming 'base.main_company' is the external ID for the main company -->
|
<!-- Assuming 'base.main_company' is the external ID for the main company -->
|
||||||
<record id="base.main_company" model="res.company">
|
<record id="base.main_company" model="res.company">
|
||||||
<field name="name">Fondation Séthy</field>
|
<field name="name">Fondation Séthy</field>
|
||||||
|
|
@ -9,10 +9,12 @@
|
||||||
<field name="street">164, rue Cowie</field>
|
<field name="street">164, rue Cowie</field>
|
||||||
<field name="street2">local 335</field>
|
<field name="street2">local 335</field>
|
||||||
<field name="city">Granby</field>
|
<field name="city">Granby</field>
|
||||||
<field name="state_id" ref="base.state_ca_qc"/> <!-- Assuming 'base.state_ca_qc' is the external ID for Québec -->
|
<field name="state_id" ref="base.state_ca_qc"/>
|
||||||
<field name="zip">J2G 3V3</field>
|
<field name="zip">J2G 3V3</field>
|
||||||
<field name="country_id" ref="base.ca"/> <!-- Assuming 'base.ca' is the external ID for Canada -->
|
<field name="country_id" ref="base.ca"/>
|
||||||
<field name="phone">450 994-3173</field>
|
<field name="phone">450 994-3173</field>
|
||||||
|
<field name="account_sale_tax_id" ref="l10n_ca.1_gstqst_sale_en"/>
|
||||||
|
<field name="account_purchase_tax_id" ref="l10n_ca.1_gstqst_purc_en"/>
|
||||||
</record>
|
</record>
|
||||||
</data>
|
</data>
|
||||||
</odoo>
|
</odoo>
|
||||||
|
|
|
||||||
11
bemade_sethy_configuration/data/membership_category_data.xml
Normal file
11
bemade_sethy_configuration/data/membership_category_data.xml
Normal file
|
|
@ -0,0 +1,11 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<odoo>
|
||||||
|
<data noupdate="1"> <!-- noupdate="1" means the data won't be updated when the module is upgraded -->
|
||||||
|
<record id="membership_category_perpetual" model="membership.membership_category">
|
||||||
|
<field name="name">Perpetual Membership</field>
|
||||||
|
</record>
|
||||||
|
<record id="membership_extension.membership_category_member" model="membership.membership_category">
|
||||||
|
<field name="name">Annual Membership</field>
|
||||||
|
</record>
|
||||||
|
</data>
|
||||||
|
</odoo>
|
||||||
35
bemade_sethy_configuration/data/product_template_data.xml
Normal file
35
bemade_sethy_configuration/data/product_template_data.xml
Normal file
|
|
@ -0,0 +1,35 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<odoo>
|
||||||
|
|
||||||
|
<data noupdate="1"> <!-- noupdate="1" means the data won't be updated when the module is upgraded -->
|
||||||
|
|
||||||
|
<record id="product_membership_perpetual" model="product.template">
|
||||||
|
<field name="membership_category_id" ref="membership_category_perpetual"/>
|
||||||
|
<field name="name">Perpetual Membership</field>
|
||||||
|
<field name="membership" eval="True" />
|
||||||
|
<field name="type">service</field>
|
||||||
|
<field name="membership_date_from">2000-01-01</field>
|
||||||
|
<field name="membership_date_to">2100-01-01</field>
|
||||||
|
<field name="list_price">225.0</field>
|
||||||
|
<field name="uom_id" ref="uom.product_uom_unit"/>
|
||||||
|
<field name="uom_po_id" ref="uom.product_uom_unit"/>
|
||||||
|
<field name="default_code">MBRAV</field>
|
||||||
|
</record>
|
||||||
|
|
||||||
|
<record id="product_membership_annual" model="product.template">
|
||||||
|
<field name="membership_category_id" ref="membership_extension.membership_category_member"/>
|
||||||
|
<field name="name">Annual Membership</field>
|
||||||
|
<field name="membership" eval="True" />
|
||||||
|
<field name="type">service</field>
|
||||||
|
<field name="list_price">20.0</field>
|
||||||
|
<field name="uom_id" ref="uom.product_uom_unit"/>
|
||||||
|
<field name="uom_po_id" ref="uom.product_uom_unit"/>
|
||||||
|
<field name="default_code">MBRAN</field>
|
||||||
|
<field name="membership_type">variable</field>
|
||||||
|
</record>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</data>
|
||||||
|
|
||||||
|
</odoo>
|
||||||
|
|
@ -69,12 +69,6 @@ class ResPartner(models.Model):
|
||||||
line.type_id.name == 'Owner' and line.is_inverse)
|
line.type_id.name == 'Owner' and line.is_inverse)
|
||||||
)
|
)
|
||||||
|
|
||||||
# @api.depends('is_property')
|
|
||||||
# def _forcing_company(self):
|
|
||||||
# for record in self:
|
|
||||||
# if record.is_property:
|
|
||||||
# record.is_company = True
|
|
||||||
|
|
||||||
@api.onchange('is_property')
|
@api.onchange('is_property')
|
||||||
def _onchange_is_property(self):
|
def _onchange_is_property(self):
|
||||||
""" Set is_company to True when is_property is set to True. """
|
""" Set is_company to True when is_property is set to True. """
|
||||||
|
|
@ -98,3 +92,37 @@ class ResPartner(models.Model):
|
||||||
for record in self:
|
for record in self:
|
||||||
record.property_count = len(record.relation_property_ids)
|
record.property_count = len(record.relation_property_ids)
|
||||||
record.is_owner = record.property_count > 0
|
record.is_owner = record.property_count > 0
|
||||||
|
|
||||||
|
def write(self, vals):
|
||||||
|
property_tag = self.env.ref('bemade_sethy_configuration.partner_tag_property', raise_if_not_found=False)
|
||||||
|
owner_tag = self.env.ref('bemade_sethy_configuration.partner_tag_owner', raise_if_not_found=False)
|
||||||
|
if 'is_property' in vals:
|
||||||
|
if vals['is_property'] and property_tag:
|
||||||
|
vals['category_id'] = [(4, property_tag.id)]
|
||||||
|
elif not vals['is_property'] and property_tag:
|
||||||
|
vals['category_id'] = [(3, property_tag.id)]
|
||||||
|
if len(self.relation_owner_ids) > 0:
|
||||||
|
vals['category_id'] = [(4, owner_tag.id)]
|
||||||
|
else:
|
||||||
|
vals['category_id'] = [(3, owner_tag.id)]
|
||||||
|
return super(ResPartner, self).write(vals)
|
||||||
|
|
||||||
|
@api.model
|
||||||
|
def create(self, vals):
|
||||||
|
property_tag = self.env.ref('bemade_sethy_configuration.partner_tag_property', raise_if_not_found=False)
|
||||||
|
if 'is_property' in vals:
|
||||||
|
if vals['is_property'] and property_tag:
|
||||||
|
vals['category_id'] = [(4, property_tag.id)]
|
||||||
|
elif not vals['is_property'] and property_tag:
|
||||||
|
vals['category_id'] = [(3, property_tag.id)]
|
||||||
|
return super(ResPartner, self).create(vals)
|
||||||
|
|
||||||
|
@api.onchange('is_property')
|
||||||
|
def _inverse_is_property(self):
|
||||||
|
property_tag = self.env.ref('bemade_sethy_configuration.partner_tag_property', raise_if_not_found=False)
|
||||||
|
for partner in self:
|
||||||
|
if partner.is_property:
|
||||||
|
partner.category_id |= property_tag
|
||||||
|
else:
|
||||||
|
partner.category_id -= property_tag
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue