Exemple #1
0
        protected void AbrirButton_Click(object sender, EventArgs e)
        {
            try
            {
                ObjChamado      = FactoryChamado.GetNew();
                ObjUsuario.Nome = Membership.GetUser().ToString();

                if (DropDownListTpServico.SelectedIndex > 0 && DropDownListServico.SelectedIndex > 0 && DropDownListPrioridade.SelectedIndex > 0 || PerfilFunc && DropDownListTpServico.SelectedIndex > 0 && DropDownListServico.SelectedIndex > 0 && DropDownListPrioridade.SelectedIndex > 0 && DropDownListCliente.SelectedIndex > 0)
                {
                    if (PerfilFunc)
                    {
                        ObjChamado.IdCliente    = Convert.ToInt32(DropDownListCliente.SelectedValue);
                        ObjChamado.IdPrioridade = Convert.ToInt32(DropDownListPrioridade.SelectedValue);
                        ObjUsuario.Id           = ObjChamado.IdCliente;

                        ObjUsuario = new ManterUsuario(ObjUsuario).ConsultaUsuarioById();

                        foreach (var RegiaoUsr in new ManterUsuario(ObjUsuario).GetIdRegiaoAtendByUsr())
                        {
                            ObjAtend.IdRegiaoAtendimento = RegiaoUsr;
                        }
                    }
                    else
                    {
                        ObjUsuario.Id           = (int)Session["id"];
                        ObjUsuario              = new ManterUsuario(ObjUsuario).ConsultaUsuarioById();
                        ObjChamado.IdPrioridade = Convert.ToInt32(DropDownListPrioridade.SelectedValue);
                        ObjChamado.IdCliente    = ObjUsuario.Id;

                        foreach (var RegiaoUsr in new ManterUsuario(ObjUsuario).GetIdRegiaoAtendByUsr())
                        {
                            ObjAtend.IdRegiaoAtendimento = RegiaoUsr;
                        }
                    }

                    ObjChamado.Assunto   = Assunto.Value;
                    ObjChamado.Descricao = Descricao.Value;
                    ObjChamado.IdServico = Convert.ToInt32(DropDownListServico.SelectedValue);

                    if (new ManterChamado(ObjChamado, ObjUsuario, ObjAtend).AbreChamado())
                    {
                        ObjChamado.Id = new ManterChamado().GetUltIdChamado();
                    }
                }
                else
                {
                    Mensagem = "Selecione as opções para abertura do chamado.";
                    ScriptManager.RegisterStartupScript(this, GetType(), "CallMyFunction", "Alerta('" + Mensagem + "')", true);
                }
            }
            catch (Exception Ex)
            {
                ObjChamado = null;
                LogException.InsereLogBd(Ex);
                MsgLabel.Text = LogException.CodigoErroBd();
            }
        }
        protected void CancelarButton_Click(object sender, EventArgs e)
        {
            try
            {
                CancButtonClick = true;

                if (!DescCancel.Value.Equals(""))
                {
                    ObjAtend   = FactoryAtendimento.GetNew();
                    ObjChamado = FactoryChamado.GetNew();

                    ObjChamado.Id      = Convert.ToInt32(Request.QueryString["IdChamado"]);
                    ObjAtend.IdChamado = ObjChamado.Id;
                    ObjAtend           = new ManterAtendimento(ObjAtend).ConsultaAtendimentoByIdChamado();

                    ObjChamado.InfoCancelamento = DescCancel.Value;

                    if (new ManterChamado(ObjChamado, ObjAtend).CancelaChamado())
                    {
                        Response.Redirect("\\Views\\SGA\\VChamado\\ConsultaChamado.aspx?IdChamado=" + ObjChamado.Id + "&Mensagem=Cancelado", false);
                    }
                    else
                    {
                        Mensagem = "Ocorreu um problema no cancelamento do chamado.";
                        ScriptManager.RegisterStartupScript(this, GetType(), "CallMyFunction", "Alerta('" + Mensagem + "')", true);
                    }
                }
                else
                {
                    Mensagem = "Informe o motivo do cancelamento.";
                    ScriptManager.RegisterStartupScript(this, GetType(), "CallMyFunction", "Alerta('" + Mensagem + "')", true);
                }
            }
            catch (Exception Ex)
            {
                LogException.InsereLogBd(Ex);
                ObjChamado    = null;
                MsgLabel.Text = LogException.CodigoErroBd();
            }
        }
Exemple #3
0
        public bool IniciaAtendimento()
        {
            try
            {
                ObjUsuario          = FactoryUsuario.GetNew(TipoUsuario.UsuarioFuncionario);
                ObjUsuario.Id       = ObjAtend.IdTecnico;
                ObjUsuario.IdStatus = 2;

                if (new ManterAtendimentoDAO(ObjAtend).IniciaAtendimentoDAO() && new ManterUsuario(ObjUsuario).AlteraDisponibilidade())
                {
                    ObjChamado         = FactoryChamado.GetNew();
                    ObjChamado.Id      = ObjAtend.IdChamado;
                    ObjChamado         = new ManterChamado(ObjChamado).ConsultaChamadoById();
                    ObjAtend.IdCliente = ObjChamado.IdCliente;

                    ObjNotificacao.IdOrigem   = 0;
                    ObjNotificacao.IdDest     = ObjAtend.IdTecnico;
                    ObjNotificacao.IdMensagem = 4;
                    ObjNotificacao.IdTipo     = 4;
                    ObjNotificacao.IdChamado  = ObjAtend.IdChamado;
                    new ManterNotificacao(ObjNotificacao).NotificaUsuariosSistem();

                    ObjNotificacao.IdDest = ObjAtend.IdCliente;
                    new ManterNotificacao(ObjNotificacao).NotificaUsuariosSistem();

                    return(true);
                }
                else
                {
                    return(false);
                }
            }
            catch (Exception)
            {
                throw;
            }
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            try
            {
                if (!"".Equals(Request.QueryString["IdChamado"]))
                {
                    ObjChamado    = FactoryChamado.GetNew();
                    ObjChamado.Id = Convert.ToInt32(Request.QueryString["IdChamado"]);
                    ObjChamado    = new ManterChamado(ObjChamado).ConsultaChamadoById();

                    if (ObjChamado != null)
                    {
                        if (!Page.IsPostBack)
                        {
                            if (Request.QueryString.AllKeys.Contains("Mensagem"))
                            {
                                if (Request.QueryString["Mensagem"].Equals("Cancelado"))
                                {
                                    Mensagem = "Chamado cancelado com sucesso.";
                                    ScriptManager.RegisterStartupScript(this, GetType(), "CallMyFunction", "Alerta('" + Mensagem + "')", true);
                                }
                                else if (Request.QueryString["Mensagem"].Equals("Encerrado"))
                                {
                                    Mensagem = "Chamado encerrado com sucesso.";
                                    ScriptManager.RegisterStartupScript(this, GetType(), "CallMyFunction", "Alerta('" + Mensagem + "')", true);
                                }
                                else if (Request.QueryString["Mensagem"].Equals("Tramite"))
                                {
                                    Mensagem = "Trâmite adicionado com sucesso.";
                                    ScriptManager.RegisterStartupScript(this, GetType(), "CallMyFunction", "Alerta('" + Mensagem + "')", true);
                                }
                                else if (Request.QueryString["Mensagem"].Equals("Reaberto"))
                                {
                                    Mensagem = "Chamado reaberto com sucesso.";
                                    ScriptManager.RegisterStartupScript(this, GetType(), "CallMyFunction", "Alerta('" + Mensagem + "')", true);
                                }
                                else if (Request.QueryString["Mensagem"].Equals("Recusado"))
                                {
                                    Mensagem = "Atendimento deste chamado recusado.";
                                    ScriptManager.RegisterStartupScript(this, GetType(), "CallMyFunction", "Alerta('" + Mensagem + "')", true);
                                }
                                else if (Request.QueryString["Mensagem"].Equals("Avaliado"))
                                {
                                    Mensagem = "Avaliado com sucesso!";
                                    ScriptManager.RegisterStartupScript(this, GetType(), "CallMyFunction", "Alerta('" + Mensagem + "')", true);
                                }
                                else if (Request.QueryString["Mensagem"].Equals("AvaliadoAnt"))
                                {
                                    Mensagem = "Este chamado já foi avaliado.";
                                    ScriptManager.RegisterStartupScript(this, GetType(), "CallMyFunction", "Alerta('" + Mensagem + "')", true);
                                }
                            }
                            else
                            {
                                Mensagem = "Informações do chamado.";
                                ScriptManager.RegisterStartupScript(this, GetType(), "CallMyFunction", "Alerta('" + Mensagem + "')", true);
                            }
                        }

                        if (Request.QueryString.AllKeys.Contains("Troca"))
                        {
                            if (Request.QueryString["Troca"].Equals("true"))
                            {
                                Mensagem = "Técnico alocado com sucesso.";
                                ScriptManager.RegisterStartupScript(this, GetType(), "CallMyFunction", "Alerta('" + Mensagem + "')", true);
                            }
                        }

                        ObjServico.Id      = ObjChamado.IdServico;
                        ObjStatusChm.Id    = ObjChamado.IdStatus;
                        ObjAtend.IdChamado = ObjChamado.Id;

                        ObjAtend     = new ManterAtendimento(ObjAtend).ConsultaAtendimentoByIdChamado();
                        ObjRegiao.Id = ObjAtend.IdRegiaoAtendimento;

                        ObjUsuario.Id = ObjAtend.IdTecnico;

                        ObjUsuario  = new ManterUsuario(ObjUsuario).ConsultaUsuarioById();
                        NomeTecnico = ObjUsuario.Nome;

                        ObjUsuario.Id = ObjAtend.IdCliente;

                        ObjUsuario  = new ManterUsuario(ObjUsuario).ConsultaUsuarioById();
                        NomeCliente = ObjUsuario.Nome;

                        ObjPrioridade.Id = ObjChamado.IdPrioridade;

                        ObjPrioridade = new ManterPrioridadeChamado(ObjPrioridade).ConsultaPrioridadeChamadoById();
                        ObjRegiao     = new ManterRegiaoAtendimento(ObjRegiao).ConsultaRegiaoAtendimentoById();
                        ObjServico    = new ManterServico(ObjServico).ConsultaServicoById();
                        ObjStatusChm  = new ManterStatusChamado(ObjStatusChm).ConsultaStatusChamadoById();

                        if (Session["perfil"].Equals("Cliente Físico") || Session["perfil"].Equals("Cliente Jurídico"))
                        {
                            if (!ObjAtend.IdCliente.Equals(Session["id"]))
                            {
                                Response.Redirect("\\Views\\SGA\\Inicio.aspx", false);
                            }
                        }

                        if (ObjStatusChm.Id.Equals(3))
                        {
                            ObjAvaliacao.IdChamado = ObjChamado.Id;
                            ObjAvaliacao           = new ManterAvaliacao(ObjAvaliacao).ConsultaAvaliacao();
                        }

                        if (new ManterChamado(ObjChamado).ValidaTempoFechamento())
                        {
                            AvaliarChamadoButton.Enabled = true;
                            ReaberturaButton.Enabled     = true;
                        }
                        else
                        {
                            AvaliarChamadoButton.Enabled = false;
                            ReaberturaButton.Enabled     = false;
                        }
                    }
                    else
                    {
                        ObjChamado = null;
                        Mensagem   = "Chamado não encontrado ou inexistente.";
                        ScriptManager.RegisterStartupScript(this, GetType(), "CallMyFunction", "Alerta('" + Mensagem + "')", true);
                    }
                }
                else
                {
                    Mensagem = "Nenhum número de chamado foi informado.";
                    ScriptManager.RegisterStartupScript(this, GetType(), "CallMyFunction", "Alerta('" + Mensagem + "')", true);
                }
            }
            catch (Exception Ex)
            {
                LogException.InsereLogBd(Ex);
                ObjChamado    = null;
                MsgLabel.Text = LogException.CodigoErroBd();
            }
        }
        protected void Encerrar_Click(object sender, EventArgs e)
        {
            try
            {
                EnceButtonClick = true;

                if (!EnceRelat.Value.Equals("") && !CheckBoxPend.Checked || !PendRelat.Value.Equals("") && CheckBoxPend.Checked)
                {
                    ObjAtend   = FactoryAtendimento.GetNew();
                    ObjChamado = FactoryChamado.GetNew();

                    ObjChamado.Id      = Convert.ToInt32(Request.QueryString["IdChamado"]);
                    ObjAtend.IdChamado = ObjChamado.Id;
                    ObjAtend           = new ManterAtendimento(ObjAtend).ConsultaAtendimentoByIdChamado();

                    if (CheckBoxPend.Checked && !PendRelat.Value.Equals(""))
                    {
                        ObjAtend.Relatorio       = PendRelat.Value;
                        ObjChamado.Pendencia     = true;
                        ObjChamado.InfoPendencia = PendRelat.Value;

                        if (new ManterAtendimento(ObjAtend, ObjChamado).EncerraAtendimento())
                        {
                            Response.Redirect("\\Views\\SGA\\VChamado\\ConsultaChamado.aspx?IdChamado=" + ObjChamado.Id + "&Mensagem=Encerrado", false);
                        }
                        else
                        {
                            Mensagem = "Ocorreu um problema no encerramento do chamado.";
                            ScriptManager.RegisterStartupScript(this, GetType(), "CallMyFunction", "Alerta('" + Mensagem + "')", true);
                        }
                    }
                    else
                    {
                        Mensagem = "Informe as pendências.";
                        ScriptManager.RegisterStartupScript(this, GetType(), "CallMyFunction", "Alerta('" + Mensagem + "')", true);
                    }

                    if (!CheckBoxPend.Checked)
                    {
                        ObjAtend.Relatorio = EnceRelat.Value;

                        if (new ManterAtendimento(ObjAtend, ObjChamado).EncerraAtendimento())
                        {
                            Response.Redirect("\\Views\\SGA\\VChamado\\ConsultaChamado.aspx?IdChamado=" + ObjChamado.Id + "&Mensagem=Encerrado", false);
                        }
                        else
                        {
                            Mensagem = "Ocorreu um problema no encerramento do chamado.";
                            ScriptManager.RegisterStartupScript(this, GetType(), "CallMyFunction", "Alerta('" + Mensagem + "')", true);
                        }
                    }
                }
                else
                {
                    Mensagem = "Informe o relatório do atendimento.";
                    ScriptManager.RegisterStartupScript(this, GetType(), "CallMyFunction", "Alerta('" + Mensagem + "')", true);
                }
            }
            catch (Exception Ex)
            {
                LogException.InsereLogBd(Ex);
                ObjChamado    = null;
                MsgLabel.Text = LogException.CodigoErroBd();
            }
        }
Exemple #6
0
        public bool CadastraAtendimentoDAO()
        {
            try
            {
                SqlCommand Cmd;
                using (SqlConnection Con = new Conexao().ConexaoDB())
                {
                    if (ObjChamado != null)
                    {
                        if (ObjChamado.Pendencia)
                        {
                            Cmd = new SqlCommand(@"
                                INSERT INTO [dbo].[Atendimento]
                                    ([idChamado]
                                      ,[idTecnico]
                                      ,[idCliente]
                                      ,[idEmpresa]
                                      ,[idRegiaoAtendimento]
                                      ,[dataRegistro]
                                      ,[usuarioRegistro])
                                VALUES
                                    (@IdChamado
                                    ,@IdTecnico
                                    ,@IdCliente
                                    ,@Empresa
                                    ,@IdRegiao
                                    ,@Data
                                    ,@Usuario);

                                UPDATE [dbo].[Chamado] SET
                                    [ContPendencia] = @ContPendencia
                                WHERE idChamado = @IdChamado;", Con);

                            ObjChamado    = FactoryChamado.GetNew();
                            ObjChamado.Id = ObjAtend.IdChamado;

                            Cmd.Parameters.AddWithValue("@ContPendencia", new ManterChamadoDAO(ObjChamado).GetContPendenciaDAO() + 1);
                        }
                        else
                        {
                            Cmd = new SqlCommand(@"
                                INSERT INTO [dbo].[Atendimento]
                                    ([idChamado]
                                      ,[idTecnico]
                                      ,[idCliente]
                                      ,[idEmpresa]
                                      ,[idRegiaoAtendimento]
                                      ,[dataRegistro]
                                      ,[usuarioRegistro])
                                VALUES
                                    (@IdChamado
                                    ,@IdTecnico
                                    ,@IdCliente
                                    ,@Empresa
                                    ,@IdRegiao
                                    ,@Data
                                    ,@Usuario);", Con);
                        }
                    }
                    else
                    {
                        Cmd = new SqlCommand(@"
                                INSERT INTO [dbo].[Atendimento]
                                    ([idChamado]
                                      ,[idTecnico]
                                      ,[idCliente]
                                      ,[idEmpresa]
                                      ,[idRegiaoAtendimento]
                                      ,[dataRegistro]
                                      ,[usuarioRegistro])
                                VALUES
                                    (@IdChamado
                                    ,@IdTecnico
                                    ,@IdCliente
                                    ,@Empresa
                                    ,@IdRegiao
                                    ,@Data
                                    ,@Usuario);", Con);
                    }

                    Cmd.Parameters.AddWithValue("@IdChamado", ObjAtend.IdChamado);
                    Cmd.Parameters.AddWithValue("@IdTecnico", ObjAtend.IdTecnico);
                    Cmd.Parameters.AddWithValue("@IdCliente", ObjAtend.IdCliente);
                    Cmd.Parameters.AddWithValue("@Empresa", InfoGlobal.GlobalIdEmpresa);
                    Cmd.Parameters.AddWithValue("@IdRegiao", ObjAtend.IdRegiaoAtendimento);
                    Cmd.Parameters.AddWithValue("@Data", DateTime.Now);
                    Cmd.Parameters.AddWithValue("@Usuario", Membership.GetUser().ToString());

                    Cmd.ExecuteNonQuery();
                    return(true);
                }
            }
            catch (SqlException)
            {
                throw;
            }
        }
Exemple #7
0
        public List <Chamado> ConsultaChamadosDAO()
        {
            try
            {
                List <Chamado> ChamList = new List <Chamado>();
                SqlDataReader  Dr       = null;
                SqlCommand     Cmd      = null;

                using (SqlConnection Con = new Conexao().ConexaoDB())
                {
                    if (ObjUsuario.Id.Equals(0))
                    {
                        Cmd = new SqlCommand(@"
                SELECT *
                  FROM [dbo].[Chamado] where idEmpresa = @Empresa", Con);

                        Cmd.Parameters.AddWithValue("@Empresa", InfoGlobal.GlobalIdEmpresa);
                    }
                    else if (ObjChamado.Fila)
                    {
                        Cmd = new SqlCommand(@"
                 SELECT * FROM Chamado Chm inner join Atendimento Atd on (Chm.idChamado = Atd.idChamado) WHERE
                    Atd.idTecnico = @IdTecnico and Chm.idStatusChamado in (1,2,4) and Atd.dataFimAtendimento is null;", Con);

                        Cmd.Parameters.AddWithValue("@idTecnico", ObjUsuario.Id);
                    }
                    else if (ObjUsuario.Perfil != null && ObjUsuario.Perfil.Equals("Cliente"))
                    {
                        Cmd = new SqlCommand(@"
                SELECT * FROM Chamado  WHERE
                    idCliente = @IdCliente;", Con);

                        Cmd.Parameters.AddWithValue("@IdCliente", ObjUsuario.Id);
                    }
                    else
                    {
                        Cmd = new SqlCommand(@"
                SELECT * FROM Chamado Chm inner join Atendimento Atd on (Chm.idChamado = Atd.idChamado) WHERE
                    Atd.idTecnico = @IdTecnico;", Con);

                        Cmd.Parameters.AddWithValue("@idTecnico", ObjUsuario.Id);
                    }

                    Dr = Cmd.ExecuteReader();

                    while (Dr.Read())
                    {
                        Chamado Cham = FactoryChamado.GetNew();

                        Cham.Id             = Dr.GetInt32(0);
                        Cham.IdCliente      = Dr.GetInt32(1);
                        Cham.Assunto        = Dr.GetString(2);
                        Cham.Descricao      = Dr.GetString(3);
                        Cham.IdStatus       = Dr.GetInt32(4);
                        Cham.DataAbertura   = Dr.GetDateTime(5);
                        Cham.DataFechamento = Dr.GetDateTime(6);
                        Cham.IdServico      = Dr.GetInt32(7);
                        Cham.IdPrioridade   = Dr.GetInt32(8);

                        ChamList.Add(Cham);
                    }

                    return(ChamList);
                }
            }
            catch (SqlException)
            {
                throw;
            }
        }