Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ////////- Front-End
- // main finalizar pedido btn SIM
- $('#btn_finalizar_pedido').on('click', function() {
- var dados_finalizar_pedido = 'op=pedido'
- + '&op_prepare=' + $.trim($('#op_prepare').val())
- + '&endereco=' + $.trim($('#entrega_endereco').val())
- + '&numero=' + $.trim($('#entrega_numero').val())
- + '&bairro=' +$.trim( $('#entrega_bairro').val())
- + '&cidade=' + $.trim($('#entrega_cidade').val())
- + '&uf=' + $.trim($('#entrega_uf').val())
- + '&cep=' + $.trim($('#entrega_cep').val())
- + '&complemento=' + $.trim($('#entrega_complemento').val())
- + '&telefone=' + $.trim($('#entrega_telefone').val())
- + '&celular=' + $.trim($('#entrega_celular').val())
- + '&email=' + $.trim($('#entrega_email').val())
- + '&observacoes=' + $.trim($('#entrega_observacoes').val())
- + '&status=' + $.trim($('#pedido_status').val());
- $.ajax({
- cache: false,
- url: 'assets/controle/cadastro.php',
- type: 'POST',
- data: dados_finalizar_pedido,
- dataType: 'json',
- beforeSend: () => {
- $('#btn_finalizar_pedido').addClass('loading');
- },
- success: (r) => {
- console.log(r.retorno);
- if (r.retorno == 1) {
- $('#btn_finalizar_pedido').removeClass('loading');
- $('#form_send_print').fadeIn();
- $('#msg_isset_pedido').hide().html('');
- $('#btn_sim_nao').hide();
- $('#tbl_pes_pedido').DataTable().ajax.reload(null, false);
- $('.strUpper').css('text-transform', 'uppercase');
- $.each(r.alert, function(i, v) {
- $context = r.alert[i].context;
- $message = r.alert[i].message;
- $position = r.alert[i].position;
- $positionClass = 'toast-' + $position;
- toastr.remove();
- toastr[$context]($message, '', {
- positionClass: $positionClass
- });
- });
- } else {
- $('#btn_finalizar_pedido').removeClass('loading');
- $.each(r.alert, function(i, v) {
- $context = r.alert[i].context;
- $message = r.alert[i].message;
- $position = r.alert[i].position;
- $positionClass = 'toast-' + $position;
- toastr.remove();
- toastr[$context]($message, '', {
- positionClass: $positionClass
- });
- });
- }
- },
- error: (r) => {
- console.log(r.retorno);
- $('#btn_finalizar_pedido').removeClass('loading');
- $.each(r.alert, function(i, v) {
- $context = r.alert[i].context;
- $message = r.alert[i].message;
- $position = r.alert[i].position;
- $positionClass = 'toast-' + $position;
- toastr.remove();
- toastr[$context]($message, '', {
- positionClass: $positionClass
- });
- });
- },
- complete: (r) => {
- console.log(r);
- console.log(r.retorno);
- if (r.retorno == 1) {
- $('#btn_finalizar_pedido').removeClass('loading');
- $('#form_send_print').fadeIn();
- $('#msg_isset_pedido').hide().html('');
- $('#btn_sim_nao').hide();
- $('#tbl_pes_pedido').DataTable().ajax.reload(null, false);
- $('.strUpper').css('text-transform', 'uppercase');
- $.each(r.alert, function(i, v) {
- $context = r.alert[i].context;
- $message = r.alert[i].message;
- $position = r.alert[i].position;
- $positionClass = 'toast-' + $position;
- toastr.remove();
- toastr[$context]($message, '', {
- positionClass: $positionClass
- });
- });
- } else {
- $('#btn_finalizar_pedido').removeClass('loading');
- $.each(r.alert, function(i, v) {
- $context = r.alert[i].context;
- $message = r.alert[i].message;
- $position = r.alert[i].position;
- $positionClass = 'toast-' + $position;
- toastr.remove();
- toastr[$context]($message, '', {
- positionClass: $positionClass
- });
- });
- }
- }
- });
- });// end finalizar pedido btn SIM
- ////////- Back-End
- case 'pedido': {
- $data = array();
- $r_pedido = 0;
- $op_prepare = trim($_REQUEST['op_prepare']);
- if (isset($_SESSION['id_cliente']) || isset($_SESSION['nome_cliente'])) {
- $id_cliente = trim($_SESSION['id_cliente']);
- $nome_cliente = trim(mb_strtoupper($_SESSION['nome_cliente']));
- }
- $status = trim(mb_strtoupper($_REQUEST['status']));
- $_SESSION['status'] = $status;
- $id_pos = '';
- $id_pos = md5(sha1(base64_encode(uniqid(rand(), true))));
- //prepare sql next id pedido
- //$stmt_next_id_pedido = $pdo->prepare('SELECT AUTO_INCREMENT FROM information_schema.tables WHERE table_name = \'pedidos\' AND table_schema = \'sistema\';');
- //$stmt_next_id_pedido = $pdo->prepare("SELECT MAX(id) AS p_id FROM pedidos");
- //prepare sql insert endereco entrega
- $stmt_endereco_entrega = $pdo->prepare('INSERT INTO enderecos_entrega (id_cliente, endereco, numero, bairro, cidade, uf, cep, complemento, telefone, celular, email, observacoes, id_pos) VALUES (:id_cliente, :endereco, :numero, :bairro, :cidade, :uf, :cep, :complemento, :telefone, :celular, :email, :observacoes, :id_pos)');
- $stmt_endereco_entrega_update = $pdo->prepare('UPDATE enderecos_entrega SET endereco = :endereco, numero = :numero, bairro = :bairro, cidade = :cidade, uf = :uf, cep = :cep, complemento = :complemento, telefone = :telefone, celular = :celular, email = :email, observacoes = :observacoes WHERE id = :id');
- //prepare sql insert pedido
- $stmt_pedido = $pdo->prepare('INSERT INTO pedidos (id_cliente, nome_cliente, id_funcionario, nome_funcionario, id_endereco_entrega, dia, mes, ano, hora, status, total_itens, subtotal_pedido, id_pos) VALUES (:id_cliente, :nome_cliente, :id_funcionario, :nome_funcionario, :id_endereco_entrega, :dia, :mes, :ano, :hora, :status, :total_itens, :subtotal_pedido, :id_pos)');
- //prepare sql insert itens pedido
- $stmt_itens_pedido = $pdo->prepare('INSERT INTO itens_pedido (id_produto, referencia_produto, nome_produto, descricao_produto, observacao_produto, valor_venda_produto, valor_total_produto, quantidade_produto, unidade_produto, imagem_produto, id_pos) VALUES (:id_produto, :referencia_produto, :nome_produto, :descricao_produto, :observacao_produto, :valor_venda_produto, :valor_total_produto, :quantidade_produto, :unidade_produto, :imagem_produto, :id_pos)');
- /*if ($stmt_next_id_pedido->execute()) {
- if($row = $stmt_next_id_pedido->fetch(PDO::FETCH_OBJ)){
- $id_pedido = ($row->p_id == null || $row->p_id == 0) ? $row->p_id = 1 : $row->p_id + 1;
- $_SESSION['id_pedido'] = $id_pedido;
- }
- }*/
- $stmt_endereco_cliente_id = $pdo->prepare("SELECT * FROM enderecos_entrega WHERE id_cliente = :id");
- $stmt_endereco_cliente_id->bindParam(':id', $id_cliente, PDO::PARAM_STR);
- $stmt_endereco_cliente_id->execute();
- if ($stmt_endereco_cliente_id->rowCount() > 0) {
- $dados_end_entrega_cliente = $stmt_endereco_cliente_id->fetch(PDO::FETCH_OBJ);
- //dados endereco entrega
- /*
- $endereco = $dados_end_entrega_cliente->endereco;
- $numero = $dados_end_entrega_cliente->numero;
- $bairro = $dados_end_entrega_cliente->bairro;
- $cidade = $$dados_end_entrega_cliente->cidade;
- $uf = $dados_end_entrega_cliente->uf;
- $cep = $dados_end_entrega_cliente->cep;
- $complemento = $dados_end_entrega_cliente->complemento;
- $telefone = $dados_end_entrega_cliente->telefone;
- $celular = $dados_end_entrega_cliente->celular;
- $email = $dados_end_entrega_cliente->email;
- $observacoes = $dados_end_entrega_cliente->observacoes;
- */
- $id_endereco_entrega = $dados_end_entrega_cliente->id;
- $_SESSION['id_endereco_entrega'] = $id_endereco_entrega;
- if ($op_prepare == 'update') {
- if ($stmt_endereco_entrega_update->execute(
- array(
- ':id' => $id_endereco_entrega,
- ':endereco' => trim(mb_strtoupper($_REQUEST['endereco'])),
- ':numero' => trim($_REQUEST['numero']),
- ':bairro' => trim(mb_strtoupper($_REQUEST['bairro'])),
- ':cidade' => trim(mb_strtoupper($_REQUEST['cidade'])),
- ':uf' => trim(mb_strtoupper($_REQUEST['uf'])),
- ':cep' => trim($_REQUEST['cep']),
- ':complemento' => trim(mb_strtoupper($_REQUEST['complemento'])),
- ':telefone' => trim($_REQUEST['telefone']),
- ':celular' => trim($_REQUEST['celular']),
- ':email' => trim($_REQUEST['email']),
- ':observacoes' => trim(mb_strtoupper($_REQUEST['observacoes']))
- )
- )) {
- }
- }
- } else {
- if ($op_prepare == 'insert') {
- //dados endereco entrega
- $endereco = trim(mb_strtoupper($_REQUEST['endereco']));
- $numero = trim($_REQUEST['numero']);
- $bairro = trim(mb_strtoupper($_REQUEST['bairro']));
- $cidade = trim(mb_strtoupper($_REQUEST['cidade']));
- $uf = trim(mb_strtoupper($_REQUEST['uf']));
- $cep = trim($_REQUEST['cep']);
- $complemento = trim(mb_strtoupper($_REQUEST['complemento']));
- $telefone = trim($_REQUEST['telefone']);
- $celular = trim($_REQUEST['celular']);
- $email = trim($_REQUEST['email']);
- $observacoes = trim(mb_strtoupper($_REQUEST['observacoes']));
- //prepare sql next id endereco entrega
- //$stmt_next_id_endereco_entrega = $pdo->prepare('SELECT AUTO_INCREMENT FROM information_schema.tables WHERE table_name = \'enderecos_entrega\' AND table_schema = \'sistema\';');
- /*$stmt_next_id_endereco_entrega = $pdo->prepare("SELECT MAX(id) AS e_id FROM enderecos_entrega");
- if ($stmt_next_id_endereco_entrega->execute()) {
- if($row = $stmt_next_id_endereco_entrega->fetch(PDO::FETCH_OBJ)){
- //$id_endereco_entrega = $row->AUTO_INCREMENT;
- $id_endereco_entrega = ($row->e_id == null || $row->e_id == 0) ? $row->e_id = 1 : $row->e_id + 1;
- $_SESSION['id_endereco_entrega'] = $id_endereco_entrega;
- }
- }*/
- $campos_entrega = array(
- //':id_pedido' => $id_pedido,
- ':id_cliente' => $id_cliente,
- ':endereco' => $endereco,
- ':numero' => $numero,
- ':bairro' => $bairro,
- ':cidade' => $cidade,
- ':uf' => $uf,
- ':cep' => $cep,
- ':complemento' => $complemento,
- ':telefone' => $telefone,
- ':celular' => $celular,
- ':email' => $email,
- ':observacoes' => $observacoes,
- ':id_pos' => $id_pos
- );
- $stmt_endereco_entrega->execute($campos_entrega);
- $stmt_endereco_cliente_id_2 = $pdo->prepare("SELECT * FROM enderecos_entrega WHERE id_cliente = :id");
- $stmt_endereco_cliente_id_2->bindParam(':id', $id_cliente, PDO::PARAM_STR);
- $stmt_endereco_cliente_id_2->execute();
- if ($stmt_endereco_cliente_id_2->rowCount() > 0) {
- $dados_end_entrega_cliente = $stmt_endereco_cliente_id_2->fetch(PDO::FETCH_OBJ);
- $id_endereco_entrega = $dados_end_entrega_cliente->id;
- $_SESSION['id_endereco_entrega'] = $id_endereco_entrega;
- }
- }
- }
- //dados pedido
- $id_funcionario = $_SESSION['id'];
- $nome_funcionario = trim(mb_strtoupper($_SESSION['user_nome']));
- if (isset($_SESSION['pedido']) AND ! empty($_SESSION['pedido'])) {
- $total_itens = count($_SESSION['pedido']);
- $total = 0;
- foreach ($_SESSION['pedido'] as $key => $value) {
- $idProduto = $value['id'];
- $stmt_produto = $pdo->prepare("SELECT * FROM produtos WHERE id = :id");
- $stmt_produto->bindParam(':id', $idProduto, PDO::PARAM_STR);
- $stmt_produto->execute();
- if ($stmt_produto->rowCount() > 0) {
- $dadosProdutos = $stmt_produto->fetch(PDO::FETCH_OBJ);
- } else {
- echo json_encode("Erro! produto não encontrado.");
- exit(0);
- }
- $campos_itens = array(
- //':id_pedido' => $id_pedido,
- ':id_produto' => $dadosProdutos->id,
- ':referencia_produto' => $dadosProdutos->referencia,
- ':nome_produto' => $dadosProdutos->nome,
- ':descricao_produto' => $dadosProdutos->descricao,
- ':observacao_produto' => $dadosProdutos->observacao,
- ':valor_venda_produto' => $dadosProdutos->valor_venda,
- ':valor_total_produto' => number_format($dadosProdutos->valor_venda * $value['qtd'], 2, ".", ""),
- ':quantidade_produto' => $value['qtd'],
- ':unidade_produto' => $value['unidade'],
- ':imagem_produto' => $dadosProdutos->imagem,
- ':id_pos' => $id_pos
- );
- //SOMAR TUDO
- $total += $dadosProdutos->valor_venda * $value['qtd'];
- $subtotal_pedido = number_format($total, 2, ".", "");
- $stmt_itens_pedido->execute($campos_itens);
- }
- }
- $hora = date('H:i:s');
- $_SESSION['hora_pedido'] = $hora;
- $_SESSION['data_pedido'] = date('d') . '/' . date('m') . '/' . date('Y');
- $campos_pedido = array(
- ':id_cliente' => $id_cliente,
- ':nome_cliente' => $nome_cliente,
- ':id_funcionario' => $id_funcionario,
- ':nome_funcionario' => $nome_funcionario,
- ':id_endereco_entrega' => $id_endereco_entrega,
- ':dia' => date('d'),
- ':mes' => date('m'),
- ':ano' => date('Y'),
- ':hora' => $hora,
- ':status' => $status,
- ':total_itens' => $total_itens,
- ':subtotal_pedido' => $subtotal_pedido,
- ':id_pos' => $id_pos
- );
- if ($stmt_pedido->execute($campos_pedido)) {
- $r_pedido = 1;
- } else {
- $r_pedido = 0;
- }
- if ($r_pedido == 1) {
- $data['retorno'] = 1;
- $data['alert'][] = array(
- 'message' => 'Salvo com sucesso.',
- 'context' => 'success',
- 'position' => 'top-center'
- );
- $stmt_session_id = $pdo->prepare("SELECT * FROM pedidos WHERE id_pos = :id_pos");
- $stmt_session_id->bindParam(':id_pos', $id_pos, PDO::PARAM_STR);
- $stmt_session_id->execute();
- if ($stmt_session_id->rowCount() > 0) {
- $dados_id = $stmt_session_id->fetch(PDO::FETCH_OBJ);
- $_SESSION['id_pedido'] = $dados_id->id;
- }
- //Update id_pedido dos itens pedido
- $stmt_itens_pedido_up = $pdo->prepare('UPDATE itens_pedido SET id_pedido = :id_pedido WHERE id_pos = :id_pos');
- $campo_itens_up = array(
- ':id_pedido' => $dados_id->id,
- ':id_pos' => $id_pos
- );
- $stmt_itens_pedido_up->execute($campo_itens_up);
- //Update id_pedido dos enderecos entrega
- $stmt_endereco_up = $pdo->prepare('UPDATE enderecos_entrega SET id_pedido = :id_pedido WHERE id_pos = :id_pos');
- $campo_end_up = array(
- ':id_pedido' => $dados_id->id,
- ':id_pos' => $id_pos
- );
- $stmt_endereco_up->execute($campo_end_up);
- } else {
- $data['retorno'] = 0;
- $data['alert'][] = array(
- 'message' => 'Erro ao salvar.',
- 'context' => 'error',
- 'position' => 'top-center'
- );
- }
- echo json_encode($data);
- } break;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement