gpt4 book ai didi

php - 如何使用具有日期条件的其他表减去整数数据?

转载 作者:行者123 更新时间:2023-11-30 21:36:41 26 4
gpt4 key购买 nike

我想通过使用 consumption 表中的 feed_consumed 减少 inventory 表中的 _remain_overall_quantity

enter image description here

状况良好

如果 $chickenAge <= 8
递减将发生在 CBC

if $chickenAge > 8 && $chickenAge <= 20
递减发生在BSC

如果$chickenAge > 20
递减将发生在BFP

这是我的 ConsumptionController.php

public function store(Request $request)
{
$this->validate($request, array(
'date_input' => 'required|date',
'feed_consumed' => 'required|numeric',
) );
//declaring values
$chickenAge = 0;
$input= Carbon::parse($request->get('date_input'));
$cycle = Cycle::where('date_of_loading','<=',$input)
->where('date_of_harvest','>=',$input)
->first();

if ($cycle) {
$start = Carbon::parse($cycle->date_of_loading);
$chickenAge = $start->diffInDays($input) ;
}

$inventory = Inventory::where('cycle_id','=',$cycle->id ?? 0)
->first();

$consumption = Consumption::create([
'date_input' => request('date_input'),
'chicken_age' => $chickenAge,
'feed_consumed' => request('feed_consumed'),
'cycle_id' => $cycle->id ?? 0,
'user_id' => Auth::id()
]);

return $consumption;
}

我不知道我可以把减量放在哪里,我也不知道 if 条件语句是什么。你能帮帮我吗?

最佳答案

尝试在 return 语句之前添加此代码:

if ($chickenAge <= 8)
{
DB::table('inventory')->where('id', 1)->decrement('remain_overall_quantity ', 1); // CBC
}
elseif ($chickenAge <= 20)
{
DB::table('inventory')->where('id', 2)->decrement('remain_overall_quantity ', 1); // BSC
}
else
{
DB::table('inventory')->where('id', 3)->decrement('remain_overall_quantity ', 1); // BFP
}

如果您需要减少超过 1,则更改 'remain_overall_quantity ', 1 部分中的“1”

在 Laravel 中递增/递减的一些见解: https://laravel.com/docs/5.7/queries#increment-and-decrement

关于php - 如何使用具有日期条件的其他表减去整数数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53600486/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com