summaryrefslogtreecommitdiff
path: root/helpdesk_mgmt/views/helpdesk_ticket_views.xml
diff options
context:
space:
mode:
Diffstat (limited to 'helpdesk_mgmt/views/helpdesk_ticket_views.xml')
-rw-r--r--helpdesk_mgmt/views/helpdesk_ticket_views.xml351
1 files changed, 351 insertions, 0 deletions
diff --git a/helpdesk_mgmt/views/helpdesk_ticket_views.xml b/helpdesk_mgmt/views/helpdesk_ticket_views.xml
new file mode 100644
index 0000000..6e068bf
--- /dev/null
+++ b/helpdesk_mgmt/views/helpdesk_ticket_views.xml
@@ -0,0 +1,351 @@
+<?xml version='1.0' encoding='utf-8' ?>
+<odoo>
+ <record
+ id="action_helpdesk_ticket_kanban_from_dashboard"
+ model="ir.actions.act_window"
+ >
+ <field name="name">Helpdesk Ticket</field>
+ <field name="res_model">helpdesk.ticket</field>
+ <field name="view_mode">kanban,tree,form</field>
+ <field name="context">
+ {'default_team_id': active_id}
+ </field>
+ <field name="domain">[('team_id', '=', active_id)]</field>
+ </record>
+ <record id="helpdesk_ticket_view_search" model="ir.ui.view">
+ <field name="name">helpdesk.ticket.view.search</field>
+ <field name="model">helpdesk.ticket</field>
+ <field name="arch" type="xml">
+ <search>
+ <field name="number" />
+ <field name="partner_id" />
+ <field name="user_id" />
+ <field name="name" />
+ <field name="tag_ids" />
+ <field name="stage_id" />
+ <filter
+ string="Unassigned"
+ name="unassigned"
+ domain="[('user_id','=',False)]"
+ />
+ <filter string="Open" name="open" domain="[('closed', '=', False )]" />
+ <filter
+ string="Unattended"
+ name="unattended"
+ domain="[('unattended', '=', True )]"
+ />
+ <filter
+ string="High Priority"
+ name="high_priority"
+ domain="[('priority','=','3')]"
+ />
+ <separator />
+ <filter
+ string="My Tickets"
+ name="mytickets"
+ domain="[('user_id','=',uid)]"
+ />
+ <filter
+ string="My Followed Tickets"
+ name="my_followed_tickets"
+ domain="[('message_is_follower', '=', True)]"
+ />
+ <separator />
+ <filter
+ name="last_week"
+ string="Last Week"
+ domain="[('create_date','&gt;', (context_today() - datetime.timedelta(weeks=1)).strftime('%%Y-%%m-%%d') )]"
+ />
+ <separator />
+ <filter
+ string="My Activities"
+ name="activities_my"
+ domain="[('activity_ids.user_id', '=', uid)]"
+ />
+ <filter
+ string="Late Activities"
+ name="activities_overdue"
+ domain="[('activity_ids.date_deadline', '&lt;', context_today().strftime('%Y-%m-%d'))]"
+ help="Show all records which has next action date is before today"
+ />
+ <filter
+ string="Today Activities"
+ name="activities_today"
+ domain="[('activity_ids.date_deadline', '=', context_today().strftime('%Y-%m-%d'))]"
+ />
+ <filter
+ string="Future Activities"
+ name="activities_upcoming_all"
+ domain="[('activity_ids.date_deadline', '&gt;', context_today().strftime('%Y-%m-%d'))
+ ]"
+ />
+ <group expand="0" string="Group By">
+ <filter
+ string="Partner"
+ name="group_partner"
+ domain="[]"
+ context="{'group_by':'partner_id'}"
+ />
+ <filter
+ string="Team"
+ name="group_team"
+ domain="[]"
+ context="{'group_by':'team_id'}"
+ />
+ <filter
+ string="User"
+ name="group_user"
+ domain="[]"
+ context="{'group_by':'user_id'}"
+ />
+ <filter
+ string="Stage"
+ name="group_stage"
+ domain="[]"
+ context="{'group_by':'stage_id'}"
+ />
+ </group>
+ </search>
+ </field>
+ </record>
+ <record id="ticket_view_form" model="ir.ui.view">
+ <field name="name">helpdesk.ticket.view.form</field>
+ <field name="model">helpdesk.ticket</field>
+ <field name="arch" type="xml">
+ <form string="Helpdesk Ticket">
+ <header>
+ <button
+ string="Assign to me"
+ name="assign_to_me"
+ type="object"
+ attrs="{'invisible' : [('user_id', '!=', False)]}"
+ />
+ <field
+ name="stage_id"
+ widget="statusbar"
+ options="{'clickable': '1', 'fold_field': 'fold'}"
+ />
+ </header>
+ <sheet>
+ <widget
+ name="web_ribbon"
+ title="Archived"
+ bg_color="bg-danger"
+ attrs="{'invisible': [('active', '=', True)]}"
+ />
+ <div class="oe_button_box" name="button_box">
+ </div>
+ <div class="oe_title">
+ <h1 class="oe_title">
+ <field name="number" />
+ </h1>
+ <h2 class="o_row">
+ <field name="name" />
+ </h2>
+ </div>
+ <group name="main">
+ <group>
+ <field name="active" invisible="1" />
+ <field name="team_id" options='{"always_reload": True}' />
+ <field name="user_ids" readonly="1" invisible="1" />
+ <field
+ name="user_id"
+ domain="[('share', '=', False)]"
+ options='{"always_reload": True}'
+ />
+ <field name="priority" widget="priority" />
+ <field
+ name="company_id"
+ options="{'no_create': True}"
+ groups="base.group_multi_company"
+ />
+ <field name="create_date" readonly="1" />
+ <field name="channel_id" />
+ </group>
+ <group>
+ <field name="partner_id" />
+ <field name="partner_name" />
+ <field name="partner_email" />
+ <field name="category_id" />
+ <field
+ name="tag_ids"
+ widget="many2many_tags"
+ options="{'no_create_edit': True}"
+ />
+ </group>
+ </group>
+ <group>
+ <notebook>
+ <page string="Description" name="description">
+ <field name="description" widget="html" />
+ </page>
+ <page string="Other Information" name="other_info">
+ <group>
+ <field name="last_stage_update" readonly="1" />
+ <field name="assigned_date" readonly="1" />
+ <field name="closed_date" readonly="1" />
+ </group>
+ </page>
+ </notebook>
+ </group>
+ </sheet>
+ <div class="oe_chatter">
+ <field name="message_follower_ids" widget="mail_followers" />
+ <field name="activity_ids" widget="mail_activity" />
+ <field
+ name="message_ids"
+ widget="mail_thread"
+ options="{'post_refresh': 'recipients', 'open_attachments': True}"
+ />
+ </div>
+ </form>
+ </field>
+ </record>
+ <record id="ticket_view_tree" model="ir.ui.view">
+ <field name="name">helpdesk.ticket.view.tree</field>
+ <field name="model">helpdesk.ticket</field>
+ <field name="arch" type="xml">
+ <tree>
+ <field name="number" />
+ <field name="name" />
+ <field name="partner_name" />
+ <field name="user_id" />
+ <field name="stage_id" />
+ <field name="priority" widget="priority" />
+ <field name="create_date" readonly="1" />
+ <field name="last_stage_update" />
+ </tree>
+ </field>
+ </record>
+ <record id="view_helpdesk_ticket_kanban" model="ir.ui.view">
+ <field name="name">helpdesk.ticket.kanban</field>
+ <field name="model">helpdesk.ticket</field>
+ <field name="priority" eval="100" />
+ <field name="arch" type="xml">
+ <kanban class="o_kanban_mobile" default_group_by="stage_id">
+ <field name="number" />
+ <field name="active" />
+ <field name="name" />
+ <field name="partner_name" />
+ <field name="user_id" />
+ <field name="color" />
+ <field name="stage_id" />
+ <field name="priority" widget="priority" />
+ <field name="assigned_date" />
+ <progressbar
+ field="activity_state"
+ colors="{&quot;planned&quot;: &quot;success&quot;, &quot;today&quot;: &quot;warning&quot;, &quot;overdue&quot;: &quot;danger&quot;}"
+ />
+ <templates>
+ <t t-name="kanban-box">
+ <div
+ t-attf-class="oe_kanban_color_#{kanban_getcolor(record.color.raw_value)} oe_kanban_content oe_kanban_global_click"
+ >
+ <div
+ class="o_dropdown_kanban dropdown"
+ groups="base.group_user"
+ >
+ <a
+ class="dropdown-toggle btn"
+ role="button"
+ data-toggle="dropdown"
+ href="#"
+ title="Toggle dropdown"
+ >
+ <span class="fa fa-ellipsis-v" aria-hidden="true" />
+ </a>
+ <ul
+ class="dropdown-menu"
+ role="menu"
+ aria-labelledby="dLabel"
+ >
+ <li t-if="widget.editable">
+ <a type="edit">Edit</a>
+ </li>
+ <li t-if="widget.deletable">
+ <a type="delete">Delete</a>
+ </li>
+ <li class="divider" />
+ <li>
+ <ul
+ class="oe_kanban_colorpicker"
+ data-field="color"
+ />
+ </li>
+ </ul>
+ </div>
+ <div class="o_kanban_record_top">
+ <div class="o_kanban_record_headings">
+ <field name="name" />
+ <field
+ name="tag_ids"
+ widget="many2many_tags"
+ options="{'color_field': 'color'}"
+ />
+ <field name="number" />
+ <small class="o_kanban_record_subtitle text-muted">
+ <field name="partner_id" />
+ </small>
+ </div>
+ </div>
+ <div class="o_kanban_record_body" />
+ <div class="o_kanban_record_bottom">
+ <div class="oe_kanban_bottom_left">
+ <field name="priority" widget="priority" />
+ <field
+ name="activity_ids"
+ widget="kanban_activity"
+ related="activity_state"
+ />
+ </div>
+ <div class="oe_kanban_bottom_right">
+ <field
+ name="kanban_state"
+ widget="state_selection"
+ />
+ <field name="activity_state" invisible="1" />
+ <img
+ t-att-src="kanban_image('res.users', 'image_128', record.user_id.raw_value)"
+ t-att-title="record.user_id.value"
+ width="24"
+ height="24"
+ class="oe_kanban_avatar o_image_24_cover float-right"
+ t-att-alt="record.user_id.value"
+ />
+ </div>
+ </div>
+ </div>
+ </t>
+ </templates>
+ </kanban>
+ </field>
+ </record>
+ <record id="helpdesk_ticket_views_pivot" model="ir.ui.view">
+ <field name="name">helpdesk.ticket.view.pivot</field>
+ <field name="model">helpdesk.ticket</field>
+ <field name="arch" type="xml">
+ <pivot string="Pivot Analysis" disable_linking="True">
+ <field name="team_id" type="row" />
+ <field name="assigned_date" type="col" />
+ </pivot>
+ </field>
+ </record>
+ <record id="action_duplicate_ticket" model="ir.actions.server">
+ <field name="name">Duplicate</field>
+ <field name="model_id" ref="model_helpdesk_ticket" />
+ <field name="binding_model_id" ref="helpdesk_mgmt.model_helpdesk_ticket" />
+ <field name="binding_view_types">list</field>
+ <field name="state">code</field>
+ <field name="code">
+ action = model.action_duplicate_tickets()
+ </field>
+ </record>
+ <record id="model_helpdesk_ticket_action_share" model="ir.actions.server">
+ <field name="name">Share</field>
+ <field name="model_id" ref="helpdesk_mgmt.model_helpdesk_ticket" />
+ <field name="binding_model_id" ref="helpdesk_mgmt.model_helpdesk_ticket" />
+ <field name="binding_view_types">form</field>
+ <field name="state">code</field>
+ <field name="code">action = records.action_share()</field>
+ </record>
+</odoo>