{
  "info": {
    "_postman_id": "project-team-management",
    "name": "Project Team Management - Complete API",
    "description": "API for managing project team members with role assignment and scheduling",
    "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
  },
  "item": [
    {
      "name": "Project Team Members",
      "description": "Manage project team members",
      "item": [
        {
          "name": "List Team Members",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{access_token}}",
                "type": "text"
              },
              {
                "key": "Accept",
                "value": "application/json",
                "type": "text"
              }
            ],
            "url": {
              "raw": "{{BASE_URL}}/projects/{{project_id}}/team-members?per_page=15",
              "host": ["{{BASE_URL}}"],
              "path": ["projects", "{{project_id}}", "team-members"],
              "query": [{"key": "per_page", "value": "15"}]
            }
          }
        },
        {
          "name": "Add Team Member",
          "request": {
            "method": "POST",
            "header": [
              {"key": "Authorization", "value": "Bearer {{access_token}}", "type": "text"},
              {"key": "Content-Type", "value": "application/json", "type": "text"},
              {"key": "Accept", "value": "application/json", "type": "text"}
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"user_id\": 5,\n  \"role\": \"مهندس موقع\",\n  \"start_date\": \"2026-01-10 08:00:00\",\n  \"end_date\": null\n}"
            },
            "url": {
              "raw": "{{BASE_URL}}/projects/{{project_id}}/team-members",
              "host": ["{{BASE_URL}}"],
              "path": ["projects", "{{project_id}}", "team-members"]
            }
          }
        },
        {
          "name": "Get Team Member Details",
          "request": {
            "method": "GET",
            "header": [
              {"key": "Authorization", "value": "Bearer {{access_token}}", "type": "text"},
              {"key": "Accept", "value": "application/json", "type": "text"}
            ],
            "url": {
              "raw": "{{BASE_URL}}/projects/{{project_id}}/team-members/{{user_id}}",
              "host": ["{{BASE_URL}}"],
              "path": ["projects", "{{project_id}}", "team-members", "{{user_id}}"]
            }
          }
        },
        {
          "name": "Update Team Member",
          "request": {
            "method": "PUT",
            "header": [
              {"key": "Authorization", "value": "Bearer {{access_token}}", "type": "text"},
              {"key": "Content-Type", "value": "application/json", "type": "text"},
              {"key": "Accept", "value": "application/json", "type": "text"}
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"role\": \"مهندس رئيسي\",\n  \"start_date\": \"2026-01-10 08:00:00\",\n  \"end_date\": \"2026-06-30 17:00:00\"\n}"
            },
            "url": {
              "raw": "{{BASE_URL}}/projects/{{project_id}}/team-members/{{user_id}}",
              "host": ["{{BASE_URL}}"],
              "path": ["projects", "{{project_id}}", "team-members", "{{user_id}}"]
            }
          }
        },
        {
          "name": "Delete Team Member",
          "request": {
            "method": "DELETE",
            "header": [
              {"key": "Authorization", "value": "Bearer {{access_token}}", "type": "text"},
              {"key": "Accept", "value": "application/json", "type": "text"}
            ],
            "url": {
              "raw": "{{BASE_URL}}/projects/{{project_id}}/team-members/{{user_id}}",
              "host": ["{{BASE_URL}}"],
              "path": ["projects", "{{project_id}}", "team-members", "{{user_id}}"]
            }
          }
        },
        {
          "name": "Get Active Team Members",
          "request": {
            "method": "GET",
            "header": [
              {"key": "Authorization", "value": "Bearer {{access_token}}", "type": "text"},
              {"key": "Accept", "value": "application/json", "type": "text"}
            ],
            "url": {
              "raw": "{{BASE_URL}}/projects/{{project_id}}/team-members/active",
              "host": ["{{BASE_URL}}"],
              "path": ["projects", "{{project_id}}", "team-members", "active"]
            }
          }
        }
      ]
    },
    {
      "name": "Maintenance - Schedule Visit with Team Validation",
      "description": "Create maintenance visit with team member validation",
      "item": [
        {
          "name": "Create Visit - Team Member Active",
          "request": {
            "method": "POST",
            "header": [
              {"key": "Authorization", "value": "Bearer {{access_token}}", "type": "text"},
              {"key": "Content-Type", "value": "application/json", "type": "text"},
              {"key": "Accept", "value": "application/json", "type": "text"}
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"maintenance_request_id\": 1,\n  \"maintenance_project_id\": 1,\n  \"assigned_to_user_id\": 5,\n  \"visit_type\": \"preventive\",\n  \"status\": \"scheduled\",\n  \"scheduled_at\": \"2026-01-20 10:00:00\",\n  \"notes\": \"زيارة صيانة دورية\"\n}"
            },
            "url": {
              "raw": "{{BASE_URL}}/maintenance/visits",
              "host": ["{{BASE_URL}}"],
              "path": ["maintenance", "visits"]
            }
          }
        },
        {
          "name": "Create Visit - Team Member NOT in Project",
          "request": {
            "method": "POST",
            "header": [
              {"key": "Authorization", "value": "Bearer {{access_token}}", "type": "text"},
              {"key": "Content-Type", "value": "application/json", "type": "text"},
              {"key": "Accept", "value": "application/json", "type": "text"}
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"maintenance_request_id\": 1,\n  \"maintenance_project_id\": 1,\n  \"assigned_to_user_id\": 999,\n  \"visit_type\": \"preventive\",\n  \"status\": \"scheduled\",\n  \"scheduled_at\": \"2026-01-20 10:00:00\"\n}"
            },
            "url": {
              "raw": "{{BASE_URL}}/maintenance/visits",
              "host": ["{{BASE_URL}}"],
              "path": ["maintenance", "visits"]
            }
          }
        }
      ]
    }
  ],
  "variable": [
    {"key": "BASE_URL", "value": "http://localhost:8000"},
    {"key": "access_token", "value": ""},
    {"key": "project_id", "value": "1"},
    {"key": "user_id", "value": "5"}
  ]
}
