<?php

use CodeIgniter\Router\RouteCollection;

/**
 * @var RouteCollection $routes
 */
$routes->get('/', 'Home::index');

$routes->group('api', function($routes) {
    
    // --- 1. AUTENTIKASI ---
    $routes->post('login', 'Api\Auth::login'); 
    $routes->post('register', 'Api\Auth::register'); 
    
    // --- 2. PELANGGAN (MENU & WILAYAH) ---
    // URL: https://.../api/menu
    $routes->get('menu', 'Api\Menu::index'); 
    // URL: https://.../api/wilayah
    $routes->get('wilayah', 'Api\Menu::get_wilayah');
    
    // --- 3. TRANSAKSI PESANAN ---
    $routes->post('checkout', 'Api\Pesanan::checkout'); 
    $routes->get('riwayat/(:num)', 'Api\Pesanan::riwayat/$1'); 
    $routes->post('konfirmasi_pembayaran', 'Api\Pesanan::konfirmasi_pembayaran');
    
    // --- 4. GRUP ADMIN (SANGAT PENTING) ---
    // Semua rute di bawah ini akan diawali dengan 'api/admin/...'
    $routes->group('admin', function($routes) {
        
        // Pengelolaan Menu (CRUD)
        // Sesuai ApiService: ${baseUrl}admin/menu/...
        $routes->get('menu', 'Api\Menu::admin_index');      // List Menu Admin
        $routes->post('menu/add', 'Api\Menu::create');      // Tambah Menu
        $routes->post('menu/update/(:num)', 'Api\Menu::update/$1'); // Edit Menu
        $routes->post('menu/delete/(:num)', 'Api\Menu::delete/$1'); // Hapus Menu
        
        // Pengelolaan Pelanggan & Laporan
        $routes->get('pelanggan', 'Api\Admin::daftar_pelanggan');
        $routes->get('pesanan', 'Api\Admin::daftar_pesanan');
        $routes->get('laporan', 'Api\Admin::laporan_ringkasan');
        $routes->get('laporan_filter', 'Api\Admin::laporan_filter');
        $routes->post('konfirmasi/(:num)', 'Api\Admin::konfirmasi_pesanan/$1');
    });
});