public Int32 SalvarVendedor(TAgendamentoVO tagendamentovo)
        {
            try
            {
                int IDBairro      = 0;
                int IDCidade      = 0;
                int IDFilial      = 0;
                int IDAtendimento = 0;

                TUsuarioVO vendedor = new TUsuarioVO();
                vendedor = TUsuarioBLL.Obter(tagendamentovo.IDUsuarioVendedor.Value);

                IDBairro      = TBairroBLL.ObterIDBairro(tagendamentovo.Bairro);
                IDCidade      = TCidadeBLL.ObterIDCidade(tagendamentovo.Cidade);
                IDFilial      = TFilialBLL.ObterIDFilial(vendedor.Unidade);
                IDAtendimento = TAtendimentoBLL.ObterAtendimento(IDFilial, IDCidade, IDBairro);

                if (IDAtendimento == 0)
                {
                    IDAtendimento = TAtendimentoBLL.ObterAtendimentoFilial(IDFilial);
                }

                if (tagendamentovo.IDAgendamento > 0)
                {
                    TAgendamentoBLL.Alterar(tagendamentovo);
                }
                else
                {
                    TAgendamentoBLL.Inserir(tagendamentovo);
                }

                return(tagendamentovo.IDAgendamento);
            }
            catch (CABTECException)
            {
                throw new CABTECException("Erro ao Salvar Agendamento.");
            }
            catch (Exception)
            {
                throw new CABTECException("Erro ao Salvar Agendamento.");
            }
        }
        public Int32 SalvarCallCenter(TAgendamentoVO tagendamentovo)
        {
            try
            {
                int IDBairro      = 0;
                int IDCidade      = 0;
                int IDAtendimento = 0;

                tagendamentovo.IDUsuarioVendedor = null;

                IDBairro      = TBairroBLL.ObterIDBairro(tagendamentovo.Bairro);
                IDCidade      = TCidadeBLL.ObterIDCidade(tagendamentovo.Cidade);
                IDAtendimento = TAtendimentoBLL.ObterAtendimentoCallCenter(IDCidade, IDBairro);

                if (IDAtendimento == 0)
                {
                    IDAtendimento = TAtendimentoBLL.ObterAtendimentoFilial(TFilialBLL.ObterIDFilial(WebConfigurationManager.AppSettings["WebMATRIZ"]));
                }

                tagendamentovo.IDAtendimento = IDAtendimento;

                if (tagendamentovo.IDAgendamento > 0)
                {
                    TAgendamentoBLL.Alterar(tagendamentovo);
                }
                else
                {
                    TAgendamentoBLL.Inserir(tagendamentovo);
                }

                return(tagendamentovo.IDAgendamento);
            }
            catch (CABTECException)
            {
                throw new CABTECException("Erro ao Salvar Agendamento.");
            }
            catch (Exception)
            {
                throw new CABTECException("Erro ao Salvar Agendamento.");
            }
        }
        public List <TAgendamentoVO> Listar(TAgendamentoVO filtro)
        {
            try
            {
                if (filtro.IDAgendamento > 0)
                {
                    List <TAgendamentoVO> listaRetorno = new List <TAgendamentoVO>();
                    TAgendamentoVO        retornoVO    = TAgendamentoBLL.Obter(filtro.IDAgendamento);

                    if (retornoVO.IDUsuarioAgendamento > 0)
                    {
                        retornoVO.NomeUsuarioAgendamento = TUsuarioBLL.Obter(retornoVO.IDUsuarioAgendamento).Nome;
                    }

                    if (retornoVO.IDUsuarioVendedor.HasValue)
                    {
                        if (retornoVO.IDUsuarioVendedor.Value > 0)
                        {
                            retornoVO.NomeUsuarioVendedor = TUsuarioBLL.Obter(retornoVO.IDUsuarioVendedor.Value).Nome;
                        }
                    }


                    listaRetorno.Add(retornoVO);
                    return(listaRetorno);
                }
                else
                {
                    List <int> usuarioAtendente = new List <int>();

                    List <int> usuarioVendedor = new List <int>();

                    List <int> usuarioUnidade = new List <int>();

                    if (!string.IsNullOrEmpty(filtro.NomeUsuarioAgendamento))
                    {
                        usuarioAtendente = TUsuarioBLL.ListarUsuarioAgendamento(filtro.NomeUsuarioAgendamento).ToList();
                        if (usuarioAtendente.Count == 0)
                        {
                            usuarioAtendente.Add(0);
                        }
                    }

                    if (!string.IsNullOrEmpty(filtro.NomeUsuarioVendedor))
                    {
                        usuarioVendedor = TUsuarioBLL.ListarUsuarioAgendamento(filtro.NomeUsuarioVendedor).ToList();
                        if (usuarioVendedor.Count == 0)
                        {
                            usuarioVendedor.Add(0);
                        }
                    }

                    if (!string.IsNullOrEmpty(filtro.Unidade))
                    {
                        usuarioUnidade = TAtendimentoBLL.ListarAtendimentoFilial(filtro.Unidade);
                        if (usuarioUnidade.Count == 0)
                        {
                            usuarioUnidade.Add(0);
                        }
                    }

                    return(TAgendamentoBLL.ListarGridConsulta(usuarioUnidade, usuarioAtendente, usuarioVendedor).ToList());
                }
            }
            catch (CABTECException)
            {
                throw new CABTECException("Erro ao Listar Agendamento.");
            }
            catch (Exception ex)
            {
                throw new CABTECException("Erro ao Listar Agendamento." + ex.Message);
            }
        }
        public void ImportarArquivo(string keyNomeDiretorio, string nomeArquivo, ref int numeroIncluido, ref int numeroNaoIncluido)
        {
            try
            {
                string urlRepositorioArquivos = WebConfigurationManager.AppSettings[keyNomeDiretorio];

                string  path       = HttpContext.Current.Server.MapPath(urlRepositorioArquivos + "\\" + nomeArquivo);
                DataSet dadosExcel = new DataSet();

                OleDbConnection connection = new OleDbConnection(WebConfigurationManager.AppSettings["ExcelCONNECT"].Replace("[path]", path).ToString());

                //OleDbConnection connection = new OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0;Data Source='"+path+"';Extended Properties=Excel 8.0;");
                //OleDbConnection connection = new OleDbConnection("provider=Microsoft.ACE.OLEDB.12.0;Data Source='" + path + "';Extended Properties=Excel 12.0;");

                using (OleDbDataAdapter command = new OleDbDataAdapter("select * from [Plan1$]", connection))
                {
                    command.Fill(dadosExcel);
                }

                numeroIncluido    = 0;
                numeroNaoIncluido = 0;

                if (dadosExcel != null)
                {
                    if (dadosExcel.Tables.Count > 0)
                    {
                        if (dadosExcel.Tables[0].Rows.Count > 0)
                        {
                            foreach (DataRow item in dadosExcel.Tables[0].Rows)
                            {
                                TAtendimentoVO dadosVO = new TAtendimentoVO();

                                dadosVO.IDFilial = TFilialBLL.ObterIDFilial(item["Filial"].ToString());
                                if (dadosVO.IDFilial == 0)
                                {
                                    if (!string.IsNullOrEmpty(item["Filial"].ToString()))
                                    {
                                        TFilialVO filialVO = new TFilialVO();
                                        filialVO.NomeFilial = item["Filial"].ToString();
                                        dadosVO.IDFilial    = TFilialBLL.Inserir(filialVO);
                                    }
                                    else
                                    {
                                        dadosVO.IDFilial = 0;
                                    }
                                }

                                dadosVO.IDCidade = TCidadeBLL.ObterIDCidade(item["Cidade"].ToString());
                                dadosVO.IDBairro = TBairroBLL.ObterIDBairro(item["Bairro"].ToString());

                                if (dadosVO.IDFilial != 0 && dadosVO.IDCidade != 0 && dadosVO.IDBairro != 0)
                                {
                                    numeroIncluido += 1;
                                    if (TAtendimentoBLL.ObterAtendimento(dadosVO.IDFilial, dadosVO.IDCidade, dadosVO.IDBairro) == 0)
                                    {
                                        TAtendimentoBLL.Inserir(dadosVO);
                                    }
                                }
                                else
                                {
                                    numeroNaoIncluido += 1;
                                }
                            }
                        }
                    }
                }
            }
            catch (CABTECException)
            {
                //throw new CABTECException(ex.Message);
                throw new CABTECException("Erro ao Importar Arquivo Filial/Atendimento.");
            }
            catch (Exception)
            {
                throw new CABTECException("Erro ao Importar Arquivo Filial/Atendimento.");
            }
        }