<?php
/**
 * Created by PhpStorm.
 * User: mindu
 * Date: 17/8/18
 * Time: 11:05 AM
 */
namespace App\Http\Controllers\Vendors;

use App\Events\V1\EventABFLWebhook;
use App\Events\V1\EventHomevilleWebhook;
use App\Events\V1\EventJMWebhook;
use App\Events\V1\EventUtkarshWebhook;
use App\Events\V1\EventVivritiWebhook;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;

class VendorController extends Controller
{
    /**
     * @var Request
     */
    private $request;

    public function __construct(Request $request){
        $this->request = $request;
    }

    public function breUpdate(){
        $this->request->merge(['caller' => __FUNCTION__]);
        event(new EventABFLWebhook($this->request->all()));
        return response()->json(['status' => 'OK', 'message' => 'success']);
    }

    public function drawdownWrapper(){
        $this->request->merge(['caller' => __FUNCTION__]);
        event(new EventABFLWebhook($this->request->all()));
        return response()->json(['status' => 'OK', 'message' => 'success']);
    }

    public function jmWebhookUpdate(){
        $this->request->merge(['caller' => __FUNCTION__]);
        event(new EventJMWebhook($this->request->all()));
        return response()->json(['status' => 'OK', 'message' => 'success']);
    }

    public function vivritiWebhookUpdate(){
        $this->request->merge(['caller' => __FUNCTION__]);
        event(new EventVivritiWebhook($this->request->all()));
        return response()->json(['status' => 'OK', 'message' => 'success']);
    }

    public function utkarshWebhookUpdate(){
        $this->request->merge(['caller' => __FUNCTION__]);
        event(new EventUtkarshWebhook($this->request->all()));
        return response()->json(['status' => 'OK', 'message' => 'success']);
    }

    public function homevilleWebhookUpdate(){
        $this->request->merge(['caller' => __FUNCTION__]);
        event(new EventHomevilleWebhook($this->request->all()));
        return response()->json(['status' => 'OK', 'message' => 'success']);
    }
}