public List <VendasViva> ListarTodos() { var retornoLista = new List <VendasViva>(); var commandText = VendasVivaSQL.Listar; var linhas = contexto.ExecutaComandoComRetorno(commandText); foreach (var row in linhas) { var retorno = new VendasViva { id = row["id"].ToLong(), dataVenda = row["dataVenda"].ToDateTime(), numeroPDV = row["numeroPDV"], numeroLinha = row["numeroLinha"], nomeVendedor = row["nomeVendedor"], nomePlano = row["nomePlano"], nomePacoteDados = row["nomePacoteDados"], nomeTipo = row["nomeTipo"], nomeTitular = row["nomeTitular"], nomeDependente = row["nomeDependente"], dadosDependente = row["dadosDependente"], numeroOs = row["numeroOs"], numeroICCD = row["numeroICCD"], numeroContrato = row["numeroContrato"], valorVenda = row["valorVenda"].ToDecimal(), idImportacaoPlanilha = row["idImportacaoPlanilha"].ToLong() }; retornoLista.Add(retorno); } return(retornoLista); }
private long Alterar(VendasViva obj) { var commandText = VendasVivaSQL.Alterar; var parametros = new Dictionary <string, object> { { "id", obj.id }, { "dataVenda", obj.dataVenda }, { "numeroPDV", obj.numeroPDV }, { "numeroLinha", obj.numeroLinha }, { "nomeVendedor", obj.nomeVendedor }, { "nomePlano", obj.nomePlano }, { "nomePacoteDados", obj.nomePacoteDados }, { "nomeTipo", obj.nomeTipo }, { "nomeTitular", obj.nomeTitular }, { "nomeDependente", obj.nomeDependente }, { "dadosDependente", obj.dadosDependente }, { "numeroOs", obj.numeroOs }, { "numeroICCD", obj.numeroICCD }, { "numeroContrato", obj.numeroContrato }, { "valorVenda", obj.valorVenda }, { "idImportacaoPlanilha", obj.idImportacaoPlanilha } }; return(contexto.ExecutaComando(commandText, parametros)); }
public List <VendasViva> ListarLinhas(long id) { var retornoLista = new List <VendasViva>(); var commandText = VendasVivaSQL.ListarLinhas; var parametros = new Dictionary <string, object> { { "idImportacaoPlanilha", id } }; var linhas = contexto.ExecutaComandoComRetorno(commandText, parametros); foreach (var row in linhas) { var retorno = new VendasViva { id = row["id"].ToLong(), dataVenda = row["dataVenda"].ToDateTime(), numeroPDV = row["numeroPDV"], numeroLinha = row["numeroLinha"], nomeVendedor = row["nomeVendedor"], nomePlano = row["nomePlano"], nomePacoteDados = row["nomePacoteDados"], nomeTipo = row["nomeTipo"], nomeTitular = row["nomeTitular"], nomeDependente = row["nomeDependente"], dadosDependente = row["dadosDependente"], numeroOs = row["numeroOs"], numeroICCD = row["numeroICCD"], numeroContrato = row["numeroContrato"], valorVenda = row["valorVenda"].ToDecimal(), idImportacaoPlanilha = row["idImportacaoPlanilha"].ToLong() }; #region Status var retornoStatus = new Status { id = row["idStatus"].ToLong(), nomeStatus = row["nomeStatus"], descricao = row["descricao"] }; retorno.status = retornoStatus; #endregion retornoLista.Add(retorno); } return(retornoLista); }
public long Salvar(VendasViva obj) { if (obj.id > 0) { Alterar(obj); } else { obj.id = Inserir(obj); } return(obj.id); }
public VendasViva ListarPorId(long id) { var retorno = new List <VendasViva>(); var commandText = VendasVivaSQL.ListarPorId; var parametros = new Dictionary <string, object> { { "id", id } }; var linhas = contexto.ExecutaComandoComRetorno(commandText, parametros); foreach (var row in linhas) { var tempVendasViva = new VendasViva { id = row["id"].ToLong(), dataVenda = row["dataVenda"].ToDateTime(), numeroPDV = row["numeroPDV"], numeroLinha = row["numeroLinha"], nomeVendedor = row["nomeVendedor"], nomePlano = row["nomePlano"], nomePacoteDados = row["nomePacoteDados"], nomeTipo = row["nomeTipo"], nomeTitular = row["nomeTitular"], nomeDependente = row["nomeDependente"], dadosDependente = row["dadosDependente"], numeroOs = row["numeroOs"], numeroICCD = row["numeroICCD"], numeroContrato = row["numeroContrato"], valorVenda = row["valorVenda"].ToDecimal(), idImportacaoPlanilha = row["idImportacaoPlanilha"].ToLong() }; retorno.Add(tempVendasViva); } return(retorno.FirstOrDefault()); }
public bool Importar(ImportacaoPlanilha importacao) { string sheetName = "importar"; //var connectionString = ""; var pathArquivoPendente = string.Format("{0}{1}", importacao._diretorioPendente, importacao.nomeArquivoProcessado); var pathArquivoProcessado = string.Format("{0}{1}", importacao._diretorioProcessado, importacao.nomeArquivoProcessado); var pathArquivoLog = string.Format("{0}{1}", importacao._diretorioLog, importacao.nomeArquivoErro); try { FileInfo file = new FileInfo(pathArquivoPendente); using (var package = new ExcelPackage(file)) { var currentSheet = package.Workbook.Worksheets; var workSheet = currentSheet.First(p => p.Name.ToLower() == sheetName.ToLower()); //abre a planilha chamada "importar" var totalColuna = workSheet.Dimension.End.Column; var totalLinha = workSheet.Dimension.End.Row; //Importar conteúdo da planilha int totalErros = 0; int totalSucesso = 0; int numeroLinha = 1; //ignora primeira linha cabeçalho for (int rowIterator = 2; rowIterator <= totalLinha; rowIterator++) { //user.FirstName = workSheet.Cells[rowIterator, 1].Value.ToString(); numeroLinha++; int columnIterator = 0; try { //Prossegue apenas se existir numero do terminal if (workSheet.Cells[rowIterator, 3].Value != null) { if (!string.IsNullOrEmpty(workSheet.Cells[rowIterator, 3].Value.ToString())) { VendasViva obj = new VendasViva(); #region Mapeamento das colunas excel columnIterator++; if (workSheet.Cells[rowIterator, columnIterator].Value != null) { obj.dataVenda = workSheet.Cells[rowIterator, columnIterator].Value.ToDateTime(); } columnIterator++; if (workSheet.Cells[rowIterator, columnIterator].Value != null) { obj.numeroPDV = workSheet.Cells[rowIterator, columnIterator].Value.ToString(); } columnIterator++; if (workSheet.Cells[rowIterator, columnIterator].Value != null) { obj.numeroLinha = workSheet.Cells[rowIterator, columnIterator].Value.ToString(); } columnIterator++; if (workSheet.Cells[rowIterator, columnIterator].Value != null) { obj.nomeVendedor = workSheet.Cells[rowIterator, columnIterator].Value.ToString(); } columnIterator++; if (workSheet.Cells[rowIterator, columnIterator].Value != null) { obj.nomePlano = workSheet.Cells[rowIterator, columnIterator].Value.ToString(); } columnIterator++; if (workSheet.Cells[rowIterator, columnIterator].Value != null) { obj.nomePacoteDados = workSheet.Cells[rowIterator, columnIterator].Value.ToString(); } columnIterator++; if (workSheet.Cells[rowIterator, columnIterator].Value != null) { obj.nomeTipo = workSheet.Cells[rowIterator, columnIterator].Value.ToString(); } columnIterator++; if (workSheet.Cells[rowIterator, columnIterator].Value != null) { obj.nomeTitular = workSheet.Cells[rowIterator, columnIterator].Value.ToString(); } columnIterator++; if (workSheet.Cells[rowIterator, columnIterator].Value != null) { obj.nomeDependente = workSheet.Cells[rowIterator, columnIterator].Value.ToString(); } columnIterator++; if (workSheet.Cells[rowIterator, columnIterator].Value != null) { obj.dadosDependente = workSheet.Cells[rowIterator, columnIterator].Value.ToString(); } columnIterator++; if (workSheet.Cells[rowIterator, columnIterator].Value != null) { obj.numeroOs = workSheet.Cells[rowIterator, columnIterator].Value.ToString(); } columnIterator++; if (workSheet.Cells[rowIterator, columnIterator].Value != null) { obj.numeroICCD = workSheet.Cells[rowIterator, columnIterator].Value.ToString(); } columnIterator++; if (workSheet.Cells[rowIterator, columnIterator].Value != null) { obj.numeroContrato = workSheet.Cells[rowIterator, columnIterator].Value.ToString(); } columnIterator++; if (workSheet.Cells[rowIterator, columnIterator].Value != null) { obj.valorVenda = workSheet.Cells[rowIterator, columnIterator].Value.ToDecimal(); } #endregion //Atualizar importacao obj.importacaoPlanilha = importacao; obj.idImportacaoPlanilha = importacao.id; //Inserir no banco this.Salvar(obj); totalSucesso++; } else { totalErros++; var log = string.Format("Linha: {0} - {1}", numeroLinha, "LINHA/TERMINAL não pode ser vazio"); this.GerarArquivoLogErro(pathArquivoLog, log); } } else { totalErros++; var log = string.Format("Linha: {0} - {1}", numeroLinha, "LINHA/TERMINAL não pode ser vazio"); this.GerarArquivoLogErro(pathArquivoLog, log); } } catch (Exception ex) { totalErros++; var log = string.Format("Linha: {0} - {1}", numeroLinha, ex.Message); this.GerarArquivoLogErro(pathArquivoLog, log); } } importacao.dataFimProcessamento = DateTime.Now; importacao.qtdImportacaoSucesso = totalSucesso; importacao.qtdImportacaoIgnorada = totalErros; importacao.idStatus = 1; ImportacaoPlanilhaDAL _dalImportacaoPlanilhaDAL = new ImportacaoPlanilhaDAL(); _dalImportacaoPlanilhaDAL.Salvar(importacao); //remover os arquivos temporarios if ((File.Exists(pathArquivoPendente))) { File.Move(pathArquivoPendente, pathArquivoProcessado); } } return(true); } catch (Exception ex) { var mensagemErro = ex.Message; if (mensagemErro.ToUpper().Contains("SEQUENCE CONTAINS NO MATCHING ELEMENT")) { mensagemErro = "Não foi encontrada nenhuma planilha com nome 'importar', favor verificar no EXCEL"; } var log = string.Format("Arquivo: {0} - Erro: {1}", pathArquivoPendente, mensagemErro); this.GerarArquivoLogErro(pathArquivoLog, log); //Cancelar processamento importacao.dataFimProcessamento = DateTime.Now; importacao.idStatus = 3; ImportacaoPlanilhaDAL _dalImportacaoPlanilhaDAL = new ImportacaoPlanilhaDAL(); _dalImportacaoPlanilhaDAL.Salvar(importacao); //remover os arquivos temporarios if ((File.Exists(pathArquivoPendente))) { File.Move(pathArquivoPendente, pathArquivoProcessado); } return(false); } }