Exemplo n.º 1
0
 public function postCadastro()
 {
     if (Input::has("pedido")) {
         $dados = Input::get("pedido");
         // verifica se o cliente existe
         if (isset($dados["cliente"]) && intval($dados["tipo_pedido"]) == 0) {
             $exists = ClientesModel::where("nome", "LIKE", "%" . $dados["cliente"] . "%")->get();
             $cod_cliente = 0;
             $status = 0;
             if (count($exists) == 0) {
                 $dados_cliente = array();
                 $dados_cliente["nome"] = $dados["cliente"];
                 $dados_cliente["endereco"] = $dados["endereco"];
                 $dados_cliente["telefone"] = $dados["telefone"];
                 $cliente = new ClientesModel($dados_cliente);
                 $status = $cliente->save();
                 $cod_cliente = $cliente->cod;
             } else {
                 $cod_cliente = $exists[0]->cod;
             }
         }
         //fim do if do cliente
         $dados_pedido = array();
         $dados_pedido["cod_cliente"] = isset($cod_cliente) ? $cod_cliente : null;
         $dados_pedido["horario"] = $dados["horario"];
         $explode = explode("/", $dados["data_pedido"]);
         $dd = $explode[0];
         $mm = $explode[1];
         $yy = $explode[2];
         $dados_pedido["data"] = $yy . "-" . $mm . "-" . $dd;
         $dados_pedido["nro_mesa"] = $dados["nro_mesa"];
         $dados_pedido["valor_total"] = $dados["valor_total"];
         $dados_pedido["origem"] = $dados["origem"];
         $dados_pedido["observacoes"] = $dados["observacoes"];
         $pedido = new PedidosModel($dados_pedido);
         $status = $pedido->save();
         $cod_pedido = $pedido->cod;
         foreach ($dados["itens"] as $key => $item) {
             $dados_item = array();
             $dados_item["cod_pedido"] = $cod_pedido;
             $dados_item["cod_prato"] = intval($item["cod_prato"]);
             $dados_item["quantidade"] = intval($item["quantidade"]);
             $item_pedido = new ItemPedidoModel($dados_item);
             $status = $item_pedido->save();
             $cit = $item_pedido->cod_item;
             if (isset($item["variedades"])) {
                 foreach ($item["variedades"] as $key_variedade => $codv) {
                     $dados_variedade = array();
                     $dados_variedade["cod_item"] = $cit;
                     $dados_variedade["cod_prato"] = intval($item["cod_prato"]);
                     $dados_variedade["cod_variedade"] = intval($codv);
                     $status = ItemPedidoVariedadeModel::saveMultipleKeys($dados_variedade);
                 }
             }
             if (isset($item["adicionais"])) {
                 foreach ($item["adicionais"] as $key_adicional => $codad) {
                     $dados_adicional = array();
                     $dados_adicional["cod_item"] = $cit;
                     $dados_adicional["cod_prato"] = intval($item["cod_prato"]);
                     $dados_adicional["cod_adicional"] = intval($codad);
                     $status = ItemPedidoAdicionalModel::saveMultipleKeys($dados_adicional);
                 }
             }
         }
         // fim do for para os itens
         if (isset($dados["bebidas"])) {
             foreach ($dados["bebidas"] as $key_bebidas => $item_bebida) {
                 $dados_bebida = array();
                 $dados_bebida["cod_pedido"] = $cod_pedido;
                 $dados_bebida["cod_bebida"] = intval($item_bebida["cod"]);
                 $dados_bebida["quantidade"] = intval($item_bebida["quantidade"]);
                 $status = ItemPedidoBebidaModel::saveMultipleKeys($dados_bebida);
             }
         }
         if ($status) {
             return 1;
         } else {
             return 0;
         }
     }
     //fim do if
 }
Exemplo n.º 2
0
 public function postNovopedido()
 {
     $appid = Input::get('appid');
     $response = array();
     if (!isset($appid) || $this->appid != intval($appid)) {
         $response = array();
         $response['error'] = true;
         $response['message'] = Lang::get('geral.acesso_negado');
         return json_encode($response);
     }
     $json_pedido = Input::get("pedido");
     $json_pedido = json_decode($json_pedido);
     // validar se o cliente existe
     $exists = ClientesModel::where("cod", $json_pedido->cod_cliente)->get();
     if (count($exists) == 0) {
         $response['error'] = true;
         $response['message'] = Lang::get('geral.msg_user_inexistente');
         return json_encode($response);
     }
     $pedido = array();
     $pedido["cod_cliente"] = intval($json_pedido->cod_cliente);
     $pedido["horario"] = $json_pedido->horario;
     $pedido["data"] = $json_pedido->data;
     $pedido["valor_total"] = floatval($json_pedido->valor_total);
     $pedido["status"] = 1;
     $pedido["origem"] = 2;
     $pedido["observacoes"] = $json_pedido->observacoes;
     $p = new PedidosModel($pedido);
     $p->save();
     $cod_pedido = $p->cod;
     // cadastro das bebidas adicionadas no pedido
     $json_bebidas = Input::get("itens_bebida");
     $json_bebidas = json_decode($json_bebidas);
     $bebida = array();
     foreach ($json_bebidas as $key => $json) {
         $bebida["cod_pedido"] = $cod_pedido;
         $bebida["cod_bebida"] = $json->cod_bebida;
         $bebida["quantidade"] = $json->quantidade;
         $status = ItemPedidoBebidaModel::saveMultipleKeys($bebida);
         if (!$status) {
             $response['error'] = true;
             $response['message'] = Lang::get('geral.msg_erro');
             return json_encode($response);
         }
     }
     // cadastro dos pratos adicionados no pedido
     $json_itens_pedido = Input::get("itens_pedido");
     $json_itens_pedido = json_decode($json_itens_pedido);
     $item_pedido_variedades = Input::get("item_pedido_variedades");
     $item_pedido_variedades = json_decode($item_pedido_variedades);
     $item_pedido_adicionais = Input::get("item_pedido_adicionais");
     $item_pedido_adicionais = json_decode($item_pedido_adicionais);
     foreach ($json_itens_pedido as $key_1 => $json) {
         $item_pedido = array();
         $item_pedido["cod_pedido"] = $cod_pedido;
         $item_pedido["cod_prato"] = $json->cod_prato;
         $item_pedido["quantidade"] = $json->quantidade;
         $iped = new ItemPedidoModel($item_pedido);
         $iped->save();
         $status = $iped->cod_item;
         if (!$status) {
             $response['error'] = true;
             $response['message'] = Lang::get('geral.msg_erro');
             return json_encode($response);
         }
         foreach ($item_pedido_variedades as $key_2 => $json_var) {
             // cod_item gerado por mim no android (temporário)
             if ($json->cod_item == $json_var->cod_item) {
                 $item_variedade = array();
                 $item_variedade["cod_item"] = intval($iped->cod_item);
                 // cod_item gerado no banco de dados
                 $item_variedade["cod_prato"] = intval($json->cod_prato);
                 $item_variedade["cod_variedade"] = intval($json_var->cod_variedade);
                 $status = ItemPedidoVariedadeModel::saveMultipleKeys($item_variedade);
                 if (!$status) {
                     $response['error'] = true;
                     $response['message'] = Lang::get('geral.msg_erro');
                     return json_encode($response);
                 }
             }
         }
         foreach ($item_pedido_adicionais as $key_3 => $json_ad) {
             // cod_item gerado por mim no android (temporário)
             if ($json->cod_item == $json_ad->cod_item) {
                 $item_adicional = array();
                 $item_adicional["cod_item"] = intval($iped->cod_item);
                 // cod_item gerado no banco de dados
                 $item_adicional["cod_prato"] = intval($json->cod_prato);
                 $item_adicional["cod_adicional"] = intval($json_ad->cod_adicional);
                 $status = ItemPedidoAdicionalModel::saveMultipleKeys($item_adicional);
                 if (!$status) {
                     $response['error'] = true;
                     $response['message'] = Lang::get('geral.msg_pedido_enviado');
                     return json_encode($response);
                 }
             }
         }
     }
     $response["error"] = false;
     $response["message"] = Lang::get('geral.msg_pedido_enviado');
     return json_encode($response);
 }