Skip to content

ChakerChourouk/almiyah-complaint-management

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AlMiyah Djazair - Complaint Management System

Overview

An Odoo 18 module for managing customer complaints at AlMiyah Djazair, a public water supply company serving 4 provinces in Algeria. It automates complaint registration (via web portal or agency counter), classification (technical/commercial), team assignment, processing workflows, and status tracking — across the company's central headquarters and multiple agency branches.

Project: Progiciel de Gestion Intégré (Integrated Management System)
Institution: École Nationale Supérieure d'Informatique (ESI)
Academic Year: 2025/2026
Team: 2CSSIT ESI


Table of Contents


Project Context

AlMiyah Djazair is an establishment responsible for providing drinking water to households and businesses across multiple provinces. The company operates through:

  • A central headquarters
  • Multiple agency branches in different municipalities

This module addresses the need to standardize and automate complaint management processes across all agencies.


Features

1. Complaint Registration (Volet Recensement)

  • Multiple Submission Channels:

    • Online form via web portal
    • Direct submission at agency counter by customer service agents
    • Internal surveillance cell complaints
  • Complaint Types:

    • From citizens
    • From enterprises
    • From internal surveillance cells
  • Complaint Information:

    • Date of complaint
    • Complaint subject/object
    • Detailed description
    • Claimant information (name, address, municipality, phone, email)
    • Supporting documents/attachments
    • Automatic agency assignment
    • Unique complaint ID (receipt/acknowledgment)
  • Portal Features:

    • Web form for complaint submission
    • Automatic receipt generation
    • Complaint status tracking
    • Document upload capability

2. Complaint Processing (Volet Traitement)

Commercial Complaints

  • Assigned to commercial agents team
  • Redressment commission formation
  • Official meeting minutes (PV) signed by all members
  • Accountant validation for:
    • Compensation decisions
    • Refund authorizations
    • Invoice rectification

Technical Complaints

  • Assigned to technical intervention teams
  • Diagnostic establishment
  • Complexity and severity evaluation
  • Multi-visit scheduling capability
  • Repair action documentation
  • Intervention team leader logs all activities

Common Workflow

  • Complaint categorization (technical/commercial)
  • Team assignment by agency manager
  • Customer service agent assignment
  • Status tracking
  • Archiving upon completion

Architecture

Inheritance Structure

The module extends existing Odoo CRM and contacts modules:

  • crm.lead - Extended to handle complaint records
  • res.users - Extended to link users to agencies
  • res.partner - Uses company contacts as agencies

Models

CrmLeadComplaint (extends crm.lead)

Main complaint model with fields for:

  • Complaint number (auto-generated)
  • Complaint object and description
  • Claimant type (citizen/enterprise/surveillance cell)
  • Category (technical/commercial)
  • Agency assignment
  • Status tracking
  • Documents/attachments

ComplaintAssignmentWizard

Wizard for assigning complaints to teams and agents:

  • Team selection based on complaint category
  • Agent assignment
  • Notes and additional information

Portal Templates

  • Complaint submission form
  • Status tracking page
  • Document management interface

Installation

Prerequisites

  • Odoo 18.0 or compatible version
  • Python 3.8+
  • Required dependencies: CRM, Contacts, Accounting modules

Steps

  1. Clone the repository:

    git clone https://github.com/yourusername/almiyah-complaint-management.git
    cd almiyah_complaint
  2. Place in Odoo addons directory:

    cp -r almiyah_complaint /path/to/odoo/addons/
  3. Update module list in Odoo:

    • Navigate to Apps > Update Apps List
  4. Install the module:

    • Search for "AlMiyah Djazair - Gestion des Réclamations"
    • Click Install
  5. Configure security rules (if needed):

    • Set up access control in Security tab
    • Assign user roles and permissions

Usage

For Claimants

Option 1: Web Portal Submission

  1. Navigate to /reclamation
  2. Fill in complaint form with:
    • Complaint subject
    • Detailed description
    • Claimant information (auto-filled if registered)
    • Attach supporting documents
  3. Submit form
  4. Receive automatic receipt with complaint number
  5. Track complaint status anytime via portal

Option 2: Agency Counter Submission

  1. Visit local agency office
  2. Provide complaint details to customer service agent
  3. Agent enters details into system
  4. Receive printed receipt with complaint number

For Customer Service Agents

  1. Create new complaint record
  2. Enter claimant information
  3. Categorize complaint (technical/commercial)
  4. Send automatic confirmation email to claimant
  5. Route to appropriate department

For Agency Manager

  1. Review pending complaints
  2. Classify complaint type (technical/commercial)
  3. Assign to appropriate team/agents using assignment wizard
  4. Monitor progress

For Commercial Team (Commercial Complaints)

  1. Review assigned complaints
  2. Conduct investigation
  3. Form redressment commission
  4. Document findings in meeting minutes
  5. Submit decision for accountant review

For Technical Team (Technical Complaints)

  1. Review assigned complaints
  2. Establish diagnostic
  3. Schedule intervention visits
  4. Document repairs and actions taken
  5. Update complaint status

For Accountant

  1. Review compensation/refund requests
  2. Validate decisions
  3. Generate invoice modifications if needed
  4. Approve or reject recommendations

For Customer Service Agent (Final)

  1. Mark complaint as resolved
  2. Archive complaint
  3. Update claimant via portal
  4. Send resolution notification email

Module Structure

almiyah_complaint/
├── __init__.py
├── __manifest__.py
├── README.md
├── .gitignore
│
├── models/
│   ├── __init__.py
│   ├── complaint.py              # Main complaint model
│   └── complaint_assignment_wizard.py  # Assignment workflow
│
├── controllers/
│   ├── __init__.py
│   └── portal.py                 # Portal routes and forms
│
├── views/
│   ├── complaint_views.xml       # Backend views
│   ├── wizard_views.xml          # Assignment wizard UI
│   └── portal_templates.xml      # Frontend portal templates
│
├── data/
│   ├── sequence.xml              # Auto-numbering sequences
│   └── email_template.xml        # Email notification templates
│
└── security/
    ├── security.xml              # Record rules
    └── ir.model.access.csv       # Access control

Technical Stack

Component Version
Odoo 18.0
Python 3.8+
Database PostgreSQL
Web Framework Odoo ORM
Front-end QWeb Templates

Dependencies

  • crm - CRM management
  • contacts - Contact/Partner management
  • account - Accounting features

Key Actors

Role Responsibility
Claimant Submit complaints and track status
Customer Service Agent Register and log complaints
Agency Manager Classify and assign complaints
Commercial Agents Handle commercial complaints, form commission
Technical Agents Handle technical complaints, perform diagnostics
Team Leader Supervise team, document actions
Accountant Validate compensation and refunds

Configuration Notes

Email Templates

The module includes automatic email notifications for:

  • Complaint acknowledgment/receipt
  • Assignment notifications
  • Status updates
  • Resolution notifications

Configure in data/email_template.xml

Sequences

Complaint numbers are auto-generated using sequences configured in data/sequence.xml

Security

  • Row-level security rules prevent users from accessing complaints outside their agency
  • Role-based access control ensures proper workflow authorization

Development Notes

  • Module uses Odoo inheritance patterns (_inherit)
  • Follows Odoo naming conventions
  • French language support for UI
  • Compatible with Odoo Community Edition

Contributing

As per project guidelines, each solution is proprietary to the team that developed it. Note: Per project specifications, it is strictly forbidden to share this solution with other teams or to take solutions from other teams.


Academic Information

Project: Progiciel de Gestion Intégré (PGI)
School: École Nationale Supérieure d'Informatique (ESI)
Academic Year: 2025/2026
Team: 2CSSIT ESI
Date: January 4, 2026

Deliverables Timeline:

  • Week of 01/04/2026: Operational analysis & process modeling
  • Week of 01/11/2026: Configuration deliverable (Excel format)
  • Week of 01/18/2026: Final delivery & system demonstration

License

This module is developed as part of an academic project at École Nationale Supérieure d'Informatique (ESI).

Ownership: This solution is the property of the ESI 2CSSIT team who developed it. Unauthorized sharing or copying is strictly prohibited per project guidelines.


Contact

For inquiries about this module, please contact the development team at ESI.


References

About

Odoo 18 module for managing customer complaints at AlMiyah Djazair — registration, classification, team assignment, and tracking across agencies.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages