public static function editItemComanda() { try { $ItemVendaTO = new ItemVendaTO(); $MesaDao = new MesaDao(); $Conexao = new Conexao(); $Conexao::getInstance(); $EstoqueDao = new EstoqueDao(); $itemVenda = $ItemVendaTO->__setAll($_POST['campos'], true); $produtos[] = $_POST['campos']; $where = $_POST['where']; $out = array(); foreach ($produtos as $key => $value) { if (!isset($produtos_estoque[$value['id_produto']])) { $produtos_estoque[$value['id_produto']] = $value; $produtos_estoque[$value['id_produto']]['qtd'] = 0; $produtos_estoque[$value['id_produto']]['id_produto'] = $value['id_produto']; } $produtos_estoque[$value['id_produto']]['qtd'] += (int) $value['qtd']; } foreach ($produtos_estoque as $key => $value) { $qtd = (int) $value['qtd']; $estoque = $EstoqueDao->getQtdProduto($value['id_empreendimento'], $value['id_produto'], null, $value['id_deposito'], $value['id_venda']); $estoque_real = $estoque - $qtd; if ($estoque_real < 0) { $out[] = array((double) $value['id_produto']); } } if (count($out) > 0) { $Conexao->rumQuery('UNLOCK TABLES;', false); Flight::response()->status(406)->header('Content-Type', 'application/json')->write(json_encode(array('out_estoque' => $out)))->send(); return; } $MesaDao->editItemComanda($itemVenda, $where); $mesa = $MesaDao->getResumoMesa($_POST['id_mesa']); Flight::response()->status(200)->header('Content-Type', 'application/json')->write(json_encode(array('mesa' => $mesa)))->send(); } catch (Exception $e) { jsonException($e); } }