Skip to content

Commit

Permalink
[ADD] sports_coach: Adding the module
Browse files Browse the repository at this point in the history
Add Sport Coaches industry app with Sales, Invoicing, CRM, Appointment,
Project, Employees, Knowledge, Contacts, and Timesheets. Includes
appointment types, project templates, products, and demo data
(SO, contacts, appointments, timesheets, CRM opportunities).

task-4160636
  • Loading branch information
jaeschwa authored and dhrs-odoo committed Sep 19, 2024
1 parent 7302dc5 commit df86035
Show file tree
Hide file tree
Showing 19 changed files with 1,880 additions and 0 deletions.
44 changes: 44 additions & 0 deletions sports-coach/__manifest__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
# -*- coding: utf-8 -*-
{
'name': 'Studio customizations',
'version': 'saas~17.4.1.0',
'category': 'Studio',
'description': u"""
This module has been generated by Odoo Studio.
It contains the apps created with Studio and the customizations of existing apps.
""",
'author': 'Sports Coach',
'depends': [
'appointment_account_payment',
'appointment_crm',
'appointment_hr',
'base_vat',
'knowledge',
'sale_crm',
'sale_project_forecast',
'web_studio',
],
'data': [
'data/ir_attachment_pre.xml',
'data/project_task_type.xml',
'data/project_project.xml',
'data/product_product.xml',
'data/appointment_type.xml',
'data/crm_stage.xml',
'data/knowledge_cover.xml',
'data/knowledge_article.xml',
'data/product_pricelist.xml',
],
'demo': [
'demo/res_partner.xml',
'demo/account_analytic_account.xml',
'demo/crm_lead.xml',
'demo/hr_employee.xml',
'demo/sale_order.xml',
'demo/sale_order_line.xml',
'demo/project_task.xml',
'demo/project_project.xml',
'demo/sale_order_confirm.xml',
],
'license': 'OPL-1',
}
22 changes: 22 additions & 0 deletions sports-coach/data/appointment_type.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
<?xml version='1.0' encoding='UTF-8'?>
<odoo>
<record id="appointment_type_1" model="appointment.type">
<field name="name">60-min Personal Training Session</field>
<field name="category">recurring</field>
<field name="avatars_display">hide</field>
</record>
<record id="appointment_type_2" model="appointment.type">
<field name="name">30-min Fitness Assessment</field>
<field name="appointment_duration">0.5</field>
<field name="category">recurring</field>
<field name="avatars_display">hide</field>
<field name="has_payment_step" eval="True"/>
<field name="product_id" ref="product_product_11"/>
</record>
<record id="appointment_type_3" model="appointment.type">
<field name="name">90-min Sport-Specific Coaching</field>
<field name="appointment_duration">1.5</field>
<field name="category">recurring</field>
<field name="avatars_display">hide</field>
</record>
</odoo>
23 changes: 23 additions & 0 deletions sports-coach/data/crm_stage.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
<?xml version='1.0' encoding='UTF-8'?>
<odoo noupdate="1">
<record id="crm.stage_lead1" model="crm.stage" forcecreate="1">
<field name="name">Initial Contact</field>
<field name="sequence" eval="False"/>
</record>
<record id="crm.stage_lead2" model="crm.stage" forcecreate="1">
<field name="name">Assessment</field>
</record>
<record id="crm.stage_lead3" model="crm.stage" forcecreate="1">
<field name="name">Proposal</field>
<field name="sequence">2</field>
</record>
<record id="crm.stage_lead4" model="crm.stage" forcecreate="1">
<field name="name">Won</field>
<field name="sequence">4</field>
<field name="is_won" eval="True"/>
</record>
<record id="crm_stage_5" model="crm.stage">
<field name="name">Negotiation</field>
<field name="sequence">3</field>
</record>
</odoo>
13 changes: 13 additions & 0 deletions sports-coach/data/ir_attachment_pre.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
<?xml version='1.0' encoding='UTF-8'?>
<odoo noupdate="1">
<record id="ir_attachment_623" model="ir.attachment">
<field name="name">unsplash_IHMe-FZjHzU_Odoo for Sports Coach.jpg</field>
<field name="url">/unsplash/IHMe-FZjHzU/Odoo for Sports Coach.jpg</field>
<field name="access_token">cfdaf84d-fca5-43b2-b525-103621dfc9ea</field>
</record>
<record id="ir_attachment_624" model="ir.attachment">
<field name="name">unsplash_hC7FL8_x12A_.jpg</field>
<field name="url">/unsplash/hC7FL8_x12A/.jpg</field>
<field name="access_token">ad0b1f77-5272-4817-9f3f-604435640065</field>
</record>
</odoo>
65 changes: 65 additions & 0 deletions sports-coach/data/knowledge_article.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
<?xml version='1.0' encoding='UTF-8'?>
<odoo>
<record id="knowledge_article_33" model="knowledge.article">
<field name="name">Odoo for Sports Coach</field>
<field name="body"><![CDATA[<p data-last-history-steps="3283066342648859"><span class="display-4-fs"><strong>Odoo for Sports Coach</strong></span></p><p class="null">Welcome to your new Odoo Sports Coach package! This guide will help you navigate the key features and get your coaching business up and running efficiently.</p><div data-oe-protected="true" class="o_knowledge_behavior_anchor o_knowledge_behavior_type_toc" tabindex="-1"><div class="o_knowledge_toc_content"><a href="#" data-oe-nodeid="0" class="o_no_link_popover d-block o_knowledge_toc_link o_knowledge_toc_link_depth_0">Basics</a><a href="#" data-oe-nodeid="1" class="o_no_link_popover d-block o_knowledge_toc_link o_knowledge_toc_link_depth_1">Appointment Scheduling&nbsp;📆</a><a href="#" data-oe-nodeid="2" class="o_no_link_popover d-block o_knowledge_toc_link o_knowledge_toc_link_depth_1">Client Management (CRM)&nbsp;🎯</a><a href="#" data-oe-nodeid="3" class="o_no_link_popover d-block o_knowledge_toc_link o_knowledge_toc_link_depth_1">Manage your services&nbsp;👟</a><a href="#" data-oe-nodeid="4" class="o_no_link_popover d-block o_knowledge_toc_link o_knowledge_toc_link_depth_1">Project Tracking&nbsp;📈</a><a href="#" data-oe-nodeid="5" class="o_no_link_popover d-block o_knowledge_toc_link o_knowledge_toc_link_depth_1">Invoicing&nbsp;🧾</a><a href="#" data-oe-nodeid="6" class="o_no_link_popover d-block o_knowledge_toc_link o_knowledge_toc_link_depth_1">Getting Started</a><a href="#" data-oe-nodeid="7" class="o_no_link_popover d-block o_knowledge_toc_link o_knowledge_toc_link_depth_1">Tips for Success</a><a href="#" data-oe-nodeid="8" class="o_no_link_popover d-block o_knowledge_toc_link o_knowledge_toc_link_depth_0">Do you want to go further?&nbsp;</a></div></div><p class="null"><br></p><h1>Basics</h1> <hr><h3 class="null">Appointment Scheduling&nbsp;📆</h3><p class="null">Use the Appointment app to allow clients to book sessions easily:</p><ul class="null">
<li class="null">Set up appointment types (e.g., "60-min Personal Training", "30-min Assessment")</li>
<li class="null">Define your availability</li>
<li class="null">Let clients book directly through your booking page</li>
</ul><p class="null"><a class="btn btn-outline-primary btn-sm" href="https://www.odoo.com/app/appointments">🎓 Appointment</a></p><p class="null"><br></p><h3 class="null">Client Management (CRM)&nbsp;🎯</h3><p class="null">Track potential and current clients:</p><ul class="null">
<li class="null">Manage leads and opportunities</li>
<li class="null">Follow up on inquiries</li>
<li class="null">Convert leads into clients</li>
</ul><p class="null"><a class="btn btn-outline-primary btn-sm" href="https://www.odoo.com/documentation/master/applications/sales/crm.html">🎓 CRM</a></p><p class="null"><br></p><h3 class="null">Manage your services&nbsp;👟</h3><p class="null">Create and manage your coaching services:</p><ul class="null">
<li class="null">Set up services like "10-Session Personal Training Package" or "3-Month Transformation Program"</li>
<li class="null">Define pricing and project tracking needs for each service</li>
</ul><p><a href="https://www.odoo.com/documentation/master/applications/sales/sales.html" class="btn btn-outline-primary btn-sm">🎓 Sales</a></p><div class="o_editor_banner o_not_editable lh-1 d-flex align-items-center alert alert-info pb-0 pt-3" data-oe-protected="true">
<i class="o_editor_banner_icon mb-3 fst-normal">🚀</i>
<div class="w-100 px-3" data-oe-protected="false">
<p>If you want to push your quotation building much further&nbsp;and add all the power of Spreadsheet beneath any line of your Sales Orders,&nbsp;use the&nbsp;quote calculation feature.&nbsp;</p></div>
</div> <h3 class="null"><br></h3><h3 class="null">Project Tracking&nbsp;📈</h3><p class="null">Use the Project app to manage longer-term client programs:</p><ul class="null">
<li class="null">Create tasks for each stage of a client's journey</li>
<li class="null">Track progress and set milestones</li>
<li class="null">Collaborate with clients on their goals</li>
</ul><p><a href="https://www.odoo.com/documentation/master/applications/services/project.html" class="btn btn-outline-primary btn-sm">🎓 Project</a></p><p><br></p><h3 class="null">Invoicing&nbsp;🧾</h3><p class="null">Easily bill clients for your services:</p><ul class="null">
<li class="null">Generate invoices automatically from sales orders</li>
<li class="null">Track payments and send reminders</li>
</ul><p><a href="https://www.odoo.com/documentation/master/applications/finance/accounting/customer_invoices.html" class="btn btn-outline-primary btn-sm">🎓 Invoicing</a></p><p><br></p><div class="o_editor_banner o_not_editable lh-1 d-flex align-items-center alert alert-success pb-0 pt-3" data-oe-protected="true">
<i class="o_editor_banner_icon mb-3 fst-normal">✅</i>
<div class="w-100 px-3" data-oe-protected="false">
<h2 class="null">Getting Started</h2><ol><li><strong>Set Up Your Services</strong>: Navigate to Sales &gt; Products and set up your coaching services.</li><li><strong>Configure Appointment Types</strong>: In the Appointment app, create types that match your services.</li><li><strong>Manage Your Calendar</strong>: Use the Calendar app to block off your availability and personal time.</li><li><strong>Create Client Profiles</strong>: As you get inquiries, add them to your CRM and Contacts.</li><li><strong>Start Tracking Projects</strong>: For services that require ongoing management, create a project in the Project app.</li><li><strong>Invoice Your Clients</strong>: Use the Invoicing app to bill clients for completed services.</li></ol><p>Struggling with your setup? Reach us to get a demo!</p><p><a href="https://www.odoo.com/contactus" class="btn btn-secondary">Reach us</a></p>
</div>
</div><h2 class="null"><br></h2><div class="o_editor_banner o_not_editable lh-1 d-flex align-items-center alert alert-info pb-0 pt-3" data-oe-protected="true">
<i class="o_editor_banner_icon mb-3 fst-normal">💡</i>
<div class="w-100 px-3" data-oe-protected="false">
<h2 class="null">Tips for Success</h2><ul class="null">
<li class="null">Regularly update your CRM to keep track of potential clients and follow-ups.</li>
<li class="null">Use the project templates for standardized programs to save time.</li>
<li class="null">Encourage clients to book through your Appointment page to reduce scheduling back-and-forth.</li>
<li class="null">Utilize the invoicing reminders to ensure timely payments.</li>
</ul><p class="null">Remember, Odoo is flexible and can adapt to your specific needs. Don't hesitate to explore and customize as your coaching business grows!</p>
</div>
</div><p><br></p><h1>Do you want to go further?&nbsp;</h1> <hr><p class="null">Odoo offers you infinite possibilities, such as:</p><ul class="null">
<li class="null">Create a stunning <strong>Website</strong> to showcase your coaching services and allow clients to book sessions online.</li>
<li class="null">Develop and sell online fitness courses with the <strong>eLearning</strong> platform, expanding your reach beyond in-person training.</li>
<li class="null">Gather valuable client feedback and track progress effortlessly using <strong>Surveys</strong>.</li>
<li class="null">Organize group classes, workshops, and fitness events easily with the <strong>Events</strong> app.</li>
<li class="null">Manage your team of coaches and staff efficiently with <strong>Employees</strong>.</li>
<li class="null">Track fitness equipment and sell merchandise through your integrated <strong>eCommerce</strong> store.</li>
<li class="null">Engage clients with targeted campaigns using <strong>Email Marketing</strong> and <strong>Social Marketing</strong>.</li>
</ul><p class="null">These all go free in your current subscription; feel free to explore! 🙃</p><p class="null"><br></p><div class="o_editor_banner o_not_editable lh-1 d-flex align-items-center alert alert-info pb-0 pt-3" data-oe-protected="true">
<i class="o_editor_banner_icon mb-3 fst-normal">🚀</i>
<div class="w-100 px-3" data-oe-protected="false">
<p>Would you like to discuss your Odoo setup with us or go even further?&nbsp;</p><p><a class="btn btn-secondary" href="https://www.odoo.com/contactus">Reach us</a></p>
</div>
</div><p><br></p>]]></field>
<field name="icon">🤸</field>
<field name="cover_image_id" ref="knowledge_cover_9"/>
<field name="internal_permission">write</field>
<field name="inherited_permission">write</field>
<field name="sequence">16</field>
<field name="category">workspace</field>
<field name="last_edition_uid" ref="base.user_admin"/>
<field name="is_article_visible_by_everyone" eval="True"/>
</record>
</odoo>
9 changes: 9 additions & 0 deletions sports-coach/data/knowledge_cover.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
<?xml version='1.0' encoding='UTF-8'?>
<odoo noupdate="1">
<record id="knowledge_cover_8" model="knowledge.cover">
<field name="attachment_id" ref="ir_attachment_623"/>
</record>
<record id="knowledge_cover_9" model="knowledge.cover">
<field name="attachment_id" ref="ir_attachment_624"/>
</record>
</odoo>
7 changes: 7 additions & 0 deletions sports-coach/data/product_pricelist.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
<?xml version='1.0' encoding='UTF-8'?>
<odoo noupdate="1">
<record id="product_pricelist_1" model="product.pricelist">
<field name="name">Default</field>
<field name="sequence">10</field>
</record>
</odoo>
46 changes: 46 additions & 0 deletions sports-coach/data/product_product.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
<?xml version='1.0' encoding='UTF-8'?>
<odoo noupdate="1">
<record id="product_product_7" model="product.product">
<field name="name">10-Session Personal Training Package</field>
<field name="service_tracking">task_in_project</field>
<field name="list_price">800.0</field>
<field name="purchase_ok" eval="False"/>
<field name="service_type">timesheet</field>
<field name="invoice_policy">order</field>
<field name="project_template_id" ref="project_project_2"/>
</record>
<record id="product_product_8" model="product.product">
<field name="name">Single Training Session</field>
<field name="list_price">100.0</field>
<field name="purchase_ok" eval="False"/>
<field name="uom_id" ref="uom.product_uom_hour"/>
<field name="uom_po_id" ref="uom.product_uom_hour"/>
<field name="service_type">timesheet</field>
<field name="invoice_policy">order</field>
</record>
<record id="product_product_9" model="product.product">
<field name="name">3-Month Transformation Program</field>
<field name="service_tracking">task_in_project</field>
<field name="list_price">1500.0</field>
<field name="purchase_ok" eval="False"/>
<field name="service_type">timesheet</field>
<field name="invoice_policy">order</field>
<field name="project_template_id" ref="project_project_3"/>
</record>
<record id="product_product_10" model="product.product">
<field name="name">Sport-Specific Performance Package</field>
<field name="service_tracking">task_in_project</field>
<field name="list_price">1000.0</field>
<field name="purchase_ok" eval="False"/>
<field name="service_type">timesheet</field>
<field name="invoice_policy">order</field>
<field name="project_template_id" ref="project_project_4"/>
</record>
<record id="product_product_11" model="product.product">
<field name="name">Fitness Assessment</field>
<field name="list_price">75.0</field>
<field name="purchase_ok" eval="False"/>
<field name="service_type">timesheet</field>
<field name="invoice_policy">order</field>
</record>
</odoo>
21 changes: 21 additions & 0 deletions sports-coach/data/project_project.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
<?xml version='1.0' encoding='UTF-8'?>
<odoo noupdate="1">
<record id="project_project_2" model="project.project">
<field name="name">10-Session Personal Training Package</field>
<field name="allow_billable" eval="True"/>
<field name="favorite_user_ids" eval="[(6, 0, [ref('base.user_admin')])]"/>
<field name="type_ids" eval="[(6, 0, [ref('project_task_type_9'), ref('project_task_type_12')])]"/>
</record>
<record id="project_project_3" model="project.project">
<field name="name">3-Month Transformation Program</field>
<field name="allow_billable" eval="True"/>
<field name="favorite_user_ids" eval="[(6, 0, [ref('base.user_admin')])]"/>
<field name="type_ids" eval="[(6, 0, [ref('project_task_type_9'), ref('project_task_type_13')])]"/>
</record>
<record id="project_project_4" model="project.project">
<field name="name">Sport-Specific Performance Package</field>
<field name="allow_billable" eval="True"/>
<field name="favorite_user_ids" eval="[(6, 0, [ref('base.user_admin')])]"/>
<field name="type_ids" eval="[(6, 0, [ref('project_task_type_9'), ref('project_task_type_14')])]"/>
</record>
</odoo>
20 changes: 20 additions & 0 deletions sports-coach/data/project_task_type.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
<?xml version='1.0' encoding='UTF-8'?>
<odoo noupdate="1">
<record id="project_task_type_9" model="project.task.type">
<field name="name">New</field>
<field name="sequence" eval="False"/>
<field name="user_id" eval="False"/>
</record>
<record id="project_task_type_12" model="project.task.type">
<field name="name">Done</field>
<field name="user_id" eval="False"/>
</record>
<record id="project_task_type_13" model="project.task.type">
<field name="name">Done</field>
<field name="user_id" eval="False"/>
</record>
<record id="project_task_type_14" model="project.task.type">
<field name="name">Done</field>
<field name="user_id" eval="False"/>
</record>
</odoo>
38 changes: 38 additions & 0 deletions sports-coach/demo/account_analytic_account.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
<?xml version='1.0' encoding='UTF-8'?>
<odoo>
<record id="account_analytic_account_1" model="account.analytic.account">
<field name="name">Internal</field>
<field name="plan_id" ref="analytic.analytic_plan_projects"/>
<field name="root_plan_id" ref="analytic.analytic_plan_projects"/>
</record>
<record id="account_analytic_account_2" model="account.analytic.account">
<field name="name">10-Session Personal Training Package</field>
<field name="plan_id" ref="analytic.analytic_plan_projects"/>
<field name="root_plan_id" ref="analytic.analytic_plan_projects"/>
<field name="company_id" eval="False"/>
</record>
<record id="account_analytic_account_3" model="account.analytic.account">
<field name="name">3-Month Transformation Program</field>
<field name="plan_id" ref="analytic.analytic_plan_projects"/>
<field name="root_plan_id" ref="analytic.analytic_plan_projects"/>
<field name="company_id" eval="False"/>
</record>
<record id="account_analytic_account_4" model="account.analytic.account">
<field name="name">Sport-Specific Performance Package</field>
<field name="plan_id" ref="analytic.analytic_plan_projects"/>
<field name="root_plan_id" ref="analytic.analytic_plan_projects"/>
<field name="company_id" eval="False"/>
</record>
<record id="account_analytic_account_5" model="account.analytic.account">
<field name="name">S00001</field>
<field name="plan_id" ref="analytic.analytic_plan_projects"/>
<field name="root_plan_id" ref="analytic.analytic_plan_projects"/>
<field name="partner_id" ref="res_partner_13"/>
</record>
<record id="account_analytic_account_6" model="account.analytic.account">
<field name="name">S00003</field>
<field name="plan_id" ref="analytic.analytic_plan_projects"/>
<field name="root_plan_id" ref="analytic.analytic_plan_projects"/>
<field name="partner_id" ref="res_partner_20"/>
</record>
</odoo>
Loading

0 comments on commit df86035

Please sign in to comment.