Skip to content

Commit 6cd1df0

Browse files
committed
[ADD] florist: Florist
Odoo for Florist - This setup is perfect for florists who specialize in providing fresh flowers, customized bouquets, and event floral designs, catering to walk-in customers and fulfilling orders for occasions like weddings, birthday dinners, or corporate events. - The CRM app helps you manage customer relationships, event requests, and flower inquiries easily. - The Sales app makes it simple to handle customer orders, including big floral arrangements for weddings, corporate events, and other special occasions. - The Purchase app manages vendor and ensures your shop is stocked with the freshest flowers. - The Point of Sale app handles in-store sales of bouquets, flowers, gift cards, and more. - The Website app allows customers to showcase your flowers vision and services online. Task-4757667 closes #649 Signed-off-by: Vallaeys Valentin (vava) <[email protected]>
1 parent 2fe9ad9 commit 6cd1df0

File tree

106 files changed

+3136
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

106 files changed

+3136
-0
lines changed

.tx/config

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -244,6 +244,15 @@ resource_name = fitness
244244
replace_edited_strings = false
245245
keep_translations = false
246246

247+
[o:odoo:p:odoo-s18-2:r:florist]
248+
file_filter = florist/i18n/<lang>.po
249+
source_file = florist/i18n/florist.pot
250+
type = PO
251+
minimum_perc = 0
252+
resource_name = florist
253+
replace_edited_strings = false
254+
keep_translations = false
255+
247256
[o:odoo:p:odoo-s18-2:r:fmcg_store]
248257
file_filter = fmcg_store/i18n/<lang>.po
249258
source_file = fmcg_store/i18n/fmcg_store.pot

florist/__manifest__.py

Lines changed: 94 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,94 @@
1+
{
2+
'name': 'Florist',
3+
'version': '1.0',
4+
'category': 'Retail',
5+
'author': 'Odoo S.A.',
6+
'depends': [
7+
'crm_enterprise',
8+
'knowledge',
9+
'pos_enterprise',
10+
'pos_hr',
11+
'pos_loyalty',
12+
'pos_online_payment',
13+
'project_enterprise',
14+
'sale_crm',
15+
'sale_loyalty',
16+
'sale_purchase',
17+
'spreadsheet_sale_management',
18+
'website_crm',
19+
],
20+
'data': [
21+
'data/res_config_settings.xml',
22+
'data/ir_attachment_pre.xml',
23+
'data/pos_category.xml',
24+
'data/pos_payment_method.xml',
25+
'data/pos_config.xml',
26+
'data/product_category.xml',
27+
'data/uom_uom.xml',
28+
'data/product_template.xml',
29+
'data/product_attribute.xml',
30+
'data/product_attribute_value.xml',
31+
'data/product_pricelist.xml',
32+
'data/product_pricelist_item.xml',
33+
'data/product_template_attribute_line.xml',
34+
'data/product_template_attribute_value.xml',
35+
'data/product_product.xml',
36+
'data/project_project_stage.xml',
37+
'data/project_task_type.xml',
38+
'data/sale_order_template.xml',
39+
'data/sale_order_template_line.xml',
40+
'data/knowledge_cover.xml',
41+
'data/knowledge_article.xml',
42+
'data/mail_message.xml',
43+
'data/mail_template.xml',
44+
'data/knowledge_article_favorite.xml',
45+
'data/knowledge_tour.xml',
46+
'data/website_view.xml',
47+
'data/website_theme_apply.xml',
48+
],
49+
'demo': [
50+
'demo/crm_stage.xml',
51+
'demo/crm_tag.xml',
52+
'demo/crm_team.xml',
53+
'demo/loyalty_program.xml',
54+
'demo/hr_job.xml',
55+
'demo/res_partner.xml',
56+
'demo/res_users.xml',
57+
'demo/loyalty_rule.xml',
58+
'demo/hr_department.xml',
59+
'demo/pos_session.xml',
60+
'demo/hr_employee.xml',
61+
'demo/crm_lead.xml',
62+
'demo/purchase_order.xml',
63+
'demo/purchase_order_line.xml',
64+
'demo/pos_order.xml',
65+
'demo/loyalty_reward.xml',
66+
'demo/pos_order_line.xml',
67+
'demo/sale_order.xml',
68+
'demo/ir_attachment_post.xml',
69+
'demo/project_project.xml',
70+
'demo/project_task.xml',
71+
'demo/mail_activity.xml',
72+
'demo/sale_order_line.xml',
73+
'demo/sale_order_confirm.xml',
74+
'demo/product_supplierinfo.xml',
75+
'demo/website.xml',
76+
'demo/website_view.xml',
77+
'demo/website_theme_apply.xml',
78+
],
79+
'license': 'OPL-1',
80+
'assets': {
81+
'web.assets_backend': [
82+
'florist/static/src/js/my_tour.js'
83+
]
84+
},
85+
'cloc_exclude': [
86+
'data/knowledge_article.xml',
87+
'static/src/js/my_tour.js',
88+
'data/website_view.xml',
89+
'demo/website_view.xml',
90+
],
91+
'images': [
92+
'images/main.png',
93+
],
94+
}

florist/data/ir_attachment_pre.xml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
<?xml version='1.0' encoding='UTF-8'?>
2+
<odoo noupdate="1">
3+
<record id="ir_attachment_583" model="ir.attachment">
4+
<field name="name">florist</field>
5+
<field name="datas" type="base64" file="florist/static/src/binary/ir_attachment/florist.jpg"/>
6+
</record>
7+
</odoo>

florist/data/knowledge_article.xml

Lines changed: 169 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,169 @@
1+
<?xml version='1.0' encoding='UTF-8'?>
2+
<odoo>
3+
<template id="welcome_article_body">
4+
<h1 class="oe-hint" data-oe-version="1.2">Florist</h1>
5+
<p>Welcome to the <strong>Odoo Florist Package</strong>!</p>
6+
<p>
7+
This setup is perfect for florists who specialize in providing fresh flowers, customized bouquets, and event floral designs, catering to walk-in customers and fulfilling orders for occasions like weddings, birthday dinners, or corporate
8+
events.
9+
</p>
10+
<p>
11+
The package includes the Point of Sale (POS) app for handling in-store purchases, the Sales app for managing quotations and orders, the Website to showcase your floral vision and the Project app to track tasks and deadlines for specific
12+
event requests. Whether you're creating a seasonal bouquet for a gift or planning floral arrangements for a wedding, Odoo helps you stay organized and deliver beautiful results to your clients.
13+
</p>
14+
<p>Because: we can buy ourselves flowers! 💐</p>
15+
<div data-embedded="tableOfContent"></div>
16+
<h2><strong>Basics</strong></h2>
17+
<p>You can access every installed App in your Odoo database on your main dashboard.</p>
18+
<ul>
19+
<li>
20+
<p>
21+
<strong><font style="color: rgb(113, 75, 103);">The CRM app</font></strong><font class="text-o-color-5"> helps you manage customer relationships, event requests, and flower inquiries easily.</font><br />
22+
</p>
23+
</li>
24+
<li>
25+
<p>
26+
<strong>
27+
<font style="color: rgb(113, 75, 103);">The Sales app </font>
28+
<font class="text-o-color-5"><span style="font-weight: normal;">makes it simple to handle customer orders, including big floral arrangements for weddings, corporate events, and other special occasions.</span></font>
29+
</strong>
30+
</p>
31+
</li>
32+
<li>
33+
<p>
34+
<strong><font style="color: rgb(113, 75, 103);">The Purchase app</font></strong> manages vendor and ensures your shop is stocked with the freshest flowers.
35+
</p>
36+
</li>
37+
<li>
38+
<p>
39+
<strong>
40+
<font style="color: rgb(113, 75, 103);">The Point of Sale app </font><font class="text-o-color-5"><span style="font-weight: normal;">h</span></font>
41+
</strong>
42+
andles in-store sales of bouquets, flowers, gift cards, and more.
43+
</p>
44+
</li>
45+
<li>
46+
<p>
47+
<strong><font style="color: rgb(113, 75, 103);">The Website app </font></strong>allows customers to showcase your flowers vision and services online.
48+
</p>
49+
</li>
50+
</ul>
51+
<div class="o_editor_banner user-select-none o-contenteditable-false lh-1 d-flex align-items-center alert alert-info pb-0 pt-3" data-oe-role="status">
52+
<i class="o_editor_banner_icon mb-3 fst-normal" data-oe-aria-label="Banner Info">💡</i>
53+
<div class="o_editor_banner_content o-contenteditable-true w-100 px-3">
54+
<p>Odoo is entirely integrated into an App. Download it to turn your phone into a tool to manage your entire workflow.</p>
55+
</div>
56+
</div>
57+
<h2><strong>Use Case</strong></h2>
58+
<p>By uploading this module's demo data, your database has been filled with a few contacts.</p>
59+
<p>You should be able to execute the following flows to have an overview of various processes you can quickly execute with this package using Odoo.</p>
60+
<p>Of course, this is just an overview of the features included in this package. Feel free to add new apps, delete/modify demo data, and test everything around!</p>
61+
<div data-oe-role="status" class="o_editor_banner user-select-none lh-1 d-flex align-items-center alert alert-warning pb-0 pt-3 o-contenteditable-false">
62+
<i data-oe-aria-label="Banner Warning" class="o_editor_banner_icon mb-3 fst-normal">⚠️</i>
63+
<div class="w-100 px-3 o_editor_banner_content o-contenteditable-true">
64+
<p><strong>You didn't import demo data?</strong> You can still do it. Go to <strong>Apps > Industries > Upgrade your Florist Package</strong> and check the related box.</p>
65+
</div>
66+
</div>
67+
<hr />
68+
<h3>Manage Purchases</h3>
69+
<p>Ensure you have fresh flowers at all times.</p>
70+
<ol>
71+
<li><strong>Create a Purchase Order</strong>: Order the flowers, plants, and accessories you need for your business.</li>
72+
<li><strong>Choose the best deal</strong>: Pick the vendor offering the best deal for the requested materials.</li>
73+
</ol>
74+
<div class="o_editor_banner user-select-none o-contenteditable-false lh-1 d-flex align-items-center alert alert-info pb-0 pt-3" data-oe-role="status">
75+
<i class="o_editor_banner_icon mb-3 fst-normal" data-oe-aria-label="Banner Info">💡</i>
76+
<div class="o_editor_banner_content o-contenteditable-true w-100 px-3">
77+
<p>Use the chatter of a Purchase Order to communicate with the vendor about a specific delivery and post a picture if something is missing compared to what was ordered.</p>
78+
</div>
79+
</div>
80+
<hr />
81+
<h3>Manage Sales and Payments in Point of Sale</h3>
82+
<div>Easily process in-store purchases and offer flexible payment options.</div>
83+
<div><br /></div>
84+
<ol>
85+
<li>
86+
<strong>Set up product offering: </strong>Create and configure your flower products and add variants if you have different size or color for the same product. You can also add an extra charges for specific options (e.g., +£2 for a
87+
red tulip, +£10 for a medium bouquet).
88+
</li>
89+
<li><strong>Take orders in Point of Sale</strong>: Open a register and process in-store purchases such as bouquets, flowers, cards, and more.</li>
90+
<li><strong>Activate payment methods: </strong>Activate payment options such as Cash, Card, Mobile Payments, and Gift Cards directly in your POS settings.</li>
91+
<li><strong>Extend your offerings: </strong>Configure Gift Cards to offer flexible floral gifts and provide more options for your clients.</li>
92+
</ol>
93+
<div class="o_editor_banner user-select-none o-contenteditable-false lh-1 d-flex align-items-center alert alert-info pb-0 pt-3" data-oe-role="status">
94+
<i class="o_editor_banner_icon mb-3 fst-normal" data-oe-aria-label="Banner Info">💡</i>
95+
<div class="o_editor_banner_content o-contenteditable-true w-100 px-3">
96+
<p>Add<strong> product categories</strong> to organize your point of sales and make your products easier to find during busy periods. (e.g. Bouquets, Flowers, Plants, Other,...)</p>
97+
<p>Set up<strong> pricelists</strong> to manage promotions easily, like offering <strong>15% off all bouquets for Mother’s &amp; Father's Day</strong> or other seasonal events.</p>
98+
</div>
99+
</div>
100+
<hr />
101+
<h3>Manage Opportunities and Handle Tailor-Made Orders</h3>
102+
<ol>
103+
<li>
104+
<strong>Manage customer requests</strong>: Track customer inquiries coming from your Website (such as wedding floral requests or custom bouquet orders), manage engagement, follow up easily, and convert them into confirmed sales
105+
opportunities.
106+
</li>
107+
<li><strong>Create tailored sales quotations: </strong>Generate a customized Sales Quotation for weddings, birthdays, or corporate floral events, directly on the sales app.</li>
108+
</ol>
109+
<div class="o_editor_banner user-select-none o-contenteditable-false lh-1 d-flex align-items-center alert alert-info pb-0 pt-3" data-oe-role="status">
110+
<i class="o_editor_banner_icon mb-3 fst-normal" data-oe-aria-label="Banner Info">💡</i>
111+
<div class="o_editor_banner_content o-contenteditable-true w-100 px-3">
112+
<p>Use the <strong>Sales Reporting</strong> to analyze flower sales trends around major events like Valentine's Day, Mother's Day, Father's Day, or during summer wedding seasons.</p>
113+
<p>Also, create beautiful <strong>Quotation Templates</strong> for specific requests like wedding floral packages, making it faster and easier to send offers to clients.</p>
114+
</div>
115+
</div>
116+
<hr />
117+
<h3>Manage Event Requests and Deliver Floral Success</h3>
118+
<p>Easily turn event requests from Website into beautiful floral creations by creating projects</p>
119+
<ol>
120+
<li><strong>Showcase your floral vision and offer: </strong>Configure your website to highlight your floral style, present your services and get new opportunities through a contact form.</li>
121+
<li><strong>Organize event projects: </strong>Create a project to manage and organize specific events, assign tasks, set deadlines, and track progress.</li>
122+
</ol>
123+
<div class="o_editor_banner user-select-none o-contenteditable-false lh-1 d-flex align-items-center alert alert-info pb-0 pt-3" data-oe-role="status">
124+
<i class="o_editor_banner_icon mb-3 fst-normal" data-oe-aria-label="Banner Info">💡</i>
125+
<div class="o_editor_banner_content o-contenteditable-true w-100 px-3">
126+
<p>Link the "Contact Us" button on your website’s contact form to automatically <strong>create an opportunity </strong>in your CRM.</p>
127+
</div>
128+
</div>
129+
<hr />
130+
<div class="o_editor_banner user-select-none o-contenteditable-false lh-1 d-flex align-items-center alert alert-success pb-0 pt-3" data-oe-role="status">
131+
<i class="o_editor_banner_icon mb-3 fst-normal" data-oe-aria-label="Banner Success">🎉</i>
132+
<div class="o_editor_banner_content o-contenteditable-true w-100 px-3">
133+
<p>There are millions of other ways to adapt your Odoo setup to fit your business needs.</p>
134+
<p>
135+
Discover more about Odoo by diving into our<a href="https://www.odoo.com/documentation/latest/"> documentation </a>and <a href="https://www.odoo.com/slides/getting-started-15">academy</a>, and feel free to
136+
<a href="https://www.odoo.com/contactus"> request a demo </a>if you need help!
137+
</p>
138+
</div>
139+
</div>
140+
<h2>Do You Want to Go Further?</h2>
141+
<p>Odoo offers endless customization possibilities for your flower business:</p>
142+
<ul>
143+
<li>Set up recurring delivery services for offices or homes, such as a weekly bouquet delivery, with the <strong>Subscriptions App</strong>.</li>
144+
<li>Add the <strong>eCommerce </strong>features to extend your floral business.</li>
145+
<li>Organize flower workshops to engage with customers using the <strong>Events App</strong>.</li>
146+
<li>Easily handle your accounting with the integrated <strong>Accounting App</strong>.</li>
147+
<li>Track stock in real-time, manage multiple storage locations, automate restocking, and monitor flowers freshness and avoid shortages with the <strong>Inventory App</strong>.</li>
148+
<li>Use the <strong>Planning App</strong> to schedule your team’s shifts, ensuring the right staffing for busy event days.</li>
149+
</ul>
150+
<p>These all go free in your current subscription; feel free to explore! 🙃</p>
151+
<div data-oe-role="status" class="o_editor_banner user-select-none lh-1 d-flex align-items-center alert alert-info pb-0 pt-3 o-contenteditable-false">
152+
<i data-oe-aria-label="Banner Info" class="o_editor_banner_icon mb-3 fst-normal">🚀</i>
153+
<div class="w-100 px-3 o_editor_banner_content o-contenteditable-true">
154+
<p>Would you like to discuss your Odoo setup with us or go even further?</p>
155+
<p><a class="btn btn-secondary" href="https://www.odoo.com/contactus">Schedule a demo</a></p>
156+
</div>
157+
</div>
158+
<p><br /></p>
159+
</template>
160+
<record id="welcome_article" model="knowledge.article">
161+
<field name="name">Florist</field>
162+
<field name="icon">🌼</field>
163+
<field name="cover_image_id" ref="knowledge_cover_6"/>
164+
<field name="is_locked" eval="True"/>
165+
<field name="internal_permission">write</field>
166+
<field name="body"><![CDATA[]]></field>
167+
<field name="is_article_visible_by_everyone" eval="True"/>
168+
</record>
169+
</odoo>
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
<?xml version='1.0' encoding='UTF-8'?>
2+
<odoo noupdate="1">
3+
<record id="knowledge_favorite" model="knowledge.article.favorite">
4+
<field name="article_id" ref="welcome_article"/>
5+
<field name="user_id" ref="base.user_admin"/>
6+
</record>
7+
</odoo>

florist/data/knowledge_cover.xml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
<?xml version='1.0' encoding='UTF-8'?>
2+
<odoo noupdate="1">
3+
<record id="knowledge_cover_6" model="knowledge.cover">
4+
<field name="attachment_id" ref="ir_attachment_583"/>
5+
</record>
6+
</odoo>

florist/data/knowledge_tour.xml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<odoo noupdate="1">
3+
<record id="knowledge_tour" model="web_tour.tour">
4+
<field name="name">florist_knowledge_tour</field>
5+
<field name="sequence">2</field>
6+
<field name="rainbow_man_message">Welcome! Happy exploring.</field>
7+
</record>
8+
</odoo>

florist/data/mail_message.xml

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
<?xml version='1.0' encoding='UTF-8'?>
2+
<odoo noupdate="1">
3+
<record model="mail.message" id="notification_knowledge">
4+
<field name="model">discuss.channel</field>
5+
<field name="res_id" ref="mail.channel_all_employees"/>
6+
<field name="message_type">email</field>
7+
<field name="author_id" ref="base.partner_root"/>
8+
<field name="subtype_id" ref="mail.mt_comment"/>
9+
<field name="subject">🚀 Get started with Odoo Florist Shop</field>
10+
<field name="body" model="knowledge.article" eval="
11+
'&lt;span>&#x1F44B; Hi! Follow this &lt;a href=\''
12+
+ obj().env.ref('florist.welcome_article').article_url
13+
+ '\'>onboarding guide&lt;/a>. You can find it anytime in the Knowledge app.&lt;/span>'"/>
14+
</record>
15+
</odoo>

0 commit comments

Comments
 (0)