/home/mip/mip/app/Modules/Api/Controllers/ApplicantController.php
<?php

namespace QxCMS\Modules\Api\Controllers;

use Auth;
use \Carbon\Carbon;
use Illuminate\Http\Request;

use QxCMS\Http\Controllers\Controller;
use QxCMS\Modules\Client\Models\Applicants\Applicant as Applicant;
use QxCMS\Modules\Client\Models\Applicants\JobApplied as JobApplied;

class ApplicantController extends Controller
{
    protected $applicant;
    protected $job_applied;

	public function __construct(Applicant $applicant, JobApplied $job_applied)
	{
		$this->applicant = $applicant;
        $this->job_applied = $job_applied;
	}

    public function saveApplicant(Request $request)
    {
        $applicant_input = array(
            'first_name'            => 'Sample First Name',
            'middle_name'           => 'Sample Middle Name',
            'last_name'             => 'Sample Last Name',
            'mobile_number'         => '09222222222',
            'email'                 => 'sample@only.com',
            'school'                => 'Sample College',
            'college_degree'        => 'Bachelor Degree',
            'company'               => 'Sample Company',
            'position'              => 'Sample Position',
            'yrs_exp'               => '3',
            'work_location'         => 'Quezon City',
        );

        $applicant = $this->applicant->create($applicant_input);
    
        return response()->json($applicant_input)->withCallback($request->input('callback'));
    }

    public function saveJobApplied(Request $request)
    {
        $job_applied_input = array(
            'applicant_id'          => '1',
            'job_id'                => '1',
            'apply_date'            => Carbon::now()->toDateString(),
        );
        
        $job_applied = $this->job_applied->create($job_applied_input);

        return response()->json($job_applied_input)->withCallback($request->input('callback'));
    }
}