Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 14 additions & 9 deletions helpdesk_mgmt/README.rst
Original file line number Diff line number Diff line change
@@ -1,7 +1,3 @@
.. image:: https://odoo-community.org/readme-banner-image
:target: https://odoo-community.org/get-involved?utm_source=readme
:alt: Odoo Community Association

===================
Helpdesk Management
===================
Expand All @@ -17,7 +13,7 @@ Helpdesk Management
.. |badge1| image:: https://img.shields.io/badge/maturity-Production%2FStable-green.png
:target: https://odoo-community.org/page/development-status
:alt: Production/Stable
.. |badge2| image:: https://img.shields.io/badge/license-AGPL--3-blue.png
.. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fhelpdesk-lightgray.png?logo=github
Expand Down Expand Up @@ -100,8 +96,15 @@ Teams
3. Set the name for the team.
4. Add the teams members.
5. You can also Activate or Deactivate teams.
6. Contact based on Helpdesk Team

- You can set a default contact for the team.
- You can allow a list of specific contacts.
- If "unique contact" is enabled, only the default contact can be
used. |image4| |image5| If nothing is configured, all contacts are
available.

|image4|
|image6|

Tags
----
Expand All @@ -113,7 +116,7 @@ Tags
4. Set the color index for the tag.
5. You can also Activate or Deactivate tags.

|image5|
|image7|

Permissions
-----------
Expand All @@ -132,8 +135,10 @@ permissions set in Helpdesk.
.. |image1| image:: https://raw.githubusercontent.com/OCA/helpdesk/17.0/helpdesk_mgmt/static/description/Channels.PNG
.. |image2| image:: https://raw.githubusercontent.com/OCA/helpdesk/17.0/helpdesk_mgmt/static/description/Categories.PNG
.. |image3| image:: https://raw.githubusercontent.com/OCA/helpdesk/17.0/helpdesk_mgmt/static/description/Stages.PNG
.. |image4| image:: https://raw.githubusercontent.com/OCA/helpdesk/17.0/helpdesk_mgmt/static/description/Teams.PNG
.. |image5| image:: https://raw.githubusercontent.com/OCA/helpdesk/17.0/helpdesk_mgmt/static/description/Tags.PNG
.. |image4| image:: https://raw.githubusercontent.com/OCA/helpdesk/17.0/helpdesk_mgmt/static/description/Team_allowed_partners.PNG
.. |image5| image:: https://raw.githubusercontent.com/OCA/helpdesk/17.0/helpdesk_mgmt/static/description/Ticket_allowed_contact.PNG
.. |image6| image:: https://raw.githubusercontent.com/OCA/helpdesk/17.0/helpdesk_mgmt/static/description/Teams.PNG
.. |image7| image:: https://raw.githubusercontent.com/OCA/helpdesk/17.0/helpdesk_mgmt/static/description/Tags.PNG

Usage
=====
Expand Down
23 changes: 23 additions & 0 deletions helpdesk_mgmt/demo/helpdesk_demo.xml
Original file line number Diff line number Diff line change
Expand Up @@ -76,6 +76,19 @@
<field name="company_id" ref="base.main_company" />
<field name="alias_id" ref="mail_alias_3" />
</record>
<record id="helpdesk_team_4" model="helpdesk.ticket.team">
<field eval="&quot;Systems&quot;" name="name" />
<field name="user_ids" eval="[(6,0,[ref('base.user_root')])]" />
<field eval="&quot;1&quot;" name="active" />
<field name="category_ids" eval="[(6,0,[ref('helpdesk_category_2')])]" />
<field name="company_id" ref="base.main_company" />
<field name="alias_id" ref="mail_alias_3" />
<field name="default_partner_id" ref="base.res_partner_1" />
<field
name="allowed_partner_ids"
eval="[(6,0,[ref('base.res_partner_1'), ref('base.res_partner_2')])]"
/>
</record>
<!-- Tags -->
<record id="helpdesk_tag_1" model="helpdesk.ticket.tag">
<field eval="&quot;Hard&quot;" name="name" />
Expand Down Expand Up @@ -190,4 +203,14 @@
<field name="team_id" ref="helpdesk_team_3" />
<field name="category_id" ref="helpdesk_category_5" />
</record>
<record id="helpdesk_ticket_9" model="helpdesk.ticket">
<field eval="&quot;System needs&quot;" name="name" />
<field eval="&quot;System needs&quot;" name="description" />
<field eval="&quot;Jamie Mads&quot;" name="partner_name" />
<field eval="&quot;2&quot;" name="priority" />
<field name="user_id" ref="base.user_demo" />
<field name="stage_id" ref="helpdesk_ticket_stage_in_progress" />
<field name="team_id" ref="helpdesk_team_4" />
<field name="channel_id" ref="helpdesk_ticket_channel_phone" />
</record>
</odoo>
28 changes: 28 additions & 0 deletions helpdesk_mgmt/models/helpdesk_ticket.py
Original file line number Diff line number Diff line change
Expand Up @@ -89,6 +89,10 @@ def _read_group_stage_ids(self, stages, domain, order):
domain="['|',('team_ids', '=', team_id),('team_ids','=',False)]",
)
partner_id = fields.Many2one(comodel_name="res.partner", string="Contact")
partner_id_domain = fields.Binary(
help="This is the computed domain to filter partners.",
compute="_compute_partner_id_domain",
)
commercial_partner_id = fields.Many2one(
string="Commercial Partner",
store=True,
Expand Down Expand Up @@ -170,6 +174,30 @@ def _onchange_partner_id(self):
self.partner_name = self.partner_id.name
self.partner_email = self.partner_id.email

@api.depends(
"team_id",
"team_id.default_partner_id",
"team_id.allowed_partner_ids",
"team_id.is_unique_partner",
)
def _compute_partner_id_domain(self):
for record in self:
if record.team_id and record.team_id.default_partner_id:
record.partner_id = record.team_id.default_partner_id
if record.team_id.is_unique_partner:
record.partner_id_domain = [
("id", "=", record.team_id.default_partner_id.id)
]
elif record.team_id.allowed_partner_ids:
partners = record.team_id.allowed_partner_ids
if record.team_id.default_partner_id:
partners |= record.team_id.default_partner_id
record.partner_id_domain = [("id", "in", partners.ids)]
else:
record.partner_id_domain = []
else:
record.partner_id_domain = []

# ---------------------------------------------------
# CRUD
# ---------------------------------------------------
Expand Down
12 changes: 12 additions & 0 deletions helpdesk_mgmt/models/helpdesk_ticket_team.py
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,13 @@ class HelpdeskTeam(models.Model):
compute="_compute_complete_name", store=True, recursive=True
)
parent_path = fields.Char(index=True, unaccent=False)
default_partner_id = fields.Many2one(
comodel_name="res.partner",
)
is_unique_partner = fields.Boolean()
allowed_partner_ids = fields.Many2many(
comodel_name="res.partner",
)

@api.depends("name", "parent_id.complete_name")
def _compute_complete_name(self):
Expand All @@ -86,6 +93,11 @@ def _compute_complete_name(self):
else:
record.complete_name = record.name

@api.onchange("default_partner_id")
def _onchange_default_partner_id(self):
if not self.default_partner_id:
self.is_unique_partner = False

def _get_applicable_stages(self):
if self:
domain = [
Expand Down
7 changes: 7 additions & 0 deletions helpdesk_mgmt/readme/CONFIGURE.md
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,13 @@ in the list view.
3. Set the name for the team.
4. Add the teams members.
5. You can also Activate or Deactivate teams.
6. Contact based on Helpdesk Team
- You can set a default contact for the team.
- You can allow a list of specific contacts.
- If "unique contact" is enabled, only the default contact can be used.
![](../static/description/Team_allowed_partners.PNG)
![](../static/description/Ticket_allowed_contact.PNG)
If nothing is configured, all contacts are available.

![](../static/description/Teams.PNG)

Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
54 changes: 28 additions & 26 deletions helpdesk_mgmt/static/description/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="generator" content="Docutils: https://docutils.sourceforge.io/" />
<title>README.rst</title>
<title>Helpdesk Management</title>
<style type="text/css">

/*
Expand Down Expand Up @@ -360,21 +360,16 @@
</style>
</head>
<body>
<div class="document">
<div class="document" id="helpdesk-management">
<h1 class="title">Helpdesk Management</h1>


<a class="reference external image-reference" href="https://odoo-community.org/get-involved?utm_source=readme">
<img alt="Odoo Community Association" src="https://odoo-community.org/readme-banner-image" />
</a>
<div class="section" id="helpdesk-management">
<h1>Helpdesk Management</h1>
<!-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! source digest: sha256:1c0772d3e0e1cd6d2c1343938b51a68ed925b92b3a9e3b2c4eb9ffd2e5a872bc
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
<p><a class="reference external image-reference" href="https://odoo-community.org/page/development-status"><img alt="Production/Stable" src="https://img.shields.io/badge/maturity-Production%2FStable-green.png" /></a> <a class="reference external image-reference" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/license-AGPL--3-blue.png" /></a> <a class="reference external image-reference" href="https://github.com/OCA/helpdesk/tree/17.0/helpdesk_mgmt"><img alt="OCA/helpdesk" src="https://img.shields.io/badge/github-OCA%2Fhelpdesk-lightgray.png?logo=github" /></a> <a class="reference external image-reference" href="https://translation.odoo-community.org/projects/helpdesk-17-0/helpdesk-17-0-helpdesk_mgmt"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external image-reference" href="https://runboat.odoo-community.org/builds?repo=OCA/helpdesk&amp;target_branch=17.0"><img alt="Try me on Runboat" src="https://img.shields.io/badge/runboat-Try%20me-875A7B.png" /></a></p>
<p><a class="reference external image-reference" href="https://odoo-community.org/page/development-status"><img alt="Production/Stable" src="https://img.shields.io/badge/maturity-Production%2FStable-green.png" /></a> <a class="reference external image-reference" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/licence-AGPL--3-blue.png" /></a> <a class="reference external image-reference" href="https://github.com/OCA/helpdesk/tree/17.0/helpdesk_mgmt"><img alt="OCA/helpdesk" src="https://img.shields.io/badge/github-OCA%2Fhelpdesk-lightgray.png?logo=github" /></a> <a class="reference external image-reference" href="https://translation.odoo-community.org/projects/helpdesk-17-0/helpdesk-17-0-helpdesk_mgmt"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external image-reference" href="https://runboat.odoo-community.org/builds?repo=OCA/helpdesk&amp;target_branch=17.0"><img alt="Try me on Runboat" src="https://img.shields.io/badge/runboat-Try%20me-875A7B.png" /></a></p>
<p>This module adds Helpdesk functionality in Odoo.</p>
<p><strong>Table of contents</strong></p>
<div class="contents local topic" id="contents">
Expand All @@ -400,7 +395,7 @@ <h1>Helpdesk Management</h1>
</ul>
</div>
<div class="section" id="configuration">
<h2><a class="toc-backref" href="#toc-entry-1">Configuration</a></h2>
<h1><a class="toc-backref" href="#toc-entry-1">Configuration</a></h1>
<p>To configure this module, you need to:</p>
<ol class="arabic simple">
<li>Edit or create new channels.</li>
Expand All @@ -410,7 +405,7 @@ <h2><a class="toc-backref" href="#toc-entry-1">Configuration</a></h2>
<li>Edit or create new tags.</li>
</ol>
<div class="section" id="channels">
<h3><a class="toc-backref" href="#toc-entry-2">Channels</a></h3>
<h2><a class="toc-backref" href="#toc-entry-2">Channels</a></h2>
<ol class="arabic simple">
<li>Go to <em>Helpdesk &gt; Configuration &gt; Channels</em> to edit or create new
channels.</li>
Expand All @@ -421,7 +416,7 @@ <h3><a class="toc-backref" href="#toc-entry-2">Channels</a></h3>
<p><img alt="image1" src="https://raw.githubusercontent.com/OCA/helpdesk/17.0/helpdesk_mgmt/static/description/Channels.PNG" /></p>
</div>
<div class="section" id="categories">
<h3><a class="toc-backref" href="#toc-entry-3">Categories</a></h3>
<h2><a class="toc-backref" href="#toc-entry-3">Categories</a></h2>
<ol class="arabic simple">
<li>Go to <em>Helpdesk &gt; Configuration &gt; Categories</em> to edit or create new
categories.</li>
Expand All @@ -432,7 +427,7 @@ <h3><a class="toc-backref" href="#toc-entry-3">Categories</a></h3>
<p><img alt="image2" src="https://raw.githubusercontent.com/OCA/helpdesk/17.0/helpdesk_mgmt/static/description/Categories.PNG" /></p>
</div>
<div class="section" id="stages">
<h3><a class="toc-backref" href="#toc-entry-4">Stages</a></h3>
<h2><a class="toc-backref" href="#toc-entry-4">Stages</a></h2>
<ol class="arabic simple">
<li>Go to <em>Helpdesk &gt; Configuration &gt; Stages</em> to edit or create new
stages.</li>
Expand All @@ -451,18 +446,26 @@ <h3><a class="toc-backref" href="#toc-entry-4">Stages</a></h3>
in the list view.</p>
</div>
<div class="section" id="teams">
<h3><a class="toc-backref" href="#toc-entry-5">Teams</a></h3>
<h2><a class="toc-backref" href="#toc-entry-5">Teams</a></h2>
<ol class="arabic simple">
<li>Go to <em>Helpdesk &gt; Configuration &gt; Teams</em> to edit or create new teams.</li>
<li>Edit or create a new team.</li>
<li>Set the name for the team.</li>
<li>Add the teams members.</li>
<li>You can also Activate or Deactivate teams.</li>
<li>Contact based on Helpdesk Team<ul>
<li>You can set a default contact for the team.</li>
<li>You can allow a list of specific contacts.</li>
<li>If “unique contact” is enabled, only the default contact can be
used. <img alt="image4" src="https://raw.githubusercontent.com/OCA/helpdesk/17.0/helpdesk_mgmt/static/description/Team_allowed_partners.PNG" /> <img alt="image5" src="https://raw.githubusercontent.com/OCA/helpdesk/17.0/helpdesk_mgmt/static/description/Ticket_allowed_contact.PNG" /> If nothing is configured, all contacts are
available.</li>
</ul>
</li>
</ol>
<p><img alt="image4" src="https://raw.githubusercontent.com/OCA/helpdesk/17.0/helpdesk_mgmt/static/description/Teams.PNG" /></p>
<p><img alt="image6" src="https://raw.githubusercontent.com/OCA/helpdesk/17.0/helpdesk_mgmt/static/description/Teams.PNG" /></p>
</div>
<div class="section" id="tags">
<h3><a class="toc-backref" href="#toc-entry-6">Tags</a></h3>
<h2><a class="toc-backref" href="#toc-entry-6">Tags</a></h2>
<ol class="arabic simple">
<li>Go to <em>Helpdesk &gt; Configuration &gt; Ticket Tags</em> to edit or create new
tags.</li>
Expand All @@ -471,10 +474,10 @@ <h3><a class="toc-backref" href="#toc-entry-6">Tags</a></h3>
<li>Set the color index for the tag.</li>
<li>You can also Activate or Deactivate tags.</li>
</ol>
<p><img alt="image5" src="https://raw.githubusercontent.com/OCA/helpdesk/17.0/helpdesk_mgmt/static/description/Tags.PNG" /></p>
<p><img alt="image7" src="https://raw.githubusercontent.com/OCA/helpdesk/17.0/helpdesk_mgmt/static/description/Tags.PNG" /></p>
</div>
<div class="section" id="permissions">
<h3><a class="toc-backref" href="#toc-entry-7">Permissions</a></h3>
<h2><a class="toc-backref" href="#toc-entry-7">Permissions</a></h2>
<p>There are restrictions to read tickets according to the user’s
permissions set in Helpdesk.</p>
<ol class="arabic simple">
Expand All @@ -489,7 +492,7 @@ <h3><a class="toc-backref" href="#toc-entry-7">Permissions</a></h3>
</div>
</div>
<div class="section" id="usage">
<h2><a class="toc-backref" href="#toc-entry-8">Usage</a></h2>
<h1><a class="toc-backref" href="#toc-entry-8">Usage</a></h1>
<ol class="arabic simple">
<li>Go to <em>Helpdesk</em> or <em>Helpdesk &gt; Dashboard</em> to see the tickets
dashboard</li>
Expand All @@ -513,7 +516,7 @@ <h2><a class="toc-backref" href="#toc-entry-8">Usage</a></h2>
<p><img alt="Tickets01" src="https://raw.githubusercontent.com/OCA/helpdesk/17.0/helpdesk_mgmt/static/description/Tickets01.PNG" /></p>
</div>
<div class="section" id="known-issues-roadmap">
<h2><a class="toc-backref" href="#toc-entry-9">Known issues / Roadmap</a></h2>
<h1><a class="toc-backref" href="#toc-entry-9">Known issues / Roadmap</a></h1>
<ul class="simple">
<li>Add a tour feature similar to what the <tt class="docutils literal">project</tt> module defines to
discover projects / tasks.</li>
Expand All @@ -523,17 +526,17 @@ <h2><a class="toc-backref" href="#toc-entry-9">Known issues / Roadmap</a></h2>
</ul>
</div>
<div class="section" id="bug-tracker">
<h2><a class="toc-backref" href="#toc-entry-10">Bug Tracker</a></h2>
<h1><a class="toc-backref" href="#toc-entry-10">Bug Tracker</a></h1>
<p>Bugs are tracked on <a class="reference external" href="https://github.com/OCA/helpdesk/issues">GitHub Issues</a>.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us to smash it by providing a detailed and welcomed
<a class="reference external" href="https://github.com/OCA/helpdesk/issues/new?body=module:%20helpdesk_mgmt%0Aversion:%2017.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**">feedback</a>.</p>
<p>Do not contact contributors directly about support or help with technical issues.</p>
</div>
<div class="section" id="credits">
<h2><a class="toc-backref" href="#toc-entry-11">Credits</a></h2>
<h1><a class="toc-backref" href="#toc-entry-11">Credits</a></h1>
<div class="section" id="authors">
<h3><a class="toc-backref" href="#toc-entry-12">Authors</a></h3>
<h2><a class="toc-backref" href="#toc-entry-12">Authors</a></h2>
<ul class="simple">
<li>AdaptiveCity</li>
<li>Tecnativa</li>
Expand All @@ -545,7 +548,7 @@ <h3><a class="toc-backref" href="#toc-entry-12">Authors</a></h3>
</ul>
</div>
<div class="section" id="contributors">
<h3><a class="toc-backref" href="#toc-entry-13">Contributors</a></h3>
<h2><a class="toc-backref" href="#toc-entry-13">Contributors</a></h2>
<ul class="simple">
<li><a class="reference external" href="https://www.domatix.com">Domatix</a>:<ul>
<li>Carlos Martínez</li>
Expand Down Expand Up @@ -601,7 +604,7 @@ <h3><a class="toc-backref" href="#toc-entry-13">Contributors</a></h3>
</ul>
</div>
<div class="section" id="maintainers">
<h3><a class="toc-backref" href="#toc-entry-14">Maintainers</a></h3>
<h2><a class="toc-backref" href="#toc-entry-14">Maintainers</a></h2>
<p>This module is maintained by the OCA.</p>
<a class="reference external image-reference" href="https://odoo-community.org">
<img alt="Odoo Community Association" src="https://odoo-community.org/logo.png" />
Expand All @@ -614,6 +617,5 @@ <h3><a class="toc-backref" href="#toc-entry-14">Maintainers</a></h3>
</div>
</div>
</div>
</div>
</body>
</html>
Loading