Suporte não-oficial ao OcoMon
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.
Suporte não-oficial ao OcoMon

Criado e mantido por usuários para usuários
 
InícioInício  PortalPortal  Últimas imagensÚltimas imagens  ProcurarProcurar  RegistarRegistar  Entrar  
Últimos assuntos
» Nova versão OcoMon
Fila de espera EmptyTer Ago 11, 2020 12:35 am por FabioRK

» Encerrar chamado em nome de Operador
Fila de espera EmptyTer Jan 08, 2019 11:49 am por vafonseca

» Usuário Cancelar Chamado
Fila de espera EmptySeg Nov 19, 2018 11:34 am por vafonseca

» [Resolvido]Qualificação Chamados
Fila de espera EmptyQua Out 24, 2018 12:37 pm por vafonseca

» [Resolvido] Bloquear Campo Descrição para Operador e Todos Usuarios
Fila de espera EmptySeg Set 24, 2018 9:58 am por vafonseca

» Solicitar inserção de email de destino no encerramento
Fila de espera EmptyQua Jan 31, 2018 11:55 am por alex.xavier

» Área e Problemas do Consultar igual ao de Abrir chamado
Fila de espera EmptyTer Set 12, 2017 8:53 am por renatomdm

» FeedBack do usuario
Fila de espera EmptySex Jul 07, 2017 8:25 am por vafonseca

» Paramentrização Ocomon
Fila de espera EmptySex maio 05, 2017 12:51 pm por cristiano.barbosa


 

 Fila de espera

Ir para baixo 
3 participantes
AutorMensagem
leonardocr

leonardocr


Mensagens : 91
Data de inscrição : 30/04/2012
Idade : 32

Fila de espera Empty
MensagemAssunto: Fila de espera   Fila de espera EmptyTer maio 08, 2012 9:17 am

Gostaria de saber se alguem ja desenvolveu algum coisa no ocomon relacionado com a fila de espera,aonde mostra para o usuario qual a ordem que eles esta nos chamados.
Ir para o topo Ir para baixo
leonardocr

leonardocr


Mensagens : 91
Data de inscrição : 30/04/2012
Idade : 32

Fila de espera Empty
MensagemAssunto: Re: Fila de espera   Fila de espera EmptyTer maio 15, 2012 10:33 am

Bom como ninguem postou nada pra me ajudar eu resolvi criar pro usuário uma lista aonde mostra os chamado em esperar pra ele acompanhar quando vai ser atendindo.

Bom vamos la.

Entre no arquivo menu.php que fica na pasta inicial.

Dentro dele la pela linha 169 insira o seguinte comando.

Código:

.|".TRANS('MNL_ABERTOS')."|".$ocoDirPath."lista_chamados.php|".TRANS('MNL_MEUS_HNT2')."|".$iconsPath."sla.png|centro

No arquivo pt_br.php que fica dentro de includes/laguage insira os comandos aonde quizer.

Código:


$TRANS['MNL_MEUS_HNT2'] = "Lista todos os chamaos aberto no sistema";
$TRANS['MNL_ABERTOS'] = "Lista de Espera";
$TRANS['OCO_NUMBER_PS']="P.";
$TRANS['OCO_NUMBER_CH']="Chamado";

Agora dentro da pasta ocomon/geral crie um arquivo em php chamado lista_chamados.php e insira o codigo abaixo.

Código:

<?php session_start();
 /*                        Copyright 2005 Flávio Ribeiro

        This file is part of OCOMON.

        OCOMON is free software; you can redistribute it and/or modify
        it under the terms of the GNU General Public License as published by
        the Free Software Foundation; either version 2 of the License, or
        (at your option) any later version.

        OCOMON is distributed in the hope that it will be useful,
        but WITHOUT ANY WARRANTY; without even the implied warranty of
        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
        GNU General Public License for more details.

        You should have received a copy of the GNU General Public License
        along with Foobar; if not, write to the Free Software
        Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
  */

   if (!isset($_SESSION['s_logado']) || $_SESSION['s_logado'] == 0)
   {
           print "<script>window.open('../../index.php','_parent','')</script>";
      exit;
   }

   include ("../../includes/include_geral.inc.php");
   include ("../../includes/include_geral_II.inc.php");

   include ("../../includes/classes/paging.class.php");
   print "<html>";
    print "<body>";
      
            
      print "<TABLE class='header_centro'  border-top: thin solid #999999;}' border='0' cellpadding='5' cellspacing='0' align='center' width='100%' bgcolor='".$cor."'>";
      print "<TR class='header'>";
         print "
            <TD  class='line' ><a title='Posi&ccedil;&atilde;o do atendimento'>".TRANS('OCO_NUMBER_PS')."</a></TD>
            <TD  class='line' ><a title='N&uacute;mero do Chamado'>".TRANS('OCO_NUMBER_CH')."</a></TD>
            <TD  class='line' ><a title='Nome Solicitante'>".TRANS('OCO_CONTACT')."</a></TD>
            <TD class='line'  ><a title='Atende que est&aacute; realizando o chamado'>".TRANS('TXTAREA_IN_ATTEND_BY')."</a></TD>
            <TD  class='line' ><a title='Data Abertura'>".TRANS('OCO_FIELD_DATE_OPEN')."</a></TD>
           <TD  class='line' ><a title='Status do Chamado'>".TRANS('OCO_STATUS')."</a></TD>";
      print "</TR>";
      
         $valign = " VALIGN = TOP ";
         $qry = "select nome from usuarios where user_id = ".$_SESSION['s_uid']."";
         $exec = mysql_query($qry);
         $r_user = mysql_fetch_array($exec);
         $contato = $r_user['nome'];
         
        $sqlSubCall = "SELECT u.nivel as nivel,numero,data_abertura,oco_prior,prior_atend.pr_nivel,prior_atend.pr_desc,u.nome,s.status, aberto_por, u2.nome as abertopor
FROM ocorrencias o INNER JOIN status s on o.status=s.stat_id
INNER JOIN usuarios u on o.operador=u.user_id
INNER JOIN usuarios u2 on o.aberto_por = u2.user_id
INNER JOIN prior_atend on o.oco_prior=prior_atend.pr_nivel
where o.status <> '4' and o.status <> '12' and o.status <> '3'
order by numero

                                ";
      $execSubCall = mysql_query($sqlSubCall) or die (TRANS('ERR_QUERY').'<br>'.$sqlSubCall);
      $regSub = mysql_num_rows($execSubCall);
      $count = 1;
      $j = 0;
      while ($row = mysql_fetch_array($execSubCall))
        {
      
      $data2 = $row['data_abertura'];
      
      $data = date('d/m/Y H:i:s ', strtotime($data2));
      
      $cor1 = '#f6f6f6';
      $cor2 = '#e3e1e1';
      $cor3 = '#1E90FF';
      $destaca = '#cccccc';

      if($contato == $row['abertopor']){
      
      $cor = $cor3;
      
      }else {
      if ($j % 2) {
         $cor = $cor2;
               } else {
         $cor = $cor1;
               }}
               $j++;
      if($row['nivel'] == '1'){
      $atendente = $row['nome'];
      }else{$atendente = 'Aguardando Atendimento';
            
      }
      
      
         
      print "<tr style='background:$cor;' id='linhax".$j."' onMouseOver=\"javascript:this.style.backgroundColor='$destaca'\" onMouseOut=\"javascript:this.style.backgroundColor='$cor'\"  onMouseDown=\"marca('linhax".$j."','".$_SESSION['s_colorMarca']."');\">";
      print "<TD  class='line'  ".$valign."><b>$count</TD>";
      print "<TD  class='line'  ".$valign.">".$row['numero']."<br>";
      print "<TD  class='line'  ".$valign.">".$row['abertopor']."<br>";
      print "<TD  class='line'  ".$valign.">$atendente<br>";
      print "<TD  class='line'  ".$valign.">$data<br>";
      print "<TD  class='line'  ".$valign.">".$row['status']."<br>";
      
      $count++;
      
   }
print "</TABLE>";
print "</body>";
print "</html>";
?>


LEMBRANDO PESSOAL OS MEUS USUARIOS FICAM CADASTRANDO NA TABELA USUARIOS E NAO NA TABELA utmp_usuarios. SE SUA FOR UTMP_USUARIOS VC DEVE MUDAR O SELECT,

A TABELA UTMP_USUARIOS E USADA QUANDO O USUARIO PODE CRIAR SUA CONTA E JA A TABELA USUARIOS E QUANDO O ADMIN CRIA


Última edição por leonardocr em Ter Jun 19, 2012 11:35 am, editado 1 vez(es)
Ir para o topo Ir para baixo
ti.admin




Mensagens : 23
Data de inscrição : 04/05/2012

Fila de espera Empty
MensagemAssunto: Re: Fila de espera   Fila de espera EmptySeg Jun 11, 2012 11:22 am

Leonardo, ola!

Escuta e se por acaso eu quisesse que esta lista de espera funcionasse por prioridade de atendimento e depois por hora e data de abertura do chamado ex:

Suponhamos que eu tenha 10 chamados abertos.
2 são prioridade de atendimento nivel 1 ( mais importante), estes dois serão classificados por data ou hora de abertura, mas ambos ficarão acima dos outros com prioridades nivel 2 ou 3.
5 são chamados nivel 2
entre estes 5 chamados nivel 2 (meio importante), ficarão classificados por data ou hora de abertura mas todos ficarão atras dos chamados com prioridade nivel 1
3 são chamados nivel 3 (menos importante),entre estes 3 chamados eles ficarão classificados cada um por data ou hora de abertura, mas todos ficarão atras dos chamados com prioridade niveis 1 e 2.
tem como fazer?
Ir para o topo Ir para baixo
ti.admin




Mensagens : 23
Data de inscrição : 04/05/2012

Fila de espera Empty
MensagemAssunto: Re: Fila de espera   Fila de espera EmptyDom Jun 17, 2012 6:18 pm

Este é o novo codigo do lista_chamados.php, este codigo sofreu algumas modificações e agora ele lista pro usuario as ocorrencias por prioridade de atendimento, e entre as ocorrencias com mesma prioridade ele classifica por data e hora de abertura.
Lembrando que tem que configurar no ocomon as prioridades, aqui na empresa coloquei maxima, media e minima urgencia, cada uma com seu tempo de atendimento.

Citação :
<?php session_start();
/* Copyright 2005 Flávio Ribeiro

This file is part of OCOMON.

OCOMON is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.

OCOMON is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with Foobar; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/

if (!isset($_SESSION['s_logado']) || $_SESSION['s_logado'] == 0)
{
print "<script>window.open('../../index.php','_parent','')</script>";
exit;
}

include ("../../includes/include_geral.inc.php");
include ("../../includes/include_geral_II.inc.php");

include ("../../includes/classes/paging.class.php");
print "<html>";
print "<body>";


print "<TABLE class='header_centro' border-top: thin solid #999999;}' border='0' cellpadding='5' cellspacing='0' align='center' width='100%' bgcolor='".$cor."'>";
print "<TR class='header'>";
print "
<TD class='line' ><a title='Posi&ccedil;&atilde;o do atendimento'>".TRANS('OCO_NUMBER_PS')."</a></TD>
<TD class='line' ><a title='N&uacute;mero do Chamado'>".TRANS('OCO_NUMBER_CH')."</a></TD>
<TD class='line' ><a title='Nome Solicitante'>".TRANS('OCO_CONTACT')."</a></TD>
<TD class='line' ><a title='Prioridade de atendimento'>".TRANS('OCO_PRIORITY')."</a></TD>
<TD class='line' ><a title='Data Abertura'>".TRANS('OCO_FIELD_DATE_OPEN')."</a></TD>
<TD class='line' ><a title='Status do Chamado'>".TRANS('OCO_STATUS')."</a></TD>";
print "</TR>";

$valign = " VALIGN = TOP ";
$qry = "select nome from usuarios where user_id = ".$_SESSION['s_uid']."";
$exec = mysql_query($qry);
$r_user = mysql_fetch_array($exec);
$contato = $r_user['nome'];

$sqlSubCall = "SELECT numero,data_abertura,oco_prior,prior_atend.pr_nivel,prior_atend.pr_desc,u.nome,s.status, aberto_por, u2.nome as abertopor
FROM ocorrencias o INNER JOIN status s on o.status=s.stat_id
INNER JOIN usuarios u on o.operador=u.user_id
INNER JOIN usuarios u2 on o.aberto_por = u2.user_id
INNER JOIN prior_atend on o.oco_prior=prior_atend.pr_nivel
where o.status <> '4' and o.status <> '12'
order by prior_atend.pr_nivel
";
$execSubCall = mysql_query($sqlSubCall) or die (TRANS('ERR_QUERY').'<br>'.$sqlSubCall);
$regSub = mysql_num_rows($execSubCall);
$count = 1;
$j = 0;
while ($row = mysql_fetch_array($execSubCall))
{

$data2 = $row['data_abertura'];

$data = date('d/m/Y H:i:s ', strtotime($data2));

$cor1 = '#f6f6f6';
$cor2 = '#e3e1e1';
$cor3 = '#1E90FF';
$destaca = '#cccccc';
if($contato == $row['abertopor']){

$cor = $cor3;}else {
if ($j % 2) {
$cor = $cor2;
} else {
$cor = $cor1;
}}
$j++;
if($row['nome'] == 'Leonardo Cortes Rodovalho' || $row['nome'] == 'Alessandro Alves Cassiano' || $row['nome'] == 'Raphael Dias Oliveira' || $row['nome'] == 'Leonardo Brune'){
$atendente = $row['oco_prior'];
}
else{
$atendente = 'pr_nivel';

}



print "<tr style='background:$cor;' id='linhax".$j."' onMouseOver=\"javascript:this.style.backgroundColor='$destaca'\" onMouseOut=\"javascript:this.style.backgroundColor='$cor'\" onMouseDown=\"marca('linhax".$j."','".$_SESSION['s_colorMarca']."');\">";
print "<TD class='line' ".$valign."><b>$count</TD>";
print "<TD class='line' ".$valign.">".$row['numero']."<br>";
print "<TD class='line' ".$valign.">".$row['abertopor']."<br>";
print "<TD class='line' ".$valign.">".$row['pr_desc']."<br>";
print "<TD class='line' ".$valign.">$data<br>";
print "<TD class='line' ".$valign.">".$row['status']."<br>";

$count++;

}
print "</TABLE>";
print "</body>";
print "</html>";
?>
Ir para o topo Ir para baixo
leonardocr

leonardocr


Mensagens : 91
Data de inscrição : 30/04/2012
Idade : 32

Fila de espera Empty
MensagemAssunto: Re: Fila de espera   Fila de espera EmptySeg Jun 18, 2012 8:51 am

parabens pela iniciativa, mas aqui na empresa não serveria pra mim, ve se vc concorda comigo.

Todo mundo coloca aqui a prioridade alta então agente considera sendo normal.
Ir para o topo Ir para baixo
ti.admin




Mensagens : 23
Data de inscrição : 04/05/2012

Fila de espera Empty
MensagemAssunto: Re: Fila de espera   Fila de espera EmptyTer Jul 03, 2012 10:40 pm

leonardocr escreveu:
parabens pela iniciativa, mas aqui na empresa não serveria pra mim, ve se vc concorda comigo.

Todo mundo coloca aqui a prioridade alta então agente considera sendo normal.

Aqui nós é que definimos a prioridade, justamente porque se deixar o usuario escolher e a tela do monitor piscar eles abrem chamado com prioridade alta.
Então somos nós que definimos pois sabemos quais setores tem prioridades sobre outros como faturamento, financeiro, diretoria etc...
Se depender de todo mundo colocar prioridade como alta, não há necessidade de ter classificação de prioridades.
Pra mim foi uma boa, e pra quem mais servir esta ai o codigo.
Ir para o topo Ir para baixo
rodrigoinhaia




Mensagens : 1
Data de inscrição : 07/11/2012

Fila de espera Empty
MensagemAssunto: Ajuda com seu script.   Fila de espera EmptyQua Nov 07, 2012 10:35 am

ti.admin escreveu:
Este é o novo codigo do lista_chamados.php, este codigo sofreu algumas modificações e agora ele lista pro usuario as ocorrencias por prioridade de atendimento, e entre as ocorrencias com mesma prioridade ele classifica por data e hora de abertura.
Lembrando que tem que configurar no ocomon as prioridades, aqui na empresa coloquei maxima, media e minima urgencia, cada uma com seu tempo de atendimento.

Citação :
<?php session_start();
/* Copyright 2005 Flávio Ribeiro

This file is part of OCOMON.

OCOMON is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.

OCOMON is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with Foobar; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/

if (!isset($_SESSION['s_logado']) || $_SESSION['s_logado'] == 0)
{
print "<script>window.open('../../index.php','_parent','')</script>";
exit;
}

include ("../../includes/include_geral.inc.php");
include ("../../includes/include_geral_II.inc.php");

include ("../../includes/classes/paging.class.php");
print "<html>";
print "<body>";


print "<TABLE class='header_centro' border-top: thin solid #999999;}' border='0' cellpadding='5' cellspacing='0' align='center' width='100%' bgcolor='".$cor."'>";
print "<TR class='header'>";
print "
<TD class='line' ><a title='Posi&ccedil;&atilde;o do atendimento'>".TRANS('OCO_NUMBER_PS')."</a></TD>
<TD class='line' ><a title='N&uacute;mero do Chamado'>".TRANS('OCO_NUMBER_CH')."</a></TD>
<TD class='line' ><a title='Nome Solicitante'>".TRANS('OCO_CONTACT')."</a></TD>
<TD class='line' ><a title='Prioridade de atendimento'>".TRANS('OCO_PRIORITY')."</a></TD>
<TD class='line' ><a title='Data Abertura'>".TRANS('OCO_FIELD_DATE_OPEN')."</a></TD>
<TD class='line' ><a title='Status do Chamado'>".TRANS('OCO_STATUS')."</a></TD>";
print "</TR>";

$valign = " VALIGN = TOP ";
$qry = "select nome from usuarios where user_id = ".$_SESSION['s_uid']."";
$exec = mysql_query($qry);
$r_user = mysql_fetch_array($exec);
$contato = $r_user['nome'];

$sqlSubCall = "SELECT numero,data_abertura,oco_prior,prior_atend.pr_nivel,prior_atend.pr_desc,u.nome,s.status, aberto_por, u2.nome as abertopor
FROM ocorrencias o INNER JOIN status s on o.status=s.stat_id
INNER JOIN usuarios u on o.operador=u.user_id
INNER JOIN usuarios u2 on o.aberto_por = u2.user_id
INNER JOIN prior_atend on o.oco_prior=prior_atend.pr_nivel
where o.status <> '4' and o.status <> '12'
order by prior_atend.pr_nivel
";
$execSubCall = mysql_query($sqlSubCall) or die (TRANS('ERR_QUERY').'<br>'.$sqlSubCall);
$regSub = mysql_num_rows($execSubCall);
$count = 1;
$j = 0;
while ($row = mysql_fetch_array($execSubCall))
{

$data2 = $row['data_abertura'];

$data = date('d/m/Y H:i:s ', strtotime($data2));

$cor1 = '#f6f6f6';
$cor2 = '#e3e1e1';
$cor3 = '#1E90FF';
$destaca = '#cccccc';
if($contato == $row['abertopor']){

$cor = $cor3;}else {
if ($j % 2) {
$cor = $cor2;
} else {
$cor = $cor1;
}}
$j++;
if($row['nome'] == 'Leonardo Cortes Rodovalho' || $row['nome'] == 'Alessandro Alves Cassiano' || $row['nome'] == 'Raphael Dias Oliveira' || $row['nome'] == 'Leonardo Brune'){
$atendente = $row['oco_prior'];
}
else{
$atendente = 'pr_nivel';

}



print "<tr style='background:$cor;' id='linhax".$j."' onMouseOver=\"javascript:this.style.backgroundColor='$destaca'\" onMouseOut=\"javascript:this.style.backgroundColor='$cor'\" onMouseDown=\"marca('linhax".$j."','".$_SESSION['s_colorMarca']."');\">";
print "<TD class='line' ".$valign."><b>$count</TD>";
print "<TD class='line' ".$valign.">".$row['numero']."<br>";
print "<TD class='line' ".$valign.">".$row['abertopor']."<br>";
print "<TD class='line' ".$valign.">".$row['pr_desc']."<br>";
print "<TD class='line' ".$valign.">$data<br>";
print "<TD class='line' ".$valign.">".$row['status']."<br>";

$count++;

}
print "</TABLE>";
print "</body>";
print "</html>";
?>

Tudo Bom?! Seguinte efetuei os passos citados pelo LeonardoCR e sua atualização e mesmo assim ele não recupera as informações o Iframe fica em Branco só com o cabeçalho.
Teria alguma observação a ser feita a mais do que nos posts?
Utilizo tando a tabela "usuarios" quanto a "utmp_usuarios".
Abraço.
Ir para o topo Ir para baixo
Conteúdo patrocinado





Fila de espera Empty
MensagemAssunto: Re: Fila de espera   Fila de espera Empty

Ir para o topo Ir para baixo
 
Fila de espera
Ir para o topo 
Página 1 de 1

Permissões neste sub-fórumNão podes responder a tópicos
Suporte não-oficial ao OcoMon :: Sua primeira categoria :: GERAL :: Customização-
Ir para: