# ahmatfauzy/odoo-it-operations architecture

> Architecture diagram of the GitHub repository ahmatfauzy/odoo-it-operations, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-27). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/ahmatfauzy/odoo-it-operations
- Repository: https://github.com/ahmatfauzy/odoo-it-operations

## Overview

This repository contains a custom Odoo Helpdesk addon, rather than the full Odoo suite described by the root README. Agents create and manage tickets through the addon’s views; ticket logic assigns references, maintains workflow state and close dates, and computes SLA-related metrics. Stages, teams, and tags provide configurable support organization, while partner links expose customer ticket records. The model code and manifest document these capabilities; wiring for unsampled views, security, and XML data is shown only at the documented subsystem level.

Main entry points: [`custom-addons/helpdesk/models/helpdesk_ticket.py`](https://github.com/ahmatfauzy/odoo-it-operations/blob/main/custom-addons/helpdesk/models/helpdesk_ticket.py) (Ticket model), [`custom-addons/helpdesk/models/helpdesk_config.py`](https://github.com/ahmatfauzy/odoo-it-operations/blob/main/custom-addons/helpdesk/models/helpdesk_config.py) (Stages), [`custom-addons/helpdesk/views/helpdesk_ticket_views.xml`](https://github.com/ahmatfauzy/odoo-it-operations/blob/main/custom-addons/helpdesk/views/helpdesk_ticket_views.xml) (Ticket views), [`custom-addons/helpdesk/data/helpdesk_stages.xml`](https://github.com/ahmatfauzy/odoo-it-operations/blob/main/custom-addons/helpdesk/data/helpdesk_stages.xml) (Initial stages)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_interface["Agent interface"]
  node_ticket_views["Ticket views"]
end

subgraph group_workflow["Ticket workflow"]
  node_ticket_model["Ticket model<br/>[helpdesk_ticket.py]"]
  node_sla_metrics["SLA metrics<br/>[helpdesk_ticket.py]"]
  node_partner_extension["Customer ticket links<br/>[helpdesk_config.py]"]
end

subgraph group_configuration["Support configuration"]
  node_stage_config["Stages<br/>[helpdesk_config.py]"]
  node_team_config["Teams<br/>[helpdesk_config.py]"]
  node_tag_config["Tags<br/>[helpdesk_config.py]"]
  node_sequence["Ticket numbering"]
  node_stage_data["Initial stages"]
end

subgraph group_platform["Odoo platform"]
  node_access_rules["Access controls"]
  node_access_rights["Model permissions"]
  node_odoo_store[("Odoo database")]
  node_mail["Odoo mail framework"]
end

node_agent(("Support agent"))

node_agent -->|"uses"| node_ticket_views
node_ticket_views -->|"operates tickets"| node_ticket_model
node_ticket_model -->|"requests reference"| node_sequence
node_ticket_model -->|"selects stage"| node_stage_config
node_ticket_model -->|"validates assignment"| node_team_config
node_ticket_model -->|"links tags"| node_tag_config
node_ticket_model -->|"computes metrics"| node_sla_metrics
node_ticket_model -->|"persists records"| node_odoo_store
node_stage_config -->|"stores stages"| node_odoo_store
node_team_config -->|"stores teams"| node_odoo_store
node_tag_config -->|"stores tags"| node_odoo_store
node_stage_data -->|"defines defaults"| node_stage_config
node_ticket_model -->|"links customer"| node_partner_extension
node_partner_extension -->|"reads ticket links"| node_odoo_store
node_ticket_model -->|"inherits chatter"| node_mail
node_access_rules -->|"restricts access"| node_ticket_model
node_access_rights -->|"grants permissions"| node_ticket_model

click node_ticket_views "https://github.com/ahmatfauzy/odoo-it-operations/blob/main/custom-addons/helpdesk/views/helpdesk_ticket_views.xml"
click node_ticket_model "https://github.com/ahmatfauzy/odoo-it-operations/blob/main/custom-addons/helpdesk/models/helpdesk_ticket.py"
click node_sla_metrics "https://github.com/ahmatfauzy/odoo-it-operations/blob/main/custom-addons/helpdesk/models/helpdesk_ticket.py"
click node_partner_extension "https://github.com/ahmatfauzy/odoo-it-operations/blob/main/custom-addons/helpdesk/models/helpdesk_config.py"
click node_stage_config "https://github.com/ahmatfauzy/odoo-it-operations/blob/main/custom-addons/helpdesk/models/helpdesk_config.py"
click node_team_config "https://github.com/ahmatfauzy/odoo-it-operations/blob/main/custom-addons/helpdesk/models/helpdesk_config.py"
click node_tag_config "https://github.com/ahmatfauzy/odoo-it-operations/blob/main/custom-addons/helpdesk/models/helpdesk_config.py"
click node_sequence "https://github.com/ahmatfauzy/odoo-it-operations/blob/main/custom-addons/helpdesk/data/helpdesk_sequence.xml"
click node_stage_data "https://github.com/ahmatfauzy/odoo-it-operations/blob/main/custom-addons/helpdesk/data/helpdesk_stages.xml"
click node_access_rules "https://github.com/ahmatfauzy/odoo-it-operations/blob/main/custom-addons/helpdesk/security/helpdesk_security.xml"
click node_access_rights "https://github.com/ahmatfauzy/odoo-it-operations/blob/main/custom-addons/helpdesk/security/ir.model.access.csv"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_ticket_views toneBlue
class node_ticket_model,node_sla_metrics,node_partner_extension toneAmber
class node_stage_config,node_team_config,node_tag_config,node_sequence,node_stage_data toneMint
class node_access_rules,node_access_rights,node_odoo_store,node_mail toneRose
class node_agent toneIndigo
```

## Components

### Agent interface

- [Ticket views](https://github.com/ahmatfauzy/odoo-it-operations/blob/main/custom-addons/helpdesk/views/helpdesk_ticket_views.xml): `custom-addons/helpdesk/views/helpdesk_ticket_views.xml`

### Ticket workflow

- [Ticket model](https://github.com/ahmatfauzy/odoo-it-operations/blob/main/custom-addons/helpdesk/models/helpdesk_ticket.py): `custom-addons/helpdesk/models/helpdesk_ticket.py`
- [SLA metrics](https://github.com/ahmatfauzy/odoo-it-operations/blob/main/custom-addons/helpdesk/models/helpdesk_ticket.py): `custom-addons/helpdesk/models/helpdesk_ticket.py`
- [Customer ticket links](https://github.com/ahmatfauzy/odoo-it-operations/blob/main/custom-addons/helpdesk/models/helpdesk_config.py): `custom-addons/helpdesk/models/helpdesk_config.py`

### Support configuration

- [Stages](https://github.com/ahmatfauzy/odoo-it-operations/blob/main/custom-addons/helpdesk/models/helpdesk_config.py): `custom-addons/helpdesk/models/helpdesk_config.py`
- [Teams](https://github.com/ahmatfauzy/odoo-it-operations/blob/main/custom-addons/helpdesk/models/helpdesk_config.py): `custom-addons/helpdesk/models/helpdesk_config.py`
- [Tags](https://github.com/ahmatfauzy/odoo-it-operations/blob/main/custom-addons/helpdesk/models/helpdesk_config.py): `custom-addons/helpdesk/models/helpdesk_config.py`
- [Ticket numbering](https://github.com/ahmatfauzy/odoo-it-operations/blob/main/custom-addons/helpdesk/data/helpdesk_sequence.xml): `custom-addons/helpdesk/data/helpdesk_sequence.xml`
- [Initial stages](https://github.com/ahmatfauzy/odoo-it-operations/blob/main/custom-addons/helpdesk/data/helpdesk_stages.xml): `custom-addons/helpdesk/data/helpdesk_stages.xml`

### Odoo platform

- [Access controls](https://github.com/ahmatfauzy/odoo-it-operations/blob/main/custom-addons/helpdesk/security/helpdesk_security.xml): `custom-addons/helpdesk/security/helpdesk_security.xml`
- [Model permissions](https://github.com/ahmatfauzy/odoo-it-operations/blob/main/custom-addons/helpdesk/security/ir.model.access.csv): `custom-addons/helpdesk/security/ir.model.access.csv`
- **Odoo database**
- **Odoo mail framework**

### Other components

- **Support agent**

## Connections

- Support agent → Ticket views: uses
- Ticket views → Ticket model: operates tickets
- Ticket model → Ticket numbering: requests reference
- Ticket model → Stages: selects stage
- Ticket model → Teams: validates assignment
- Ticket model → Tags: links tags
- Ticket model → SLA metrics: computes metrics
- Ticket model → Odoo database: persists records
- Stages → Odoo database: stores stages
- Teams → Odoo database: stores teams
- Tags → Odoo database: stores tags
- Initial stages → Stages: defines defaults
- Ticket model → Customer ticket links: links customer
- Customer ticket links → Odoo database: reads ticket links
- Ticket model → Odoo mail framework: inherits chatter
- Access controls → Ticket model: restricts access
- Model permissions → Ticket model: grants permissions
