public static function requestSaveCor() { try { $id_empreendimento = $_POST['id_empreendimento']; $cor = $_POST['cor']; $ReferenciaIntegracaoDao = new ReferenciaIntegracaoDao(); $ReferenciaIntegracaoTO = new ReferenciaIntegracaoTO(); $PrestaShopDao = new PrestaShopDao($id_empreendimento); $CorProdutoDao = new CorProdutoDao(); $ReferenciaIntegracaoTO = new ReferenciaIntegracaoTO(); $ReferenciaIntegracaoTO->sistema_integrado = 'PrestaShop'; $ReferenciaIntegracaoTO->tabela = 'tbl_cor_produto'; $ReferenciaIntegracaoTO->id_item = null; $ReferenciaIntegracaoTO->id_item_referencia = $cor['id_attribute']; $ReferenciaIntegracaoTO->tipo = 'cor'; $ReferenciaIntegracaoTO->id_empreendimento = $id_empreendimento; $referencia = $ReferenciaIntegracaoDao->refExists($ReferenciaIntegracaoTO, true); if ($referencia) { $obj = new stdClass(); $obj->nome_cor = $cor['name']; if (!$CorProdutoDao->updateCor($obj, 'id=' . $referencia['id_item'])) { throw new Exception('Erro ao atualizar cor', 1); } } else { $last_id = $CorProdutoDao->saveCorProduto($cor['name'], array($id_empreendimento), true); if (!is_numeric($last_id)) { throw new Exception('Erro ao cadastrar cor', 1); } $ReferenciaIntegracaoTO->id_item = $last_id; if (!$ReferenciaIntegracaoDao->save($ReferenciaIntegracaoTO)) { throw new Exception('Erro ao criar referencia no sistema', 1); } } } catch (Exception $e) { $log = new KLogger("logs/logErrorPrestaShop.txt", KLogger::DEBUG); $log->LogError($e->getMessage() . '- file:' . $e->getFile() . ' - line:' . $e->getLine()); $log->LogDebug(json_encode($_POST)); $log->LogJunp(); Flight::halt(500, $e->getMessage()); } }