summaryrefslogtreecommitdiff
path: root/sh_helpdesk/views/helpdesk_ticket_view.xml
diff options
context:
space:
mode:
Diffstat (limited to 'sh_helpdesk/views/helpdesk_ticket_view.xml')
-rw-r--r--sh_helpdesk/views/helpdesk_ticket_view.xml320
1 files changed, 320 insertions, 0 deletions
diff --git a/sh_helpdesk/views/helpdesk_ticket_view.xml b/sh_helpdesk/views/helpdesk_ticket_view.xml
new file mode 100644
index 0000000..adc630c
--- /dev/null
+++ b/sh_helpdesk/views/helpdesk_ticket_view.xml
@@ -0,0 +1,320 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<odoo>
+ <record id="helpdesk_ticket_form_view" model="ir.ui.view">
+ <field name="name">helpdesk.ticket.form.view</field>
+ <field name="model">helpdesk.ticket</field>
+ <field name="arch" type="xml">
+ <form string="Ticket">
+ <header>
+ <button name="action_approve" type="object" string="Approve" class="oe_highlight" attrs="{'invisible':['|','|',('cancel_stage_boolean','=',True),('done_stage_boolean','=',True),('closed_stage_boolean','=',True)]}" />
+ <button name="action_reply" type="object" string="Reply" class="oe_highlight" />
+ <button name="action_send_whatsapp" type="object" string="Send By Whatsapp" class="oe_highlight" groups="sh_helpdesk.helpdesk_group_whatsapp" />
+ <button name="action_done" type="object" string="Resolved Ticket" class="oe_highlight" attrs="{'invisible':[('done_button_boolean','=',False)]}" />
+ <button name="action_closed" type="object" string="Close Ticket" class="oe_highlight" attrs="{'invisible':[('done_stage_boolean','=',False)]}" />
+ <button name="action_cancel" type="object" string="Cancel Ticket" class="oe_highlight" attrs="{'invisible':[('cancel_button_boolean','=',False)]}" />
+ <button name="action_open" type="object" string="Re-Open Ticket" class="oe_highlight" attrs="{'invisible':[('open_boolean','=',False)]}" />
+ <button name="preview_ticket" type="object" string="Preview" />
+ <field name="stage_id" widget="statusbar" />
+ </header>
+ <sheet>
+ <div class="oe_button_box" name="button_box">
+ <widget name="web_ribbon" text="Archived" bg_color="bg-danger" attrs="{'invisible': [('active', '=', True)]}" />
+ </div>
+ <div class="oe_title">
+ <h1>
+ <field name="name" readonly="1" />
+ <field name="active" invisible="1" />
+ <field name="category_bool" invisible="1" />
+ <field name="sub_category_bool" invisible="1" />
+ <field name="rating_bool" invisible="1" />
+ <field name="sh_status_boolean" invisible="1"/>
+ <field name="done_stage_boolean" invisible="1" />
+ <field name="cancel_stage_boolean" invisible="1" />
+ <field name="closed_stage_boolean" invisible="1" />
+ <field name="ticket_from_website" invisible="1" />
+ <field name="ticket_from_portal" invisible="1" />
+ <field name="reopen_stage_boolean" invisible="1" />
+ <field name="cancel_button_boolean" invisible="1" />
+ <field name="done_button_boolean" invisible="1" />
+ <field name="open_boolean" invisible="1" />
+ <field name="sh_days_to_reach" invisible="1"/>
+ <field name="sh_days_to_late" invisible="1"/>
+ <field name="sh_ticket_report_url" invisible="1"/>
+ <field name="portal_ticket_url_wp" invisible="1"/>
+ </h1>
+ <h1>
+ <field name="email_subject" placeholder="Email Subject ...."/>
+ </h1>
+ <field name="sh_sla_status_ids" widget="many2many_tags" options="{'color_field': 'color'}" readonly="1" force_save="1" groups="sh_helpdesk.group_helpdesk_sla_policy"/>
+ </div>
+ <group>
+ <group>
+ <field name="sh_display_multi_user" invisible="1" />
+ <field name="sh_display_product" invisible="1" />
+ <field name="company_id" groups="base.group_multi_company" readonly="1" />
+ <field name="state" />
+ <field name="ticket_type" />
+ <field name="ticket_allocated" invisible="1" />
+ <field name="team_id" groups="sh_helpdesk.helpdesk_group_team_leader,sh_helpdesk.helpdesk_group_manager" />
+ <field name="team_head" readonly="1" force_save="1" groups="sh_helpdesk.helpdesk_group_team_leader,sh_helpdesk.helpdesk_group_manager" />
+ <field name="user_id" groups="sh_helpdesk.helpdesk_group_team_leader,sh_helpdesk.helpdesk_group_manager" />
+ <field name="sh_user_ids" widget="many2many_tags" attrs="{'invisible':[('sh_display_multi_user','=',False)]}" groups="sh_helpdesk.helpdesk_group_team_leader,sh_helpdesk.helpdesk_group_manager" />
+ <field name="subject_id" />
+ <field name="category_id" attrs="{'invisible':[('category_bool','=',False)]}" />
+ <field name="sub_category_id" attrs="{'invisible':[('sub_category_bool','=',False)]}" />
+ <field name="tag_ids" widget="many2many_tags" options="{'color_field': 'color', 'no_create_edit': True}" />
+ <field name="priority" />
+ </group>
+ <group>
+ <field name="create_date" string="Create Date" />
+ <field name="write_date" string="Last Update Date" />
+ <field name="sh_due_date"/>
+ <field name="partner_id" />
+ <field name="person_name" />
+ <field name="email" />
+ <field name="mobile_no"/>
+ <field name="replied_date" />
+ <field name="product_ids" widget="many2many_tags" attrs="{'invisible':[('sh_display_product','=',False)]}" />
+ <field name="sh_status" invisible="1"/>
+ <field name="sh_sla_deadline" attrs="{'invisible':[('sh_sla_deadline','=',False)]}" groups="sh_helpdesk.group_helpdesk_sla_policy"/>
+ <field name="sh_sla_policy_ids" widget="many2many_tags" force_save="1" invisible="1"/>
+ <field name="sh_ticket_alarm_ids" widget="many2many_tags" groups="sh_helpdesk.group_helpdesk_alarm"/>
+ </group>
+ </group>
+ <notebook>
+ <page string="Description">
+ <group>
+ <field name="description" />
+ </group>
+ </page>
+ <page string="Attachments">
+ <group>
+ <field name="attachment_ids" nolabel="1"></field>
+ </group>
+ </page>
+ <page string="Customer Rating" attrs="{'invisible':[('rating_bool','=',False)]}">
+ <group>
+ <field name="priority_new" widget="priority" />
+ <field name="customer_comment" />
+ </group>
+ </page>
+ <page string="Other Information">
+ <group>
+ <group string="Ticket Closed Information">
+ <field name="close_date" />
+ <field name="close_by" />
+ <field name="comment" string="Closed Comment" />
+ </group>
+ <group string="Ticket Cancelled Information">
+ <field name="cancel_date" />
+ <field name="cancel_by" />
+ <field name="cancel_reason" />
+ <field name="form_url" invisible="1" />
+ </group>
+ </group>
+ </page>
+ </notebook>
+ </sheet>
+ <div class="oe_chatter">
+ <field name="message_follower_ids" widget="mail_followers" />
+ <field name="message_ids" widget="mail_thread" />
+ </div>
+ </form>
+ </field>
+ </record>
+ <record id="helpdesk_ticket_tree_view" model="ir.ui.view">
+ <field name="name">helpdesk.ticket.tree.view</field>
+ <field name="model">helpdesk.ticket</field>
+ <field name="arch" type="xml">
+ <tree string="Ticket" multi_edit="1">
+ <field name="name" />
+ <field name="partner_id" />
+ <field name="create_date" string="Create Date" />
+ <field name="write_date" string="Last Update Date" />
+ <field name="ticket_type" />
+ <field name="team_id" />
+ <field name="team_head" />
+ <field name="user_id" />
+ <field name="subject_id" />
+ <field name="category_id" />
+ <field name="sub_category_id" />
+ <field name="stage_id" />
+ </tree>
+ </field>
+ </record>
+ <record id="helpdesk_ticket_search_view" model="ir.ui.view">
+ <field name="name">helpdesk.ticket.search.view</field>
+ <field name="model">helpdesk.ticket</field>
+ <field name="arch" type="xml">
+ <search string="Helpdesk Ticket Search">
+ <field name="name" string="Ticket" filter_domain="['|', '|', '|','|', '|', '|', ('name', 'ilike', self), ('sh_user_ids.name', 'ilike', self),('user_id.name', 'ilike', self),('email','ilike',self),('mobile_no','ilike',self),('partner_id.name','ilike',self),('email_subject','ilike',self)]"/>
+ <field name="create_date" />
+ <field name="write_date" />
+ <field name="partner_id" />
+ <field name="ticket_type" />
+ <field name="team_id" />
+ <field name="team_head" />
+ <field name="user_id" />
+ <field name="subject_id" />
+ <field name="category_id" />
+ <field name="sub_category_id" />
+ <field name="stage_id" />
+ <separator />
+ <filter string="My Ticket" name="assigned_to_me" domain="[('create_uid', '=', uid)]" />
+ <separator />
+ <filter string="Completed Tickets" name="complete_ticket" domain="[('done_stage_boolean', '=', True)]" />
+ <filter string="Cancelled Tickets" name="cancel_ticket" domain="[('cancel_stage_boolean', '=', True)]" />
+ <filter string="Archived" name="archived" domain="[('active', '=', False)]" />
+ <separator />
+ <filter string="Upcoming SLA Failed" name="upcoming" domain="[('sh_sla_deadline','!=',False),('sh_sla_deadline', '&lt;=', (datetime.date.today() + relativedelta(days=1)).strftime('%Y-%m-%d'))]" groups="sh_helpdesk.group_helpdesk_sla_policy" />
+ <filter string="SLA Failed" name="sla_failed" domain="[('sh_status','=','sla_failed')]" groups="sh_helpdesk.group_helpdesk_sla_policy" />
+ <filter string="SLA Passed" name="sla_passed" domain="[('sh_status','=','sla_passed')]" groups="sh_helpdesk.group_helpdesk_sla_policy" />
+ <filter string="SLA Partially Passed" name="sh_partially_passed" domain="[('sh_status','=','sh_partially_passed')]" groups="sh_helpdesk.group_helpdesk_sla_policy" />
+ <group expand="0" string="Group By">
+ <filter string="Created By" name="user" context="{'group_by':'create_uid'}" />
+ <filter string="Ticket Type" name="ticket_type" context="{'group_by':'ticket_type'}" />
+ <filter name="stage" string="Stage" context="{'group_by':'stage_id'}" />
+ <filter name="customer" string="Customer" context="{'group_by':'partner_id'}" />
+ <filter name="category" string="Category" context="{'group_by':'category_id'}" />
+ <filter name="subcategory" string="Sub Category" context="{'group_by':'sub_category_id'}" />
+ <filter name="team" string="Team" context="{'group_by':'team_id'}" />
+ <filter name="team_head" string="Team Head" context="{'group_by':'team_head'}" />
+ <filter name="user_id" string="Assigned User" context="{'group_by':'user_id'}" />
+ <filter name="subject" string="Subject" context="{'group_by':'subject_id'}" />
+ <filter name="priority" string="Priority" context="{'group_by':'priority'}" />
+ <filter name="state" string="Reply Status" context="{'group_by':'state'}" />
+ </group>
+ <searchpanel>
+ <field name="company_id" icon="fa-building" />
+ <field name="state" icon="fa-folder" />
+ <field name="stage_id" icon="fa-folder" />
+ <field name="ticket_type" icon="fa-folder" />
+ <field name="team_id" icon="fa-user-plus" />
+ <field name="user_id" icon="fa-users" />
+ <field name="partner_id" icon="fa-users" />
+ <field name="subject_id" icon="fa-book" />
+ <field name="category_id" icon="fa-list" />
+ <field name="sub_category_id" icon="fa-list-alt" />
+ <field name="priority" icon="fa-level-up" />
+ </searchpanel>
+ </search>
+ </field>
+ </record>
+ <record model="ir.ui.view" id="helpdesk_ticket_kanban">
+ <field name="name">helpdesk.ticket.kanban</field>
+ <field name="model">helpdesk.ticket</field>
+ <field name="arch" type="xml">
+ <kanban default_group_by="stage_id" class="o_kanban_small_column o_opportunity_kanban" archivable="false" examples="sh_helpdesk" sample="1">
+ <field name="name" />
+ <field name="color" />
+ <field name="priority" />
+ <field name="stage_id" />
+ <field name="user_id" />
+ <field name="tag_ids" />
+ <field name="email_subject"/>
+ <templates>
+ <t t-name="kanban-box">
+ <div t-attf-class="#{kanban_color(record.color.raw_value)} oe_kanban_global_click">
+ <div class="oe_kanban_content">
+ <div>
+ <strong>
+ <field name="name" /><t t-if="record.priority.value">:<field name="priority" /></t>
+ </strong>
+ </div>
+ <div>
+ <t t-if="record.email_subject.value">
+ <span t-att-title="record.email_subject.value" style="overflow: hidden;text-overflow: ellipsis;display:block;-webkit-line-clamp: 1;-webkit-box-orient: vertical;"><field name="email_subject"/></span>
+ </t>
+ </div>
+ <div>
+ <strong>
+ <field name="partner_id" />
+ </strong>
+ </div>
+ <div>
+ <field name="tag_ids" widget="many2many_tags" options="{'color_field': 'color'}" />
+ </div>
+ <div>
+ <strong>
+ <field name="stage_id" />
+ </strong>
+ </div>
+ <div>
+ <field name="create_date" />
+ </div>
+ <div class="o_kanban_record_bottom">
+ <div class="oe_kanban_bottom_right">
+ <img t-att-src="kanban_image('res.users', 'image_1920', record.user_id.raw_value)" t-att-title="record.user_id.value" t-att-alt="record.user_id.value" width="24" height="24" class="oe_kanban_avatar" />
+ </div>
+ </div>
+ </div>
+ <div class="oe_clear" />
+ </div>
+ </t>
+ </templates>
+ </kanban>
+ </field>
+ </record>
+ <record id="helpdesk_ticket_calendar" model="ir.ui.view">
+ <field name="name">helpdesk.ticket.calendar</field>
+ <field name="model">helpdesk.ticket</field>
+ <field name="arch" type="xml">
+ <calendar string="Tickets" date_start="create_date" color="user_id">
+ <field name="name" />
+ <field name="partner_id" />
+ <field name="stage_id" />
+ </calendar>
+ </field>
+ </record>
+ <record model="ir.ui.view" id="helpdesk_ticket_pivot">
+ <field name="name">helpdesk.ticket.pivot</field>
+ <field name="model">helpdesk.ticket</field>
+ <field name="arch" type="xml">
+ <pivot string="Tickets" disable_linking="True">
+ <field name="create_date" interval="month" type="row" />
+ <field name="stage_id" type="col" />
+ <field name="partner_id" type="row" />
+ </pivot>
+ </field>
+ </record>
+
+ <record model="ir.ui.view" id="helpdesk_ticket_graph">
+ <field name="name">helpdesk.ticket.graph</field>
+ <field name="model">helpdesk.ticket</field>
+ <field name="arch" type="xml">
+ <graph string="Tickets">
+ <field name="stage_id" type="col" />
+ <field name="user_id" type="row" />
+ </graph>
+ </field>
+ </record>
+ <record id="helpdesk_ticket_action" model="ir.actions.act_window">
+ <field name="name">Helpdesk Tickets</field>
+ <field name="res_model">helpdesk.ticket</field>
+ <field name="view_mode">kanban,tree,form,pivot,graph,calendar,activity</field>
+ <field name="help" type="html">
+ <p class="oe_view_nocontent_create">Create a New Ticket</p>
+ </field>
+ </record>
+ <menuitem id="helpdesk_tickets_menu" name="Tickets" parent="sh_helpdesk.helpdesk_main_menu" sequence="2" action="helpdesk_ticket_action" />
+ <record model="ir.ui.view" id="helpdesk_ticket_sla_pivot">
+ <field name="name">helpdesk.ticket</field>
+ <field name="model">helpdesk.ticket</field>
+ <field name="arch" type="xml">
+ <pivot string="Helpdesk SLA Analysis" disable_linking="True" sample="1">
+ <field name="team_id" type="row"/>
+ <field name="stage_id" type="row"/>
+ <field name="create_date" interval="month" type="col"/>
+ <field name="sh_status" type="col"/>
+ <field name="sh_days_to_reach" type="measure"/>
+ <field name="sh_days_to_late" type="measure"/>
+ </pivot>
+ </field>
+ </record>
+ <record id="helpdesk_ticket_sla_action" model="ir.actions.act_window">
+ <field name="name">Helpdesk SLA Analysis</field>
+ <field name="res_model">helpdesk.ticket</field>
+ <field name="view_mode">pivot</field>
+ </record>
+ <menuitem id="menu_helpdesk_sla_analysis" name="Helpdesk SLA Analysis" parent="sh_helpdesk.helpdesk_reporting_menu" action="helpdesk_ticket_sla_action" groups="sh_helpdesk.group_helpdesk_sla_policy" />
+</odoo>