Как можно уменьшить значение population
в таблице циклов, используя значение number_of_mortality в таблице mortalities
для вычитания населения?
Например,
иметь 2 таблицы данных в циклах
Id 1 - (диапазон дат с 3 сентября по 28 сентября) Население = 3000
Id 2 - (диапазон дат с 1 октября поНоябрь 5) Население = 9000
I пользователь хочет поместить число смертности в цикл id 1 ,поэтому он / она переходит в режим смертности.
Пользователь вводит дату, и она относится к циклу id 1 dateспектр.Значение number_of_mortality равно 25. После ввода данных пользователем он / она нажимает кнопку «Добавить» для отправки в базу данных.
После отправки значение совокупности идентификатора цикла 1 будет уменьшено, и оно должно быть8975 (9000 - 25 = 8975).
Это мой контроллер
MortalityController.php (store)
public function store(Request $request)
{
$this->validate($request, array(
'date_input' => 'required|date',
'number_of_mortality' => 'required|numeric',
));
$cycle = Cycle::select('id', 'date_start_raise')
->where('date_start_raise','<=',$request->get('date_input'))
->where('date_end_raise','>=',$request->get('date_input'))
->get();
$id = 0;
$chickenAge = 0;
$input= Carbon::parse($request->get('date_input'));
foreach($cycle as $value){
$id = $value->id;
}
if ($id) {
$start = Carbon::parse($value->date_start_raise);
$chickenAge = $start->diffInDays($input) ;
}
return Mortality::create([
'date_input' => request('date_input'),
'number_of_mortality' => request('number_of_mortality'),
'chicken_age' => $chickenAge,
'cause_of_death' => request('cause_of_death'),
'cycle_id' => $id,
'user_id' => Auth::id()
]);
}
Я понял, каксоедините таблицу mortalities
с таблицей cycles
, используя даты, но Я не знаю, как и где можно поместить код в порядке убывания, используя number_of_mortality для вычитания населения .Вы можете мне помочь?Спасибо
MortalityController.php (обновление)
public function update(Request $request, $id)
{
$mortality = Mortality::findOrFail($id);
//validate
$this->validate($request, array(
'date_input' => 'required|date',
'number_of_mortality' => 'required|numeric',
) );
$mortality->update($request->all());
}
MortalityController.php (Уничтожить)
public function destroy($id)
{
$mortality = Mortality::findOrFail($id);
$mortality->delete();
}