예제 #1
0
        public async Task <IActionResult> Edit(int id, [Bind("SchaId,SchaNome")] StatusChamado statusChamado)
        {
            if (id != statusChamado.SchaId)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(statusChamado);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!StatusChamadoExists(statusChamado.SchaId))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(statusChamado));
        }
예제 #2
0
        public IQueryable <Chamados> PesquisarChamado(StatusChamado statuschamado)
        {
            var retorno = _RepositoryChamado.List()
                          .Where(query => query.Status == statuschamado);

            return(retorno);
        }
예제 #3
0
        public void Alterar(Guid idChamado, StatusChamado status, string motivo)
        {
            ChamadoDTO chamado = chamadoDAL.BuscarPorId(idChamado);

            chamado.status     = status;
            chamado.motivo     = motivo;
            chamado.dataEdicao = DateTime.Now;
            chamadoDAL.Alterar(chamado);
        }
예제 #4
0
        private void buttonStatus1_Click(object sender, EventArgs e)
        {
            Button        button        = sender as Button;
            StatusChamado statuschamado = (StatusChamado)Enum.Parse(typeof(StatusChamado), button.Text);

            _RepositoryControlChamado.AlterarStatus((int)labelChamado.Tag, statuschamado);

            CompletarCampo(_RepositoryControlChamado.Pesquisar((int)labelChamado.Tag));
        }
예제 #5
0
        public async Task <IActionResult> Create([Bind("SchaId,SchaNome")] StatusChamado statusChamado)
        {
            if (ModelState.IsValid)
            {
                _context.Add(statusChamado);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(statusChamado));
        }
예제 #6
0
 private void frmDashBoard_Load(object sender, EventArgs e)
 {
     foreach (var suit in Enum.GetValues(typeof(StatusChamado)))
     {
         StatusChamado statuschamado = (StatusChamado)Enum.Parse(typeof(StatusChamado), suit.ToString());
         var           lista         = _RepositoryControlChamado.PesquisarChamadoStatusChamado(statuschamado).ToList();
         foreach (var first in lista)
         {
             contar(first.CodigoChamado, this, suit.ToString(), first.ToString(), first.DataInicio.Value, first.TipoChamado.Nome, first.Descricao, first.TipoChamado.SLA, first.Cliente.Nome, first.Prioridade);
         }
     }
 }
예제 #7
0
        public BaseReturn AlterarStatus(int codigochamado, StatusChamado status)
        {
            Chamados DadosChamados = Pesquisar(codigochamado);

            if (DadosChamados == null)
            {
                return(new BaseReturn("Chamado ", Library.Class.Resources.Message.DADOS_NAO_ENCONTRADOS, false));
            }

            DadosChamados = DadosChamados.AlterarStatusChamado(status);

            _RepositoryChamado.Edit(DadosChamados);

            //Library.Class.Utils.ExtensionEmail.EnviarEmail("Caro " + _RepositoryUsuario.Find(DadosChamados.CodigoUsuario_Cliente).Nome + " \n \n O status do seu chamado foi atualizado, " + DadosChamados.Status.ToString() + " \n \n O " + DadosChamados.Produto.Nome + " , foi informado que " + DadosChamados.Descricao + " com a observação de " + DadosChamados.Observacao.ToString() + " .", _RepositoryUsuario.Find(DadosChamados.CodigoUsuario_Cliente).Email.ToString());

            return(new BaseReturn("Chamado", Library.Class.Resources.Message.OPERACAO_REALIZADA_COM_SUCESSO, true));
        }
예제 #8
0
        private void salvarToolStripButton1_Click(object sender, EventArgs e)
        {
            StatusChamado statuschamado = (StatusChamado)Enum.Parse(typeof(StatusChamado), buttonAtual.Text);

            ChamadoPrioridade chamadoprioridade = (ChamadoPrioridade)Enum.Parse(typeof(ChamadoPrioridade), comboPrioridade.SelectedItem.ToString());

            var retorno = _RepositoryControlChamado.AlterarChamado((int)labelChamado.Tag, richTextDescricao.Text, richTextobs.Text,
                                                                   statuschamado, chamadoprioridade, (int)comboTipochamado.SelectedIndex,
                                                                   (int)comboProduto.SelectedIndex, (int)comboCliente.SelectedIndex,
                                                                   (int)comboFuncionario.SelectedIndex, (int)comboDepartamento.SelectedIndex, dateGarantia.Value);

            lblAtencao.Text = "• " + retorno.Propert + ": " + retorno.Message;

            if (retorno.Status)
            {
                Pesquisar(textBox2.Text);
                Limpar();
            }
        }
예제 #9
0
        public Chamados(string descricao, string observacao, StatusChamado status, ChamadoPrioridade prioridade,
                        int codigotipochamado,
                        int codigoproduto,
                        int codigousuario_cliente,
                        int?codigousuario_funcionario,
                        int?codigodepartamento, DateTime?datagarantia)
        {
            this.Descricao  = descricao;
            this.Observacao = observacao;
            this.Status     = status;
            this.Prioridade = prioridade;

            this.CodigoTipoChamado         = codigotipochamado;
            this.CodigoProduto             = codigoproduto;
            this.CodigoUsuario_Cliente     = codigousuario_cliente;
            this.CodigoUsuario_Funcionario = codigousuario_funcionario;
            this.CodigoDepartamento        = codigodepartamento;

            this.DataInicio   = DateTime.Now;
            this.DataGarantia = datagarantia;

            Validar();
        }
예제 #10
0
        public Guid Inserir(Guid idProduto, string descricao, StatusChamado status, int quantidade)
        {
            ChamadoDTO chamado = new ChamadoDTO();

            chamado.idChamado   = Guid.NewGuid();
            chamado.dataCriacao = DateTime.Now;
            chamado.descricao   = descricao;
            chamado.idProduto   = idProduto;
            chamado.status      = status;
            chamado.quantidade  = quantidade;
            chamadoDAL.Inserir(chamado);

            if (chamado.status == StatusChamado.Aberto_PIK)
            {
                new ApiPickingDAL().EncaminharChamadoPicking(chamado);
            }

            if (chamado.status == StatusChamado.Aberto_RH)
            {
                new ApiRhDAL().EncaminharChamadoRh(chamado);
            }

            return(chamado.idChamado);
        }
예제 #11
0
 public Chamados AlterarStatusChamado(StatusChamado status)
 {
     this.Status = status;
     return(this);
 }
예제 #12
0
 public ManterStatusChamado(StatusChamado ObjStatusChm)
 {
     this.ObjStatusChm = ObjStatusChm;
 }
예제 #13
0
        private void CarregarStatusChamado(Chamados chamados)
        {
            StatusChamado statuschamado = (StatusChamado)Enum.Parse(typeof(StatusChamado), chamados.Status.ToString());

            buttonAtual.Text = statuschamado.ToString();

            object val = Convert.ChangeType(statuschamado, statuschamado.GetTypeCode());

            StatusChamado statuschamadoantes = (StatusChamado)val - 1;

            StatusChamado statuschamado1 = (StatusChamado)val + 1;

            object val2 = Convert.ChangeType(statuschamado1, statuschamado1.GetTypeCode());

            var contarenum = Enum.GetValues(typeof(StatusChamado)).Cast <int>();

            buttonStatus1.Text = statuschamadoantes.ToString();
            buttonStatus1.Tag  = (int)val - 1;

            if ((int)val - 1 == contarenum.Min())
            {
                buttonStatus1.Enabled = false;
            }
            else
            {
                buttonStatus1.Enabled = true;
            }

            if ((int)val - 1 < contarenum.Min())
            {
                buttonStatus1.Enabled = false;
                buttonStatus1.Text    = statuschamado.ToString();
            }
            else
            {
                buttonStatus1.Enabled = true;
            }

            buttonStatus2.Text = statuschamado1.ToString();
            buttonStatus2.Tag  = (int)val2;



            if ((int)val2 == contarenum.Max())
            {
                buttonStatus1.Enabled = false;
            }
            else
            {
                buttonStatus1.Enabled = true;
            }

            if ((int)val2 > contarenum.Max())
            {
                buttonStatus2.Enabled = false;
                buttonStatus2.Text    = statuschamado.ToString();
                buttonStatus1.Enabled = false;
            }
            else
            {
                buttonStatus2.Enabled = true;
            }
        }
예제 #14
0
        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();
            }
        }
예제 #15
0
        public BaseReturn CadastrarChamado(string descricao, string observacao, StatusChamado status, ChamadoPrioridade prioridade,
                                           int codigotipochamado,
                                           int codigoproduto,
                                           int codigocliente,
                                           int codigofuncionario,
                                           int?codigodepartamento,
                                           DateTime datagarantia)
        {
            if (descricao == null || observacao == null)
            {
                return(new BaseReturn("Descricão", Library.Class.Resources.Message.DADOS_NAO_ENCONTRADOS, false));
            }


            TipoChamados DadosTipoChamado = _RepositoryTipoChamado.Find(codigotipochamado);

            if (DadosTipoChamado == null)
            {
                return(new BaseReturn("Tipo Chamado", Library.Class.Resources.Message.DADOS_NAO_ENCONTRADOS, false));
            }


            Produtos DadosProduto = _RepositoryProduto.Find(codigoproduto);

            if (DadosProduto == null)
            {
                return(new BaseReturn("Produto", Library.Class.Resources.Message.DADOS_NAO_ENCONTRADOS, false));
            }



            Usuarios DadosCliente = _RepositoryUsuario.Find(codigocliente);

            if (DadosCliente == null)
            {
                return(new BaseReturn("Cliente", Library.Class.Resources.Message.DADOS_NAO_ENCONTRADOS, false));
            }



            Usuarios DadosFuncionario = _RepositoryUsuario.Find(codigofuncionario);

            if (DadosFuncionario == null)
            {
                return(new BaseReturn("Funcionario", Library.Class.Resources.Message.DADOS_NAO_ENCONTRADOS, false));
            }



            Departamentos DadosDepartamento = _RepositoryDepartamento.Find(Convert.ToInt32(codigodepartamento));

            if (DadosDepartamento.IsInvalid())
            {
                return(new BaseReturn(DadosDepartamento.Notifications.FirstOrDefault().Property, DadosDepartamento.Notifications.FirstOrDefault().Message, false));
            }

            Chamados DadosChamados = new Chamados(descricao, observacao, status, prioridade,
                                                  codigotipochamado, codigoproduto, codigocliente, codigofuncionario, codigodepartamento, datagarantia);

            DadosTipoChamado.Chamado.Add(DadosChamados);

            DadosProduto.Chamado.Add(DadosChamados);

            DadosDepartamento.Chamado.Add(DadosChamados);

            _RepositoryDepartamento.Edit(DadosDepartamento);

            //Library.Class.Utils.ExtensionEmail.EnviarEmail("Caro " + _RepositoryUsuario.Find(DadosChamados.CodigoUsuario_Cliente).Nome + " \n \n Obrigado por entrar em contato. \n Chamado cadastrado." + " \n \n O " + DadosChamados.Produto.Nome + " , foi informado que " + DadosChamados.Descricao + " com a observação de " + DadosChamados.Observacao.ToString() + " .", _RepositoryUsuario.Find(DadosChamados.CodigoUsuario_Cliente).Email);

            return(new BaseReturn("Chamado", Library.Class.Resources.Message.OPERACAO_REALIZADA_COM_SUCESSO, true));
        }
예제 #16
0
        public BaseReturn AlterarChamado(int codigochamado, string descricao, string observacao, StatusChamado status, ChamadoPrioridade prioridade,
                                         int codigotipochamado,
                                         int codigoproduto,
                                         int codigocliente,
                                         int codigofuncionario,
                                         int?codigodepartamento,
                                         DateTime datagarantia)
        {
            if (descricao == null || observacao == null)
            {
                return(new BaseReturn("Descricão", Library.Class.Resources.Message.DADOS_NAO_ENCONTRADOS, false));
            }


            TipoChamados DadosTipoChamado = _RepositoryTipoChamado.Find(codigotipochamado);

            if (DadosTipoChamado == null)
            {
                return(new BaseReturn("Tipo Chamado", Library.Class.Resources.Message.DADOS_NAO_ENCONTRADOS, false));
            }


            Produtos DadosProduto = _RepositoryProduto.Find(codigoproduto);

            if (DadosProduto == null)
            {
                return(new BaseReturn("Produto", Library.Class.Resources.Message.DADOS_NAO_ENCONTRADOS, false));
            }



            Usuarios DadosCliente = _RepositoryUsuario.Find(codigocliente);

            if (DadosCliente == null)
            {
                return(new BaseReturn("Cliente", Library.Class.Resources.Message.DADOS_NAO_ENCONTRADOS, false));
            }



            Usuarios DadosFuncionario = _RepositoryUsuario.Find(codigofuncionario);

            if (DadosFuncionario == null)
            {
                return(new BaseReturn("Funcionario", Library.Class.Resources.Message.DADOS_NAO_ENCONTRADOS, false));
            }

            Departamentos DadosDepartamento = _RepositoryDepartamento.Find(Convert.ToInt32(codigodepartamento));

            if (DadosDepartamento.IsInvalid())
            {
                return(new BaseReturn(DadosDepartamento.Notifications.FirstOrDefault().Property, DadosDepartamento.Notifications.FirstOrDefault().Message, false));
            }

            Chamados DadosChamados = _RepositoryChamado.Find(codigochamado).Alterarchamado(descricao, observacao, status, prioridade,
                                                                                           codigotipochamado, codigoproduto, codigocliente, codigofuncionario, codigodepartamento, datagarantia);

            _RepositoryChamado.Edit(DadosChamados);

            return(new BaseReturn("Chamado", Library.Class.Resources.Message.OPERACAO_REALIZADA_COM_SUCESSO, true));
        }