Laravel - Как рассчитать доступные дни отпуска на текущий год - PullRequest
0 голосов
/ 09 апреля 2020

Я уже вычислил разрешенные выходные дни в моем приложении Laravel -5.8, используя:

public function findLeaveCount(Request $request)
{
    $userCompany = Auth::user()->company_id;
    $userEmployee = Auth::user()->employee_id;
    $userId = Auth::user()->id;
    $employeeemptypeid              = DB::table('hr_employees')->select('employment_type_id')->where('id', $userId)->first()->employment_type_id;
    $leavetypeid                    = DB::table('hr_leave_types')->select('id')->where('company_id', $userCompany)->where('id',$request->id)->first()->id;
    $authorizedleavedays            = 0;
    $authorizedleavedays            = DB::table('hr_leave_type_details')->select('no_of_days')->where('leave_type_id', $leavetypeid)->where('employment_type_id',$employeeemptypeid)->first();

   $availableleavedays = 0;
    return response()->json([
        'authorizedleavedays' => $authorizedleavedays->no_of_days,
        'availableleavedays' => $availableleavedays->available_leave_days,
    ]);        
}

Теперь в той же функции контроллера, что и выше (findLeaveCount), я хочу вычислить $ availableleavedays для текущего года.

У меня есть этот класс модели:

class HrLeaveRequest extends Model
{
  protected $table = 'hr_leave_requests';
  protected $fillable = [
              'id',
              'employee_id',
              'leave_type_id',
              'leave_day',
              'commencement_date',
              'resumption_date',
              'leave_status',
          ];

  public function employee()
  {
    return $this->belongsTo('App\Models\Hr\HrEmployee','employee_id');
  } 

  public function leavetype()
  {
    return $this->belongsTo('App\Models\Hr\HrLeaveType','leave_type_id');
  }
}

Доступные дни $ будут:

сумма дня отпуска для текущего года, где:

employee_id = $ userEmployee

Leave_type_id = $ Leadtypeid

Leave_status = 4

Затем вычесть результат из $ authorleleavedays

То есть

$ availableleavedays = результат выше - $ authorleavedays

Как мне добиться этого и добавить к коду, который у меня есть в:

publi c функция findLeaveCount (запрос $ запроса)

Спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...