Как уменьшить число с номером по умолчанию на БД - PullRequest
0 голосов
/ 24 октября 2019

У меня есть 2 таблицы, такие как Пользователь и Paidleave

. У меня есть идентификатор, имя, адрес электронной почты, пароль и т. Д.

, а в Paidleave - id, user_id, start_date, продолжительность . в этой таблице оставшиеся дни по умолчанию 12 . поэтому во входных данных уменьшите это ( оставшиеся_дни - продолжительность )

Я хочу создать модуль оплачиваемого отпуска, но у меня есть проблема, эта таблица Paidleave - пустые данные, и если я создаю ввод, я не сделалесть значение, чтобы уменьшить это продолжительность , как я могу создать входные данные для таблицы Paidleave без значения по умолчанию для этой таблицы?

     public function store_Paidleave(Request $request)
    {

        $users = new Paidleave;
        $users->user_id              = $request->user_id ;
        $users->start_date           = $request->start_date  
        $users->duration             = $request->duration ;
        $cuti = DB::table('users')->select('users.Paidleaves')->get();
            if(Input::get('duration') < $cuti){
               return "cant input data"
            }
            elseif($cuti > Input::get('duration')){
                DB::table('users')->where('id', user_id)->decrement('cuti' , 
                Input::get('duration'));
            }
            else{
                return ('error , tidak ada input');
                return redirect()->back();
            }

        $users->save();
        return redirect ('Paidleave')->with('success', 'Input Succes');


    }

моя проблема в том, как я могу установить первые 12 и уменьшить надлительность и это значение новых оставшихся_дней можно ввести в столбец оставшихся дней?

РЕДАКТИРОВАТЬ

Я обновил свой вопрос, и все же не смог решить свою проблему.

1 Ответ

0 голосов
/ 24 октября 2019

Предположим, что вы создали новую запись в таблице PaidLeave для пользователя при каждом создании пользователя в таблице User.

public function store_Paidleave(Request $request)
{
$paid_leave = Paidleave::where('user_id','=',$request->user_id)->orderBy('created_at','DESC')->first();
if(sizeof($paid_leave))
{
$users = new Paidleave();
$users->user_id              = $paid_leave->user_id;
$remaining_days = $paid_leave->remaining_days - $request->duration; 
$users->remaining_days       = $remaining_days ;
$users->start_date           = $request->start_date  
$users->duration             = $request->duration ;
$users->save();
return redirect()->route('Paidleave')->with('success', 'Input Succes');
}
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...