<?php

namespace App\Modules\Company\Whiteboard;

use App\Traits\ValidatorTraits;

class Validation
{
    use ValidatorTraits;

    public function validatePayloadOnAssigningWorker($payload, $userInputStartDate, $userInputEndDate)
    {
        $dateYesterday = date('Y-m-d', strtotime('-1 day'));
        $rules = array(
            'project_id' => 'required',
            'worker_id' => 'required',
            'worker_type' => 'required',
            'start_date' => 'required|after:' . $dateYesterday,
            'end_date' => 'required|after:' . $dateYesterday,
        );
        $validate = $this->validateRequest($payload, $rules);
        if ($validate) {
            return $validate;
        } else if ($userInputStartDate > $userInputEndDate) {
            return response()->json(['errors' => ['Invalid Duration.']])->setStatusCode(201);
        }
        return true;
    }
}
