<?php
Route::group( [ 'prefix' => 'account' ], function () {
	Route::post( 'login-with-phone', 'Api\v2\AccountController@loginWithPhone' );
	Route::post( 'logout', 'Api\v2\AccountController@logout' );
	Route::post( 'exclude-hostel', 'Api\v2\AccountController@excludeHostels' );
	Route::post( 'add-refer-code', 'Api\v2\AccountController@addReferCode' );
	Route::post( 'take-lead', 'Api\v2\AccountController@takeLead' );
	Route::get( 'lead-taken', 'Api\v2\AccountController@leadTaken' );
	Route::post( 'exclude-leads', 'Api\v2\AccountController@excludeLeads' );
	Route::post( 'register', 'Api\v2\AccountController@register' );
	Route::post( 'update', 'Api\v2\AccountController@update' );
	Route::post( 'refresh-token', 'Api\v2\AccountController@refreshToken' );
	Route::post( 'create-bookmark', 'Api\v2\AccountController@createBookmark' );
	Route::post( 'remove-bookmark', 'Api\v2\AccountController@removeBookmark' );

    Route::post( 'crawl-wishlist', 'Api\v2\AccountController@hostelPostWishlist' );
    Route::get( 'crawl-wishlist', 'Api\v2\AccountController@getHostelPostWishlist' );
    Route::get( 'hostel-post', 'Api\v2\AccountController@getHostelPost' );


    Route::get( 'current-account-list', 'Api\v2\AccountController@getCurrentAccountList' );
	Route::get( 'find-session', 'Api\v2\AccountController@getFindSession' );
	Route::get( 'bookmark', 'Api\v2\AccountController@getBookmark' );
	Route::get( 'config', 'Api\v2\AccountController@getConfig' );
	Route::get( 'refer', 'Api\v2\AccountController@referList' );
	Route::get( 'recommend-hostels', 'Api\v2\AccountController@getHostelForRenter' );
	Route::get( 'refer-link', 'Api\v2\AccountController@getAffiliateLink' );
} );

Route::group( [ 'prefix' => 'search' ], function () {
    Route::get( 'province', 'Api\v2\SearchController@getProvinceBestSearch' );
    Route::get( 'district', 'Api\v2\SearchController@getDistrictBestSearch' );

	Route::get( 'hostel', 'Api\v2\SearchController@search' );
	Route::get( 'customer', 'Api\v2\SearchController@customersRequest' );
	Route::post( 'update', 'Api\v2\SearchController@updateSearch' );
	Route::post( 'cancel', 'Api\v2\SearchController@cancel' );
} );

Route::group( [ 'prefix' => 'transaction' ], function () {
	Route::post( 'update-status', 'Api\v2\TransactionController@updateStatusTransaction' );
	Route::get( 'history', 'Api\v2\TransactionController@getHistory' );
} );

Route::group( [ 'prefix' => 'payment' ], function () {
	Route::group( [ 'prefix' => 'momo' ], function () {
		Route::post( 'create-app-pay-request', 'Api\v2\PaymentController@createAppPayRequest' );
        Route::post( 'create-order-request', 'Api\v2\PaymentController@createOrderRequest' );
        Route::post( 'create-money-info-request', 'Api\v2\PaymentController@createMoneyInfoOrderRequest' );
        Route::post( 'create-money-infos-request', 'Api\v2\PaymentController@createMoneyInfosOrderRequest' );
		Route::any( 'confirm', 'Api\v2\PaymentController@confirmMomoAppPayRequest' );
	} );

	Route::group( [ 'prefix' => 'zalopay' ], function () {
		Route::post( 'create-order', 'Api\v2\PaymentController@createZaloOrder' );
	} );
} );

Route::group( [ 'prefix' => 'package' ], function () {
	Route::get( 'list', 'Api\v2\PackageController@getPackages' );
} );

Route::group( [ 'prefix' => 'achievement' ], function () {
	Route::get( 'list', 'Api\v2\AchievementController@getAchievements' );
} );

Route::group( [ 'prefix' => 'hostel-post-crawl' ], function () {
	Route::post( 'create', 'Api\v2\HostelPostCrawlController@store' );
    Route::post( 'create-vip', 'Api\v2\HostelPostCrawlController@storeVip' );
	Route::post( 'update', 'Api\v2\HostelPostCrawlController@update' );
    Route::post( 'active', 'Api\v2\HostelPostCrawlController@updateActive' );
	Route::post( 'delete', 'Api\v2\HostelPostCrawlController@destroy' );
	Route::get( 'list', 'Api\v2\HostelPostCrawlController@getList' );
    Route::get( 'detail', 'Api\v2\HostelPostCrawlController@detail' );
    Route::get( 'vip', 'Api\v2\HostelPostCrawlController@getHostelPostCrawlVip' );
} );


Route::group( [ 'prefix' => 'conversation' ], function () {
	Route::post( 'create', 'Api\v2\ConversationController@create' );
    Route::post( 'update-allow-tenant-reply', 'Api\v2\ConversationController@updateAllowTenantReply' );
	Route::post( 'create-by-renter', 'Api\v2\ConversationController@createByRenter' );
    Route::post( 'create-by-users', 'Api\v2\ConversationController@createByUsers' );
	Route::post( 'report-sale', 'Api\v2\ConversationController@reportSale' );
	Route::post( 'send-message', 'Api\v2\ConversationController@sendMessage' );
	Route::post( 'send-confirm', 'Api\v2\ConversationController@sendConfirm' );
	Route::post( 'confirm', 'Api\v2\ConversationController@confirm' );
	Route::post( 'archive', 'Api\v2\ConversationController@archive' );
	Route::get( 'list', 'Api\v2\ConversationController@index' );
	Route::get( 'messages', 'Api\v2\ConversationController@getMessages' );
	Route::get( 'detail', 'Api\v2\ConversationController@detail' );
	Route::get( 'count-unread-message', 'Api\v2\ConversationController@countUnreadConversation' );
    Route::get( 'get-by-users', 'Api\v2\ConversationController@getConversationByUsers' );
} );

Route::group( [ 'prefix' => 'notification' ], function () {
	Route::get( 'list', 'Api\v2\NotificationController@getNotifications' );
	Route::post( 'update-status', 'Api\v2\NotificationController@updateStatusNotification' );
	Route::get( 'count-unread-notification', 'Api\v2\NotificationController@countUnreadNotification' );
	Route::get( 'mark-read-notification', 'Api\v2\NotificationController@markReadNotification' );
} );