{
    "success": true,
    "project": "CR112",
    "from": "2026-06-01",
    "to": "2026-06-12",
    "ecm": "all",
    "ecm_total": 12,
    "source_table": "readings",
    "correction": {
        "c1_offset_l": 300,
        "c2_offset_l": 300,
        "tank_max_l": 1000
    },
    "pricing": {
        "c1_price_per_l": 0.7,
        "c2_price_per_l": 0.9
    },
    "totals": {
        "c1_usage": 1472.95,
        "c2_usage": 1517.92,
        "c1_cost": 1031.07,
        "c2_cost": 1366.13,
        "grand_total": 2397.19
    },
    "rows": [
        {
            "date": "2026-06-01",
            "ecm_id": 3,
            "duration": "12:00 AM - 11:59 PM",
            "c1_usage": 133.39,
            "c2_usage": 127.42
        },
        {
            "date": "2026-06-01",
            "ecm_id": 7,
            "duration": "12:00 AM - 11:59 PM",
            "c1_usage": 0,
            "c2_usage": 0
        },
        {
            "date": "2026-06-02",
            "ecm_id": 3,
            "duration": "12:00 AM - 11:59 PM",
            "c1_usage": 123.75,
            "c2_usage": 148.68
        },
        {
            "date": "2026-06-02",
            "ecm_id": 7,
            "duration": "12:00 AM - 11:59 PM",
            "c1_usage": 0,
            "c2_usage": 0
        },
        {
            "date": "2026-06-03",
            "ecm_id": 3,
            "duration": "12:00 AM - 11:59 PM",
            "c1_usage": 118.25,
            "c2_usage": 140.8
        },
        {
            "date": "2026-06-03",
            "ecm_id": 7,
            "duration": "12:00 AM - 11:59 PM",
            "c1_usage": 0,
            "c2_usage": 0
        },
        {
            "date": "2026-06-04",
            "ecm_id": 3,
            "duration": "12:00 AM - 11:59 PM",
            "c1_usage": 118.07,
            "c2_usage": 142.66
        },
        {
            "date": "2026-06-04",
            "ecm_id": 7,
            "duration": "12:00 AM - 11:59 PM",
            "c1_usage": 0,
            "c2_usage": 0
        },
        {
            "date": "2026-06-05",
            "ecm_id": 3,
            "duration": "12:00 AM - 11:59 PM",
            "c1_usage": 136.94,
            "c2_usage": 132.21
        },
        {
            "date": "2026-06-05",
            "ecm_id": 7,
            "duration": "12:00 AM - 11:59 PM",
            "c1_usage": 0,
            "c2_usage": 0
        },
        {
            "date": "2026-06-06",
            "ecm_id": 3,
            "duration": "12:00 AM - 11:59 PM",
            "c1_usage": 99.89,
            "c2_usage": 119.97
        },
        {
            "date": "2026-06-06",
            "ecm_id": 7,
            "duration": "12:00 AM - 11:59 PM",
            "c1_usage": 0,
            "c2_usage": 0
        },
        {
            "date": "2026-06-07",
            "ecm_id": 3,
            "duration": "12:00 AM - 11:59 PM",
            "c1_usage": 122.91,
            "c2_usage": 108.46
        },
        {
            "date": "2026-06-07",
            "ecm_id": 7,
            "duration": "12:00 AM - 11:59 PM",
            "c1_usage": 0,
            "c2_usage": 0
        },
        {
            "date": "2026-06-08",
            "ecm_id": 3,
            "duration": "12:00 AM - 11:59 PM",
            "c1_usage": 158.99,
            "c2_usage": 169.85
        },
        {
            "date": "2026-06-08",
            "ecm_id": 7,
            "duration": "12:00 AM - 11:59 PM",
            "c1_usage": 0,
            "c2_usage": 0
        },
        {
            "date": "2026-06-09",
            "ecm_id": 3,
            "duration": "12:00 AM - 11:59 PM",
            "c1_usage": 109.45,
            "c2_usage": 104.39
        },
        {
            "date": "2026-06-09",
            "ecm_id": 7,
            "duration": "12:00 AM - 11:59 PM",
            "c1_usage": 0,
            "c2_usage": 0
        },
        {
            "date": "2026-06-10",
            "ecm_id": 3,
            "duration": "12:00 AM - 11:59 PM",
            "c1_usage": 125.86,
            "c2_usage": 93.53
        },
        {
            "date": "2026-06-10",
            "ecm_id": 7,
            "duration": "12:00 AM - 11:59 PM",
            "c1_usage": 0,
            "c2_usage": 0
        },
        {
            "date": "2026-06-11",
            "ecm_id": 3,
            "duration": "12:00 AM - 11:59 PM",
            "c1_usage": 122.88,
            "c2_usage": 137.23
        },
        {
            "date": "2026-06-11",
            "ecm_id": 7,
            "duration": "12:00 AM - 11:59 PM",
            "c1_usage": 0,
            "c2_usage": 0
        },
        {
            "date": "2026-06-12",
            "ecm_id": 3,
            "duration": "12:00 AM - 11:59 PM",
            "c1_usage": 102.57,
            "c2_usage": 92.72
        },
        {
            "date": "2026-06-12",
            "ecm_id": 7,
            "duration": "12:00 AM - 11:59 PM",
            "c1_usage": 0,
            "c2_usage": 0
        }
    ]
}