---
# System prepended metadata

title: Organizational Flow Diagram (Zilla Level & HQ Level)

---

# Organizational Flow Diagram (Zilla Level & HQ Level)

![flow-digram](https://hackmd.io/_uploads/BytG6rEgbl.png)

This document explains the hierarchical workflow from Zilla level to HQ level, including the relationship between IC and Wings, and the escalation/reporting process.

---

## Zilla Level Flow

Field operations at the district (Zilla) level follow a structured chain of command:

```
FS ↔ FO ↔ AD ↔ JD/DD
```

### Roles at Zilla Level

* **FS — Field Staff**: Primary ground-level personnel who collect information and carry out field tasks.
* **JFO — Junior Field Officer**: Assists the FO, sometimes integrated within the FO role depending on structure.
* **FO — Field Officer**: Supervises field staff and reports to AD.
* **AD — Assistant Director**: Mid-level supervisor responsible for operational oversight.
* **DD — Deputy Director / JD — Joint Director**: Higher-level officers at Zilla level who manage ADs and coordinate with IC.

---

## IC (Incident Controller / In-Charge)

The **IC** acts as a pivotal connection between Zilla-level officers and HQ. IC is considered equivalent to a Wing at HQ.

### Important Notes:

* **IC and Wing are equivalent units.**
* Tasks and reports flow from Zilla → IC → Wing (HQ).
* Normally, **IC interacts directly with Wings** for escalation, reporting, or management.

---

## HQ Level Flow

Headquarters operates at a higher administrative structure:

```
Desk ↔ Sub‑Section ↔ Section ↔ Director
```

### Roles at HQ Level

* **Desk**: Basic operational unit handling incoming cases, updates, and routing.
* **Sub‑Section**: Supervises multiple desks.
* **Section**: Managed by senior officers, monitors multiple sub‑sections.
* **Dir — Director**: Final authority for the section; reports to DG.
* **DG — Director General**: Top authority in the hierarchy.

---

## System Interaction Between Zilla and HQ

### Normal Communication Flow

```
Zilla Officers → IC → Wing (HQ)
```

### Exception Case (Special Assignment)

If **DG or Director assigns any task directly to FS or lower-level officers**, then:

* That officer (FS, JFO, FO, AD, etc.) will receive **direct access** to the incident/task.
* They must report back up the chain as assigned.

---

## Complete Entity List

| Abbreviation | Full Form            |
| ------------ | -------------------- |
| FS           | Field Staff          |
| JFO          | Junior Field Officer |
| FO           | Field Officer        |
| AD           | Assistant Director   |
| DD           | Deputy Director      |
| JD           | Joint Director       |
| ADD          | Additional Director  |
| Dir          | Director             |
| DG           | Director General     |

---

# Incident Sharing Rules - Hierarchy-Based Access Control

## Overview

This document explains the sharing eligibility rules for incidents based on organizational hierarchy and zone/wing membership. The system uses a hierarchical model where users can share incidents with others based on their position in the organization.

---

## Hierarchy Levels

| Role | Level | Description |
|------|-------|-------------|
| **Director** | 1 | Top authority |
| **DG (Director General)** | 2 | Second highest authority |
| **Wing Head** | 3 | Manages wings at HQ level |
| **Zonal Incharge** | 4 | Manages zones, can cross-zone share |
| **Zonal Commander** | 5 | Commands within a zone |
| **Field Rep** | 6 | Field-level personnel (lowest) |

**Note:** Lower level number = Higher authority

---

## Sharing Rules by Role

### 1. Director (Level 1) and DG (Level 2)

**Can share with:** Everyone

- No restrictions
- Can share with all hierarchy levels
- Can share across all zones and wings
- Sharing reason: `"hierarchy"`

**Code Logic:**
```python
if current_level == 1 or current_level == 2:
    return "hierarchy"  # Can see everyone
```

---

### 2. Wing Head (Level 3)

**Can share with:**
1. DG and Director (levels 1-2)
2. Other Wing Heads (level 3)
3. Users in their wing's zones (any level, if they belong to zones in the same wing)

**Restrictions:**
- Cannot share with users outside their wing's zones
- Cannot share with users in different wings

**Code Logic:**
```python
elif current_level == 3:
    # Can see DG and Director
    if target_level <= 2 or target_level == 3:
        return "hierarchy"
    # Can see users in their wing's zones
    elif target_zones and current_wings and target_wings:
        if current_wings & target_wings:  # Same wing
            return "hierarchy"
```

**Example:**
- Wing Head in `wing-intelligence` can share with:
  - All Directors and DGs
  - Other Wing Heads
  - Any user in zones that belong to `wing-intelligence`

---

### 3. Zonal Incharge (Level 4)

**Can share with:**
1. Wing Head and above (levels 1-3) in the same wing
2. Users in the same zone (any level)
3. Other Zonal Incharges (cross-zone sharing, if `can_cross_zone_share = True`)

**Restrictions:**
- Cannot share with users in different zones (unless cross-zone sharing is enabled)
- Cannot share with users in different wings (except higher levels)

**Code Logic:**
```python
elif current_level == 4:
    # Can see Wing Head and above in same wing
    if target_level <= 3 and current_wings & target_wings or current_zones & target_zones:
        return "hierarchy"
    # Can cross-zone share with other incharges
    elif can_cross_zone and target_level == 4:
        return "cross_zone"
```

**Example:**
- Zonal Incharge in `zone-1` and `wing-intelligence` can share with:
  - Directors, DGs, Wing Heads in `wing-intelligence`
  - All users in `zone-1` (any level)
  - Other Zonal Incharges in different zones (if cross-zone enabled)

---

### 4. Zonal Commander (Level 5)

**Can share with:**
1. Zonal Incharge and above (levels 1-4) in the same zone
2. Field Reps (level 6) in the same zone

**Restrictions:**
- Must be in the same zone
- Cannot share with users in different zones
- Cannot share with other Commanders (same level)

**Code Logic:**
```python
elif current_level == 5:
    # Can see Incharge and above in same zone
    if (
        target_level <= 4
        and current_zones & target_zones
        or target_level == 6
        and current_zones & target_zones
    ):
        return "hierarchy"
```

**Example:**
- Zonal Commander in `zone-1` can share with:
  - Zonal Incharge in `zone-1`
  - Wing Head, Director, DG (if they're in `zone-1`)
  - Field Reps in `zone-1`
  - Cannot share with users in `zone-2`, `zone-3`, etc.

---

### 5. Field Rep (Level 6)

**Can share with:**
1. Zonal Commander (level 5) in the same zone
2. Zonal Incharge (level 4) in the same zone

**Restrictions:**
- Must be in the same zone
- Cannot share with other Field Reps (same level)
- Cannot share with users in different zones
- Cannot share with higher levels outside their zone

**Code Logic:**
```python
elif current_level == 6:
    # Can see Commander and Incharge in same zone
    if target_level in [4, 5] and current_zones & target_zones:
        return "hierarchy"
```

**Example:**
- Field Rep in `zone-1` can share with:
  - Zonal Commander in `zone-1`
  - Zonal Incharge in `zone-1`
  - Cannot share with:
    - Other Field Reps
    - Users in `zone-2`, `zone-3`, etc.
    - Wing Head, Director, DG (unless they're in `zone-1`)

---

## Sharing Eligibility Matrix

| Your Role | Level | Can Share With | Zone/Wing Requirement |
|-----------|-------|----------------|----------------------|
| **Director** | 1 | All levels | No restriction |
| **DG** | 2 | All levels | No restriction |
| **Wing Head** | 3 | Levels 1-3, users in wing's zones | Same wing |
| **Zonal Incharge** | 4 | Levels 1-4 (same wing), all in same zone, other Incharges (cross-zone) | Same zone or same wing (for higher levels) |
| **Zonal Commander** | 5 | Levels 1-4, 6 (in same zone) | Same zone only |
| **Field Rep** | 6 | Levels 4-5 (in same zone) | Same zone only |

---

## Key Concepts

### 1. Zone Overlap (`current_zones & target_zones`)
- Users must share at least one zone to be eligible
- Example: If you're in `zone-1` and target is in `zone-1`, you can share
- If you're in `zone-1` and target is in `zone-2`, you cannot share (unless you're Director/DG)

### 2. Wing Overlap (`current_wings & target_wings`)
- Users must share at least one wing to be eligible
- Example: If you're in `wing-intelligence` and target is in `wing-intelligence`, you can share
- Used for Wing Head and Zonal Incharge sharing rules

### 3. Cross-Zone Sharing (`can_cross_zone_share`)
- Only Zonal Incharge (level 4) can cross-zone share
- Must have `can_cross_zone_share = True` in their profile
- Allows sharing with other Zonal Incharges in different zones
- Sharing reason: `"cross_zone"`

### 4. Hierarchy Direction
- Generally, sharing flows upward (lower levels share with higher levels)
- Director and DG can share with everyone (bidirectional)
- Same-level sharing is restricted (except Director/DG and cross-zone Incharges)

---

## Sharing Reasons

The system returns different sharing reasons:

- `"hierarchy"` - Standard hierarchy-based sharing (most common)
- `"cross_zone"` - Cross-zone sharing between Zonal Incharges
- `"incident_shared"` - User already has access to the incident (from incident context)
- `None` - Cannot share (user is filtered out)

---

## Flow Diagram

```
Director/DG (1-2)
    ↓ (can share with everyone)
Wing Head (3)
    ↓ (can share with same wing)
Zonal Incharge (4)
    ↓ (can share with same zone or cross-zone)
Zonal Commander (5)
    ↓ (can share with same zone)
Field Rep (6)
    ↓ (can only share upward)
```

---

## Examples

### Example 1: Field Rep Sharing
- **You:** Field Rep (level 6) in `zone-1`
- **Can share with:**
  - Zonal Commander (level 5) in `zone-1` ✓
  - Zonal Incharge (level 4) in `zone-1` ✓
- **Cannot share with:**
  - Field Rep in `zone-1` ✗ (same level)
  - Zonal Commander in `zone-2` ✗ (different zone)
  - Wing Head ✗ (not in same zone)

### Example 2: Zonal Incharge Sharing
- **You:** Zonal Incharge (level 4) in `zone-1`, `wing-intelligence`
- **Can share with:**
  - Director, DG, Wing Head in `wing-intelligence` ✓
  - All users in `zone-1` (any level) ✓
  - Other Zonal Incharges in different zones (if cross-zone enabled) ✓
- **Cannot share with:**
  - Users in `zone-2` (unless cross-zone) ✗
  - Users in `wing-operation` (unless higher level) ✗

### Example 3: Director Sharing
- **You:** Director (level 1)
- **Can share with:** Everyone (all levels, all zones, all wings) ✓

---

## Implementation Notes

1. **No Hierarchy Level = No Sharing**
   - If a user has no `hierarchy_level`, they cannot be shared with
   - The function returns `None` immediately

2. **Zone/Wing Matching**
   - Uses set intersection (`&`) to check for overlap
   - Users can belong to multiple zones/wings
   - Sharing is allowed if there's any overlap

3. **Level Comparison**
   - Uses numeric comparison (`<=`, `in`)
   - Lower number = Higher authority
   - Level 1 (Director) is highest, Level 6 (Field Rep) is lowest

---

## Summary

The sharing system enforces:
- **Hierarchical access control** - Users can share with their supervisors and peers in their organizational unit
- **Zone-based restrictions** - Most sharing requires zone overlap
- **Wing-based restrictions** - Higher-level sharing considers wing membership
- **Upward flow** - Lower levels share with higher levels
- **Top-level access** - Director and DG have unrestricted access

This ensures incidents are shared according to organizational structure and maintains proper access control boundaries.
