Membership and Base_contact flow

bzr revid: solanki.priyesh@gmail.com-20081027134843-v5n9csw5822r2x4d
This commit is contained in:
Priyesh
2008-10-27 19:18:43 +05:30
parent a963fa9775
commit 1b7e4c4a29
6 changed files with 291 additions and 55 deletions
+3 -2
View File
@@ -20,12 +20,13 @@
Pay attention that this module converts the existing addresses into "addresses + contacts". It means that some fields of the addresses will be missing (like the contact name), since these are supposed to be defined in an other object.
""",
"depends" : ["base"],
"depends" : ["base", "process"],
"init_xml" : [],
"demo_xml" : ["base_contact_demo.xml"],
"update_xml" : [
"security/ir.model.access.csv",
'base_contact_view.xml'
'base_contact_view.xml',
"process/base_contact_process.xml"
],
"active": False,
"installable": True
+54 -50
View File
@@ -27,40 +27,40 @@
<field name="first_name" select="1"/>
<notebook colspan="4" >
<page string="General">
<newline/>
<separator string="General Information" colspan="4"/>
<field name="mobile" select="2"/>
<field name="title" select="1" />
<field name="website"/>
<field name="lang_id"/>
<field name="active"/>
<separator string="Functions" colspan="4"/>
<field name="job_ids" colspan="4" nolabel="1" mode="tree, form">
<form string="Functions">
<field name="function_id"/>
<field name="address_id"/>
<field name="name"/>
<field name="sequence_contact"/>
<field name="phone"/>
<field name="email"/>
<field name="date_start" />
<field name="date_stop" />
<field name="state" />
</form>
<tree string="Functions">
<field name="sequence_contact" string="Seq."/>
<field name="function_id"/>
<field name="name"/>
<field name="address_id"/>
<field name="phone"/>
<field name="email"/>
<field name="state" />
</tree>
</field>
<newline/>
<separator string="General Information" colspan="4"/>
<field name="mobile" select="2"/>
<field name="title" select="1" />
<field name="website"/>
<field name="lang_id"/>
<field name="active"/>
<separator string="Functions" colspan="4"/>
<field name="job_ids" colspan="4" nolabel="1" mode="tree, form">
<form string="Functions">
<field name="function_id"/>
<field name="address_id"/>
<field name="name"/>
<field name="sequence_contact"/>
<field name="phone"/>
<field name="email"/>
<field name="date_start" />
<field name="date_stop" />
<field name="state" />
</form>
<tree string="Functions">
<field name="sequence_contact" string="Seq."/>
<field name="function_id"/>
<field name="name"/>
<field name="address_id"/>
<field name="phone"/>
<field name="email"/>
<field name="state" />
</tree>
</field>
</page>
<page string="Extra Information">
<field name="country_id"/>
<field name="birthdate" select="1" />
<field name="country_id"/>
<field name="birthdate" select="1" />
</page>
</notebook>
</form>
@@ -105,14 +105,14 @@
<newline/>
<field name="job_ids" mode="tree, form" colspan="4">
<tree string="Contacts" editable="top">
<field name="sequence_partner"/>
<field name="sequence_partner"/>
<field name="contact_id"/>
<field name="function_id"/>
<field name="phone"/>
<field name="email"/>
</tree>
<form string="Contacts">
<field name="sequence_partner"/>
<field name="sequence_partner"/>
<field name="contact_id"/>
<field name="function_id"/>
<field name="phone"/>
@@ -240,7 +240,7 @@
</field>
</record>
<!-- Views for res.partner.job -->
<!-- Views for res.partner.job -->
<record model="ir.ui.view" id="view_partner_job_tree">
<field name="name">res.partner.job.tree</field>
<field name="model">res.partner.job</field>
@@ -253,6 +253,7 @@
<field name="function_id"/>
<field name="email"/>
<field name="phone"/>
<field name="state" />
</tree>
</field>
</record>
@@ -273,26 +274,29 @@
<field name="phone" select="2"/>
<field name="sequence_contact" select="2"/>
<field name="sequence_partner" select="2"/>
<field name="date_start" />
<field name="date_stop" />
<field name="state" select="2" />
</page>
</notebook>
</form>
</field>
</record>
<!-- Menuitem for res.partner.job -->
<record model="ir.actions.act_window" id="action_res_partner_job">
<field name="name">Functions</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">res.partner.job</field>
<field name="view_type">form</field>
</record>
<menuitem name="Partners/Functions" action="action_res_partner_job" id="menu_action_res_partner_job"/>
<!-- Act window defining a shorcut on partners to open all his contacts -->
<act_window name="Open all Partner's Function"
domain="[('name', '=', active_id)]"
res_model="res.partner.job"
src_model="res.partner"
view_mode='tree,form'
id="act_res_partner_jobs"/>
<!-- Menuitem for res.partner.job -->
<record model="ir.actions.act_window" id="action_res_partner_job">
<field name="name">Functions</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">res.partner.job</field>
<field name="view_type">form</field>
</record>
<menuitem name="Partners/Functions" action="action_res_partner_job" id="menu_action_res_partner_job"/>
<!-- Act window defining a shorcut on partners to open all his contacts -->
<act_window name="Open all Partner's Function"
domain="[('name', '=', active_id)]"
res_model="res.partner.job"
src_model="res.partner"
view_mode='tree,form'
id="act_res_partner_jobs"/>
</data>
</openerp>
@@ -0,0 +1,91 @@
<?xml version="1.0" ?>
<openerp>
<data>
<!--
Process
-->
<record id="process_process_basecontactworkflow0" model="process.process">
<field eval="&quot;&quot;&quot;base_contact workflow&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Base contact flow for services companies.&quot;&quot;&quot;" name="note"/>
<field eval="1" name="active"/>
</record>
<!--
Process node
-->
<record id="process_node_contacts0" model="process.node">
<field name="menu_id" ref="base_contact.menu_partner_contact_form"/>
<field name="model_id" ref="base_contact.model_res_partner_contact"/>
<field eval="&quot;&quot;&quot;state&quot;&quot;&quot;" name="kind"/>
<field eval="&quot;&quot;&quot;People you work with.&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Contacts&quot;&quot;&quot;" name="name"/>
<field name="process_id" ref="process_process_basecontactworkflow0"/>
<field eval="1" name="flow_start"/>
</record>
<record id="process_node_partners0" model="process.node">
<field name="menu_id" ref="base.menu_partner_form"/>
<field name="model_id" ref="base.model_res_partner"/>
<field eval="&quot;&quot;&quot;state&quot;&quot;&quot;" name="kind"/>
<field eval="&quot;&quot;&quot;Companies you work with.&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Partners&quot;&quot;&quot;" name="name"/>
<field name="process_id" ref="process_process_basecontactworkflow0"/>
<field eval="1" name="flow_start"/>
</record>
<record id="process_node_function0" model="process.node">
<field name="menu_id" ref="base_contact.menu_action_res_partner_job"/>
<field name="model_id" ref="base_contact.model_res_partner_job"/>
<field eval="&quot;&quot;&quot;state&quot;&quot;&quot;" name="kind"/>
<field eval="&quot;&quot;&quot;Jobs at a same partner address.&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Function&quot;&quot;&quot;" name="name"/>
<field name="process_id" ref="process_process_basecontactworkflow0"/>
<field eval="0" name="flow_start"/>
</record>
<record id="process_node_addresses0" model="process.node">
<field name="menu_id" ref="base.menu_partner_address_form"/>
<field name="model_id" ref="base.model_res_partner_address"/>
<field eval="&quot;&quot;&quot;state&quot;&quot;&quot;" name="kind"/>
<field eval="&quot;&quot;&quot;Working and private addresses.&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Addresses&quot;&quot;&quot;" name="name"/>
<field name="process_id" ref="process_process_basecontactworkflow0"/>
<field eval="0" name="flow_start"/>
</record>
<!--
Process Transition
-->
<record id="process_transition_contacttofunction0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;Contact to function&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Defines contacts and functions.&quot;&quot;&quot;" name="note"/>
<field model="process.node" name="target_node_id" ref="process_node_function0"/>
<field model="process.node" name="source_node_id" ref="process_node_contacts0"/>
</record>
<record id="process_transition_functiontoaddress0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;Function to address&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Define functions and address.&quot;&quot;&quot;" name="note"/>
<field model="process.node" name="target_node_id" ref="process_node_addresses0"/>
<field model="process.node" name="source_node_id" ref="process_node_function0"/>
</record>
<record id="process_transition_partnertoaddress0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;Partner to address&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Define partners and their addresses.&quot;&quot;&quot;" name="note"/>
<field model="process.node" name="target_node_id" ref="process_node_addresses0"/>
<field model="process.node" name="source_node_id" ref="process_node_partners0"/>
</record>
</data>
</openerp>
+3 -2
View File
@@ -5,7 +5,7 @@
"author" : "Tiny",
"category" : "Generic Modules/Association",
"depends" : [
"base", "product", "account",
"base", "product", "account", "process"
],
"demo_xml" : [
#"demo_data.xml",
@@ -16,7 +16,8 @@
],
"update_xml" : [
"security/ir.model.access.csv",
"membership_view.xml","membership_wizard.xml"
"membership_view.xml","membership_wizard.xml",
"process/membership_process.xml"
],
"active" : False,
"installable" : True,
@@ -0,0 +1,139 @@
<?xml version="1.0" ?>
<openerp>
<data>
<!--
Process
-->
<record id="process_process_membershipworkflow0" model="process.process">
<field eval="&quot;&quot;&quot;Membership workflow&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Membership flow for services companies.&quot;&quot;&quot;" name="note"/>
<field eval="1" name="active"/>
</record>
<!--
Process Node
-->
<record id="process_node_membershipproduct0" model="process.node">
<field name="menu_id" ref="membership.menu_membership_products"/>
<field name="model_id" ref="product.model_product_product"/>
<field eval="&quot;&quot;&quot;state&quot;&quot;&quot;" name="kind"/>
<field eval="&quot;&quot;&quot;Define membership product.&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Membership product&quot;&quot;&quot;" name="name"/>
<field name="process_id" ref="process_process_membershipworkflow0"/>
<field eval="1" name="flow_start"/>
</record>
<record id="process_node_waitingmember0" model="process.node">
<field name="menu_id" ref="account.menu_action_invoice_tree1"/>
<field name="model_id" ref="account.model_account_invoice"/>
<field eval="&quot;&quot;&quot;state&quot;&quot;&quot;" name="kind"/>
<field eval="&quot;&quot;&quot;Draft invoice for membership.&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Waiting member&quot;&quot;&quot;" name="name"/>
<field name="process_id" ref="process_process_membershipworkflow0"/>
<field eval="0" name="flow_start"/>
</record>
<record id="process_node_invoicedmember0" model="process.node">
<field name="menu_id" ref="account.menu_action_invoice_tree1"/>
<field name="model_id" ref="account.model_account_invoice"/>
<field eval="&quot;&quot;&quot;state&quot;&quot;&quot;" name="kind"/>
<field eval="&quot;&quot;&quot;Open invoice.&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Invoiced member&quot;&quot;&quot;" name="name"/>
<field name="process_id" ref="process_process_membershipworkflow0"/>
<field eval="0" name="flow_start"/>
</record>
<record id="process_node_paidmember0" model="process.node">
<field name="menu_id" ref="account.menu_action_invoice_tree1"/>
<field name="model_id" ref="account.model_account_invoice"/>
<field eval="&quot;&quot;&quot;state&quot;&quot;&quot;" name="kind"/>
<field eval="&quot;&quot;&quot;Membership invoice paid.&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Paid member&quot;&quot;&quot;" name="name"/>
<field name="process_id" ref="process_process_membershipworkflow0"/>
<field eval="&quot;&quot;&quot;object.state=='paid'&quot;&quot;&quot;" name="model_states"/>
<field eval="0" name="flow_start"/>
</record>
<record id="process_node_setassociation0" model="process.node">
<field name="menu_id" ref="membership.menu_members"/>
<field name="model_id" ref="base.model_res_partner"/>
<field eval="&quot;&quot;&quot;state&quot;&quot;&quot;" name="kind"/>
<field eval="&quot;&quot;&quot;Set an associate member of partner.&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Set association&quot;&quot;&quot;" name="name"/>
<field name="process_id" ref="process_process_membershipworkflow0"/>
<field eval="&quot;&quot;&quot;object.state=='paid'&quot;&quot;&quot;" name="model_states"/>
<field eval="0" name="flow_start"/>
</record>
<record id="process_node_associatedmember0" model="process.node">
<field name="menu_id" ref="membership.menu_members"/>
<field name="model_id" ref="base.model_res_partner"/>
<field eval="&quot;&quot;&quot;state&quot;&quot;&quot;" name="kind"/>
<field eval="&quot;&quot;&quot;Member is associated.&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Associated member&quot;&quot;&quot;" name="name"/>
<field name="process_id" ref="process_process_membershipworkflow0"/>
<field eval="&quot;&quot;&quot;object.state=='associated'&quot;&quot;&quot;" name="model_states"/>
<field eval="0" name="flow_start"/>
</record>
<!--
Process Transition
-->
<record id="process_transition_producttomember0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;Product to member&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Define product for membership.&quot;&quot;&quot;" name="note"/>
<field model="process.node" name="target_node_id" ref="process_node_waitingmember0"/>
<field model="process.node" name="source_node_id" ref="process_node_membershipproduct0"/>
</record>
<record id="process_transition_waitingtoinvoice0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;Waiting to invoice&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Draft invoice is now open.&quot;&quot;&quot;" name="note"/>
<field model="process.node" name="target_node_id" ref="process_node_invoicedmember0"/>
<field model="process.node" name="source_node_id" ref="process_node_waitingmember0"/>
</record>
<record id="process_transition_action_create0" model="process.transition.action">
<field eval="&quot;&quot;&quot;invoice_open&quot;&quot;&quot;" name="action"/>
<field eval="&quot;&quot;&quot;object&quot;&quot;&quot;" name="state"/>
<field eval="&quot;&quot;&quot;Create&quot;&quot;&quot;" name="name"/>
<field name="transition_id" ref="process_transition_waitingtoinvoice0"/>
</record>
<record id="process_transition_invoicetopaid0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;Invoice to paid&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Invoice is be paid.&quot;&quot;&quot;" name="note"/>
<field model="process.node" name="target_node_id" ref="process_node_paidmember0"/>
<field model="process.node" name="source_node_id" ref="process_node_invoicedmember0"/>
</record>
<record id="process_transition_invoicetoassociate0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;invoice to associate&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Invoiced member may be Associated member.&quot;&quot;&quot;" name="note"/>
<field model="process.node" name="target_node_id" ref="process_node_associatedmember0"/>
<field model="process.node" name="source_node_id" ref="process_node_invoicedmember0"/>
</record>
<record id="process_transition_associationpartner0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;Association Partner&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Associated partner.&quot;&quot;&quot;" name="note"/>
<field model="process.node" name="target_node_id" ref="process_node_associatedmember0"/>
<field model="process.node" name="source_node_id" ref="process_node_setassociation0"/>
</record>
</data>
</openerp>
@@ -1,5 +1,5 @@
"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
"access_membership_membership_line_partner_manager","membership.membership_line partner_manager","model_membership_membership_line","base.group_partner_manager",1,1,1,1
"access_membership_membership_line","membership.membership_line","model_membership_membership_line","base.group_user",1,0,0,0
"access_membership_membership_line","membership.membership_line","model_membership_membership_line",,1,0,0,0
"access_report_partner_member_year","report.partner_member.year","model_report_partner_member_year","base.group_partner_manager",1,0,0,0
"access_report_partner_member_year_new","report.partner_member.year_new","model_report_partner_member_year_new","base.group_partner_manager",1,0,0,0
1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
2 access_membership_membership_line_partner_manager membership.membership_line partner_manager model_membership_membership_line base.group_partner_manager 1 1 1 1
3 access_membership_membership_line membership.membership_line model_membership_membership_line base.group_user 1 0 0 0
4 access_report_partner_member_year report.partner_member.year model_report_partner_member_year base.group_partner_manager 1 0 0 0
5 access_report_partner_member_year_new report.partner_member.year_new model_report_partner_member_year_new base.group_partner_manager 1 0 0 0