Estou com um problema na minha aplicação, eu implantei um if/else e não tá funcionando corretamente, tem 1 único registro no meu banco que faz a lógica do meu código funcionar e entrar no if, porém todos os outros registros q eu incluo e eram pra entrar no if tbm estão entrando no else, já quebrei a cabeça e não consigo entender pq isso está acontecendo (pois são as mesmas condições esses regitros, então eram pra entrar todos no if (só entraria no else caso o registro seja novo), segue uma parte do meu código:
foreach ($todos_inventario as $inventario){
if ($entrada_items->item_id == $inventario->item_id && $entrada->departamento_id == $inventario->departamento_id && $entrada->local_id == $inventario->local_id) {
$inventario->quantidade += $entrada_items->quantidade;
$inventario->save();
break;
} else {
$inventario = new Inventario();
$inventario->departamento_id = $entrada->departamento_id;
$inventario->item_id = $entrada_items->item_id;
$inventario->local_id = $entrada->local_id;
$inventario->quantidade = $entrada_items->quantidade;
$inventario->qtd_alerta = 0;
$inventario->save();
break;
}
}
código completo aqui:
https://github.com/Davidtricolor2021/Erro-if-else/blob/main/EntradaController.php
e tbm tem um imagem do meu banco com uma pequena explicação doq está acontecendo:
https://github.com/Davidtricolor2021/Erro-if-else/blob/main/erro%20bd.png