TGM Expert provides comprehensive project management including general projects, CAPEX projects (capital expenditure), budgets, and financial tracking.

Table of Contents


Overview

Project Types

Type Description Use Case
General Project Standard project management Maintenance projects, improvements
CAPEX Project Capital expenditure project Major equipment purchases, upgrades

Project Workflow

Planning → Approval → Execution → Monitoring → Completion
    │          │          │            │           │
    ▼          ▼          ▼            ▼           ▼
  Budget    Finance    Work       Track        Close &
  Create    Review    Orders     Costs        Report

Projects

Project Entity

{
  "id": 1,
  "name": "Turbine Governor Upgrade",
  "description": "Upgrade governor system on Unit 1",
  "code": "PRJ-2026-001",
  "status": "IN_PROGRESS",
  "priority": "HIGH",
  "type": "UPGRADE",
  "startDate": "2026-01-15",
  "targetEndDate": "2026-06-30",
  "actualEndDate": null,
  "estimatedCost": 250000.00,
  "actualCost": 125000.00,
  "percentComplete": 50,
  "projectManager": {
    "id": 10,
    "name": "John Smith"
  },
  "location": {
    "id": 1,
    "name": "LG-2 Power Station"
  },
  "unit": {
    "id": 100,
    "name": "Turbine Unit 1"
  },
  "workOrders": [
    {"id": 500, "number": "WO-2026-0500"}
  ],
  "milestones": [
    {
      "name": "Design Complete",
      "dueDate": "2026-02-28",
      "status": "COMPLETED"
    },
    {
      "name": "Parts Ordered",
      "dueDate": "2026-03-15",
      "status": "IN_PROGRESS"
    }
  ]
}

Project Status

Status Description
DRAFT Project being defined
PENDING_APPROVAL Awaiting approval
APPROVED Approved, not started
IN_PROGRESS Currently active
ON_HOLD Temporarily paused
COMPLETED Successfully finished
CANCELLED Project cancelled

Project Types

Type Description
MAINTENANCE Maintenance project
UPGRADE Equipment upgrade
REPLACEMENT Equipment replacement
NEW_INSTALLATION New equipment installation
REFURBISHMENT Major overhaul
STUDY Engineering study
OTHER Other project type

API Endpoints

Method Endpoint Description
GET /api/projects List projects
GET /api/projects/{id} Get project
POST /api/projects Create project
PUT /api/projects/{id} Update project
DELETE /api/projects/{id} Delete project

Create Project

curl -X POST https://api.tgm-expert.com/api/projects \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Turbine Governor Upgrade",
    "description": "Upgrade governor system on Unit 1",
    "type": "UPGRADE",
    "priority": "HIGH",
    "locationId": 1,
    "unitId": 100,
    "projectManagerId": 10,
    "startDate": "2026-01-15",
    "targetEndDate": "2026-06-30",
    "estimatedCost": 250000.00
  }'

Filter Projects

# By status
GET /api/projects?status=IN_PROGRESS

# By location
GET /api/projects?locationId=1

# By type
GET /api/projects?type=UPGRADE

# By date range
GET /api/projects?startDateFrom=2026-01-01&startDateTo=2026-12-31

CAPEX Projects

CAPEX Project Entity

{
  "id": 1,
  "name": "Transformer Replacement",
  "description": "Replace main transformer at LG-2",
  "category": "ELECTRICAL",
  "status": "APPROVED",
  "startDate": "2026-03-01",
  "endDate": "2026-12-31",
  "estimatedCost": "5000000",
  "actualCost": "1250000",
  "currency": "CAD",
  "approvalStatus": "APPROVED",
  "approvedBy": "CFO Office",
  "approvalDate": "2026-01-15",
  "location": {
    "id": 1,
    "name": "LG-2 Power Station"
  }
}

CAPEX Categories

Category Description
MECHANICAL Mechanical equipment
ELECTRICAL Electrical systems
CIVIL Civil/structural work
INSTRUMENTATION I&C systems
ENVIRONMENTAL Environmental compliance
SAFETY Safety systems
IT_SYSTEMS IT infrastructure
OTHER Other capital expense

Approval Status

Status Description
DRAFT Not submitted
PENDING Awaiting approval
APPROVED Approved
REJECTED Rejected
DEFERRED Deferred to future

API Endpoints

Method Endpoint Description
GET /api/capex-projects List CAPEX projects
GET /api/capex-projects/{id} Get CAPEX project
POST /api/capex-projects Create CAPEX project
PUT /api/capex-projects/{id} Update CAPEX project
DELETE /api/capex-projects/{id} Delete CAPEX project

Create CAPEX Project

curl -X POST https://api.tgm-expert.com/api/capex-projects \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Transformer Replacement",
    "description": "Replace aging main transformer",
    "category": "ELECTRICAL",
    "locationId": 1,
    "startDate": "2026-03-01",
    "endDate": "2026-12-31",
    "estimatedCost": "5000000",
    "currency": "CAD"
  }'

Budgets

Budget Entity

{
  "id": 1,
  "name": "2026 Maintenance Budget",
  "description": "Annual maintenance budget for LG-2",
  "fiscalYear": 2026,
  "type": "MAINTENANCE",
  "status": "APPROVED",
  "totalAmount": 2500000.00,
  "allocatedAmount": 1800000.00,
  "spentAmount": 450000.00,
  "remainingAmount": 2050000.00,
  "currency": "CAD",
  "location": {
    "id": 1,
    "name": "LG-2 Power Station"
  },
  "lineItems": [
    {
      "category": "PREVENTIVE_MAINTENANCE",
      "budgeted": 1000000.00,
      "spent": 250000.00
    },
    {
      "category": "CORRECTIVE_MAINTENANCE",
      "budgeted": 500000.00,
      "spent": 150000.00
    },
    {
      "category": "SPARE_PARTS",
      "budgeted": 750000.00,
      "spent": 50000.00
    }
  ]
}

Budget Types

Type Description
MAINTENANCE Maintenance budget
CAPEX Capital expenditure
OPERATIONS Operating expenses
EMERGENCY Emergency reserve
PROJECT Project-specific

API Endpoints

Method Endpoint Description
GET /api/budgets List budgets
GET /api/budgets/{id} Get budget
POST /api/budgets Create budget
PUT /api/budgets/{id} Update budget
DELETE /api/budgets/{id} Delete budget

Create Budget

curl -X POST https://api.tgm-expert.com/api/budgets \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "2026 Maintenance Budget",
    "fiscalYear": 2026,
    "type": "MAINTENANCE",
    "locationId": 1,
    "totalAmount": 2500000.00,
    "currency": "CAD"
  }'

Budget Variance

Track budget vs actual spending.

Variance Analysis

curl -X GET "https://api.tgm-expert.com/budget-variance?budgetId=1" \
  -H "Authorization: Bearer $TOKEN"

Response:

{
  "data": {
    "budgetId": 1,
    "budgetName": "2026 Maintenance Budget",
    "period": "YTD",
    "budgeted": 2500000.00,
    "actual": 450000.00,
    "variance": 2050000.00,
    "variancePercent": 82.0,
    "status": "UNDER_BUDGET",
    "byCategory": [
      {
        "category": "PREVENTIVE_MAINTENANCE",
        "budgeted": 1000000.00,
        "actual": 250000.00,
        "variance": 750000.00,
        "variancePercent": 75.0
      },
      {
        "category": "CORRECTIVE_MAINTENANCE",
        "budgeted": 500000.00,
        "actual": 150000.00,
        "variance": 350000.00,
        "variancePercent": 70.0
      }
    ],
    "monthlyTrend": [
      {"month": "2026-01", "budgeted": 208333, "actual": 200000},
      {"month": "2026-02", "budgeted": 208333, "actual": 250000}
    ]
  }
}

Variance Status

Status Description
UNDER_BUDGET Spending below budget
ON_BUDGET Within acceptable variance
OVER_BUDGET Spending exceeds budget
CRITICAL Significantly over budget

API Endpoints

Method Endpoint Description
GET /budget-variance Get variance analysis
GET /budget-variance/by-category Variance by category
GET /budget-variance/by-location Variance by location
GET /budget-variance/forecast Spending forecast

Financial Tracking

Cost Tracking

Track costs across projects and work orders:

curl -X GET "https://api.tgm-expert.com/cost-tracking/project/1" \
  -H "Authorization: Bearer $TOKEN"

Response:

{
  "data": {
    "projectId": 1,
    "projectName": "Turbine Governor Upgrade",
    "estimated": 250000.00,
    "committed": 150000.00,
    "spent": 125000.00,
    "remaining": 125000.00,
    "percentComplete": 50,
    "byCategory": {
      "labor": 50000.00,
      "materials": 60000.00,
      "services": 15000.00
    },
    "byMonth": [
      {"month": "2026-01", "spent": 25000.00},
      {"month": "2026-02", "spent": 100000.00}
    ]
  }
}

Cost Categories

Category Description
LABOR Labor costs
MATERIALS Parts and materials
SERVICES External services
EQUIPMENT Equipment rental
TRAVEL Travel expenses
OTHER Other costs

Dashboard Integration

Project Dashboard

curl -X GET "https://api.tgm-expert.com/dashboard/projects" \
  -H "Authorization: Bearer $TOKEN"

Response:

{
  "data": {
    "totalProjects": 25,
    "activeProjects": 12,
    "completedThisYear": 8,
    "onHold": 2,
    "overdue": 3,
    "totalBudget": 10000000.00,
    "totalSpent": 4500000.00,
    "byStatus": {
      "IN_PROGRESS": 12,
      "PENDING_APPROVAL": 5,
      "ON_HOLD": 2,
      "COMPLETED": 8
    },
    "byPriority": {
      "HIGH": 5,
      "MEDIUM": 12,
      "LOW": 8
    },
    "upcomingMilestones": [
      {
        "projectId": 1,
        "projectName": "Governor Upgrade",
        "milestone": "Parts Ordered",
        "dueDate": "2026-03-15"
      }
    ]
  }
}


Filtering & Sorting

Filter Parameters

# By status
GET /api/projects?status=IN_PROGRESS

# By location
GET /api/projects?locationId=1

# By date range
GET /api/projects?startDateFrom=2026-01-01&startDateTo=2026-12-31

# By project manager
GET /api/projects?projectManagerId=10

# By priority
GET /api/projects?priority=HIGH

Sorting

# Sort by start date
GET /api/projects?sort=startDate&order=DESC

# Sort by estimated cost
GET /api/projects?sort=estimatedCost&order=DESC

# Sort by percent complete
GET /api/projects?sort=percentComplete&order=ASC

Best Practices

1. Set Clear Milestones

Break projects into trackable milestones:

{
  "milestones": [
    {"name": "Design Complete", "dueDate": "2026-02-28"},
    {"name": "Parts Ordered", "dueDate": "2026-03-15"},
    {"name": "Installation Start", "dueDate": "2026-04-01"},
    {"name": "Testing Complete", "dueDate": "2026-05-15"},
    {"name": "Project Closeout", "dueDate": "2026-06-30"}
  ]
}

Associate work orders with projects for cost tracking:

{
  "projectId": 1,
  "workOrders": [500, 501, 502]
}

3. Regular Budget Reviews

Monitor budget variance regularly:

# Weekly variance check
GET /budget-variance?budgetId=1&period=WEEKLY

4. Use CAPEX for Major Investments

Use CAPEX projects for: - Equipment purchases > $50,000 - Infrastructure upgrades - New installations - Major refurbishments

5. Document Approvals

Track all approvals in the system:

{
  "approvalStatus": "APPROVED",
  "approvedBy": "John Smith - VP Operations",
  "approvalDate": "2026-01-15",
  "approvalNotes": "Approved per budget meeting 2026-01-10"
}