Beispiel #1
0
        private void ExcluirOcorrenciasColaborador(ChamadoOcorrencia chamadoOcorrencia)
        {
            string idDelecao = "";
            int    i         = 1;
            var    banco     = _repChamadoOcorrenciaColaboradorEF.ObterPorOcorrencia(chamadoOcorrencia.Id);

            foreach (var itemBanco in banco)
            {
                var dados = chamadoOcorrencia.ChamadoOcorrenciaColaboradores.FirstOrDefault(x => x.Id == itemBanco.Id);
                if (dados == null)
                {
                    if (itemBanco.Id > 0)
                    {
                        if (i == 1)
                        {
                            idDelecao += itemBanco.Id;
                        }
                        else
                        {
                            idDelecao += "," + itemBanco.Id;
                        }
                        i++;
                    }
                }
            }

            if (idDelecao != "")
            {
                _rep.ExcluirOcorrenciaColaboradorIds(idDelecao);
            }
        }
        public void Salvar(ChamadoOcorrencia model, bool commit = true)
        {
            if (model.Data < model.Chamado.DataAbertura)
            {
                throw new Exception("Data de Ocorrência menor que Data de Abertura!");
            }
            if (model.HoraInicio > model.HoraFim)
            {
                throw new Exception("Hora Inicial maior que Hora Final na Ocorrência!");
            }
            if (model.UsuarioId == 0)
            {
                throw new Exception("Informe o Usuário!");
            }
            if (string.IsNullOrWhiteSpace(model.DescricaoTecnica) && string.IsNullOrWhiteSpace(model.DescricaoSolucao))
            {
                throw new Exception("Informe uma descrição!");
            }

            double HoraInicio = Funcoes.Horas.HoraToDecimal(model.HoraInicio.ToString());
            double HoraFim    = Funcoes.Horas.HoraToDecimal(model.HoraFim.ToString());

            model.TotalHoras = HoraFim - HoraInicio;

            _rep.Salvar(model);

            if (commit)
            {
                _rep.Commit();
            }
        }
        public ChamadoOcorrencia Novo(int idUsuario)
        {
            var ocorrencia = new ChamadoOcorrencia();

            ocorrencia.Usuario = _repUsuario.ObterPorId(idUsuario);
            return(ocorrencia);
        }
Beispiel #4
0
        public IEnumerable <ChamadoOcorrencia> ListarProblemaSolucao(ChamadoFiltro filtro, string texto, int idUsuario, EnumChamado tipo)
        {
            var    usuarioADO = new UsuarioADO();
            string permissao  = usuarioADO.UsuarioCliente(idUsuario);

            var sb = new StringBuilder();

            sb.AppendLine(" SELECT ");
            sb.AppendLine("   ChOco_Chamado,");
            sb.AppendLine("   ChOco_Data,");
            sb.AppendLine("   ChOco_HoraInicio,");
            sb.AppendLine("   ChOco_HoraFim,");
            sb.AppendLine("   ChOco_DescricaoSolucao,");
            sb.AppendLine("   ChOco_DescricaoTecnica,");
            sb.AppendLine("   Usu_Nome");
            sb.AppendLine(" FROM Chamado_Ocorrencia");
            sb.AppendLine("   INNER JOIN Chamado ON ChOco_Chamado = Cha_Id");
            sb.AppendLine("   INNER JOIN Cliente ON Cha_Cliente = Cli_Id");
            sb.AppendLine("   INNER JOIN Usuario ON ChOco_Usuario = Usu_Id	");
            sb.AppendLine(" WHERE ((ChOco_DescricaoTecnica LIKE " + texto + ") OR (ChOco_DescricaoSolucao LIKE " + texto + "))");
            sb.AppendLine(permissao);

            if (tipo == EnumChamado.Chamado)
            {
                sb.AppendLine(" AND cha_TipoMovimento = 1");
            }
            else
            {
                sb.AppendLine(" AND cha_TipoMovimento = 2");
            }

            if (filtro.IdCliente != "")
            {
                sb.AppendLine(" AND Cha_Cliente IN " + filtro.IdCliente);
            }

            sb.AppendLine(" ORDER BY ChOco_Data");

            var lista = new List <ChamadoOcorrencia>();

            using (var db = new BancoADO())
            {
                db.RetornoReader(sb.ToString());

                while (db.Read())
                {
                    var model = new ChamadoOcorrencia();
                    model.ChamadoId        = db.CampoInt32("ChOco_Chamado");
                    model.Data             = db.CampoData("ChOco_Data");
                    model.HoraInicio       = TimeSpan.Parse(db.CampoData("ChOco_HoraInicio").ToShortTimeString());
                    model.HoraFim          = TimeSpan.Parse(db.CampoData("ChOco_HoraFim").ToShortTimeString());
                    model.DescricaoSolucao = db.CampoStr("ChOco_DescricaoSolucao");
                    model.DescricaoTecnica = db.CampoStr("ChOco_DescricaoTecnica");
                    model.Usuario.Nome     = db.CampoStr("Usu_Nome");
                    lista.Add(model);
                }
                db.CloseReader();
            }
            return(lista);
        }
 public void ExcluirUmaOcorrencia(Repositorio <Chamado> repositorio, ChamadoOcorrencia model, bool commit = true)
 {
     _rep.ExcluirUmaOcorrencia(repositorio, model.Id);
     if (commit)
     {
         _rep.Commit();
     }
 }
Beispiel #6
0
 public void Salvar(ChamadoOcorrencia model)
 {
     _rep.AddUpdate(model);
     //if (model.Id > 0)
     //    _rep.Update(model);
     //else
     //    _rep.Add(model);
 }
Beispiel #7
0
        private void AlterarOcorrenciaColaborador(ChamadoOcorrencia chamadoOcorrencia)
        {
            var temp = new ChamadoOcorrenciaColaborador();

            foreach (var item in chamadoOcorrencia.ChamadoOcorrenciaColaboradores)
            {
                double HoraInicio = 0;
                double HoraFim    = 0;

                if (item.HoraInicio != null)
                {
                    HoraInicio = Funcoes.Horas.HoraToDecimal(item.HoraInicio.ToString());
                }

                if (item.HoraFim != null)
                {
                    HoraFim = Funcoes.Horas.HoraToDecimal(item.HoraFim.ToString());
                }

                if (item.HoraInicio != null && item.HoraFim != null)
                {
                    item.TotalHoras = HoraFim - HoraInicio;
                }

                if (item.Id == 0)
                {
                    if (item.UsuarioId == 0)
                    {
                        throw new Exception("Informe o Usuário!");
                    }
                    _repChamadoOcorrenciaColaboradorEF.Salvar(item);
                }
                else
                {
                    temp = chamadoOcorrencia.ChamadoOcorrenciaColaboradores.FirstOrDefault(x => x.Id == item.Id);
                    if (temp != null)
                    {
                        temp = item;
                        if (temp.UsuarioId == 0)
                        {
                            throw new Exception("Informe o Usuário!");
                        }

                        _repChamadoOcorrenciaColaboradorEF.Salvar(temp);
                        //temp.UsuarioId = item.UsuarioId;
                        //temp.HoraFim = item.HoraFim;
                        //temp.HoraInicio = item.HoraInicio;
                        //temp.TotalHoras = item.TotalHoras;
                        //temp.UsuarioId = item.UsuarioId;
                    }
                }
            }
            // _repChamadoOcorrenciaColaboradorEF.Commit();
        }
        public void Excluir(int id, bool commit = true)
        {
            var model = new ChamadoOcorrencia();

            model = ObterPorId(id);
            if (model != null)
            {
                _rep.Excluir(model);
                if (commit)
                {
                    _rep.Commit();
                }
            }
        }
Beispiel #9
0
        public void Salvar(Repositorio <Chamado> repositorio, ChamadoOcorrencia model)
        {
            var item = repositorio.context.ChamadoOcorrencias.First(x => x.Id == model.Id);

            if (item == null)
            {
                repositorio.context.ChamadoOcorrencias.Add(item);
            }
            else
            {
                item = ObterPorId(model.Id);
                item = model;
                Salvar(item);
            }
        }
Beispiel #10
0
 public void Excluir(ChamadoOcorrencia model)
 {
     _rep.Deletar(model);
 }
Beispiel #11
0
        private void AlterarOcorrencia(Chamado model)
        {
            var temp = new ChamadoOcorrencia();

            foreach (var item in model.ChamadoOcorrencias)
            {
                item.HoraFim = TimeSpan.Parse(DateTime.Now.ToShortTimeString());
                if (item.UsuarioId == 0)
                {
                    throw new Exception("Informe o Usuário!");
                }

                //if (item.Data < model.DataAbertura)
                //    throw new Exception("Data de Ocorrência menor que Data de Abertura!");
                //if (item.HoraInicio > item.HoraFim)
                //    throw new Exception("Hora Inicial maior que Hora Final na Ocorrência!");

                if (item.UsuarioId == 0)
                {
                    throw new Exception("Informe o Usuário!");
                }
                //if (string.IsNullOrWhiteSpace(item.DescricaoTecnica) && string.IsNullOrWhiteSpace(item.DescricaoSolucao))
                //    throw new Exception("Informe uma descrição!");

                double HoraInicio = Funcoes.Horas.HoraToDecimal(item.HoraInicio.ToString());
                double HoraFim    = Funcoes.Horas.HoraToDecimal(item.HoraFim.ToString());

                item.TotalHoras = HoraFim - HoraInicio;

                if (item.Id <= 0)
                {
                    _repChamadoOcorrencia.Salvar(item);
                    //chamado.ChamadoOcorrencias.Add(item);
                }
                else
                {
                    //ExcluirOcorrenciasColaborador(item);

                    temp = _repChamadoOcorrencia.ObterPorId(item.Id);
                    //var temp = chamado.ChamadoOcorrencias.FirstOrDefault(x => x.Id == item.Id);
                    //temp = model.ChamadoOcorrencias.FirstOrDefault(x => x.Id == item.Id);
                    if (temp != null)
                    {
                        temp = item;
                        //temp.Anexo = item.Anexo;
                        //temp.Data = item.Data;
                        //temp.DescricaoSolucao = item.DescricaoSolucao;
                        //temp.DescricaoTecnica = item.DescricaoTecnica;
                        //temp.Documento = item.Documento;
                        //temp.HoraFim = item.HoraFim;
                        //temp.HoraInicio = item.HoraInicio;
                        //temp.TotalHoras = item.TotalHoras;
                        //temp.UsuarioColab1 = item.UsuarioColab1;
                        //temp.UsuarioColab2 = item.UsuarioColab2;
                        //temp.UsuarioColab3 = item.UsuarioColab3;
                        //temp.UsuarioId = item.UsuarioId;
                        //temp.Versao = item.Versao;

                        _repChamadoOcorrencia.Salvar(temp);
                        //_repChamadoOcorrencia.Commit();
                        AlterarOcorrenciaColaborador(temp);
                        ExcluirOcorrenciasColaborador(temp);

                        //foreach (var colab in temp.ChamadoOcorrenciaColaboradores)
                        //{
                        //    _repChamadoOcorrenciaColaboradorEF.Salvar(colab);
                        //}

                        //_repChamadoOcorrenciaColaboradorEF.Commit();

                        //AlterarOcorrenciaColaborador(temp);
                    }
                }
            }
            _repChamadoOcorrencia.Commit();
            _repChamadoOcorrenciaColaboradorEF.Commit();

            //if (model.ChamadoOcorrencias.Count() > 0)
            //    _repChamadoOcorrencia.Commit();
        }