// GET: Vendas public ActionResult Index() { string sql = @"SELECT V.Id, V.Data,V.Cliente, Sum(VI.ValUnit) as Total " + "FROM Vendas V " + "inner join VendasItens VI ON V.Id = VI.Pedido " + "Group by V.Id, V.Data,V.Cliente"; using (SqlConnection conn = new SqlConnection(_connStr)) { using (SqlCommand cmd = new SqlCommand()) { cmd.Connection = conn; cmd.CommandText = sql; conn.Open(); SqlDataReader reader = cmd.ExecuteReader(); while (reader.Read()) { Vendas venda = new Vendas(); venda.ID = (int)reader["Id"]; //venda.CodCli = (int)reader["CodCli"]; venda.Cliente = (string)reader["Cliente"]; venda.Data = (DateTime)reader["Data"]; venda.Total = (decimal)reader["Total"]; lista.Add(venda); } conn.Close(); } } return(View(lista)); }
public void DeletarVendas(Vendas parametros) { var Objeto = _con.Vendas.FirstOrDefault(l => l.Id_Venda == parametros.Id_Venda); _con.Vendas.Remove(Objeto); _con.SaveChanges(); }
public Vendas SalvarVendas(VendasFormViewModel VendaView) { Vendas venda = new Vendas(); venda.ListasDePrecosID = VendaView.ListasDePrecosID; venda.qtdItens = VendaView.qtdItens; venda.valorTotal = VendaView.valorTotal; venda.criadoEm = DateTime.Now; venda.criadoPorUserID = VendaView.criadoPorUserID; venda.PessoasFisicasID = VendaView.PessoasFisicasID; venda.PessoasJuridicasID = VendaView.PessoasJuridicasID; venda = this._servicoVendas.SalvarVendas(venda); foreach (var item in VendaView.ListaVendasProduto) { VendasProdutos vp = new VendasProdutos(); vp.criadoEm = DateTime.Now; vp.criadoPorUserID = VendaView.criadoPorUserID; vp.valorVenda = item.valorVenda; vp.valorSugerido = item.valorSugerido; vp.qtd = item.qtd; vp.VendasID = venda.id; vp.valorDaLinha = 0; vp.ProdutosID = item.ProdutosID; vp.ListasDePrecosID = VendaView.ListasDePrecosID; this._servicoVendasProdutos.Adicionar(vp); } return(venda); }
public void CadastraVenda(Vendedor vendedor, Produto produto, int quantidadeVenda) { var vendasVendedor = Vendas.FirstOrDefault(v => v.Vendedor.Nome == vendedor.Nome); if (vendasVendedor != null) { vendasVendedor.produtosQuantidade.Add(new ProdutoQuantidade() { Produto = produto, Quantidade = quantidadeVenda }); } else { Vendas.Add(new VendaProdutos() { Vendedor = vendedor, produtosQuantidade = new List <ProdutoQuantidade>() { new ProdutoQuantidade() { Produto = produto, Quantidade = quantidadeVenda } } }); } }
/// <summary> /// Busca os itens de venda cadastrados /// </summary> /// <param name="strBuscar">Valor a ser localizado dentre as vendas</param> public void BuscarVenda(string strBuscar) { if (!string.IsNullOrEmpty(strBuscar)) { var resultadoBusca = new ObservableCollection <Venda>(Vendas .Where(a => a.Modelo.Nome.Contains(strBuscar) || a.Cliente.Nome.Contains(strBuscar) || a.Preco.ToString().Contains(strBuscar) || a.Total.ToString().Contains(strBuscar) || a.DataVenda.ToString().Contains(strBuscar))); if (resultadoBusca.Count > 0) { MsgResultadoBusca = string.Format("Foram localizadas {0} vendas!", resultadoBusca.Count); Vendas = resultadoBusca; } else { MsgResultadoBusca = "A busca não retornou nenhum resultado!"; Vendas = vendaContexto.Carregar(); } // Vendas = resultadoBusca; } else { Vendas = vendaContexto.Carregar(); MsgResultadoBusca = string.Empty; } }
public ActionResult DeletarVendas(int id, Vendas model) { Vendas ped = db.Vendas.Find(id); if (ped == null) { return(HttpNotFound()); } try { db.Vendas.Remove(ped); db.SaveChanges(); ViewData["mensagem"] = "Cadastro foi excluido com sucesso."; return(RedirectToAction("Vendas", "Home")); } catch (DbUpdateException) { db.Entry <Vendas>(ped).State = EntityState.Unchanged; ViewData["mensagem"] = "Não foi possível excluir o registro."; return(View(ped)); } catch { return(View(ped)); } }
public Collection <Vendas> TotalVendas() { using (var connection = GetConnection()) { connection.Open(); var colecao = new Collection <Vendas>(); DataTable dt = new DataTable(); try { command.Connection = connection; command.CommandText = "SELECT * FROM View_TotalVendas"; command.CommandType = CommandType.Text; SqlDataAdapter SqlDat = new SqlDataAdapter(command); SqlDat.Fill(dt); connection.Close(); foreach (DataRow row in dt.Rows) { Vendas p = new Vendas { IdPagamento = int.Parse(row["id_pagamento"].ToString()), IdStatusVenda = int.Parse(row["id_status_venda"].ToString()), Total = decimal.Parse(row["TotalDeVendas"].ToString()) }; colecao.Add(p); } } catch (Exception ex) { colecao = null; } return(colecao); } }
public static int Insert(Vendas venda) { int retorno = 0; try { IDbConnection objConexao; // Abre a conexao IDbCommand objCommand; // Cria o comando string sql = "INSERT INTO ven_vendas (ven_data, ven_status, usu_cpf_cnpj, end_codigo, env_codigo, for_codigo) VALUES (?ven_data, ?ven_status, ?usu_cpf_cnpj, ?end_codigo, ?env_codigo, ?for_codigo)"; objConexao = Mapped.Connection(); objCommand = Mapped.Command(sql, objConexao); objCommand.Parameters.Add(Mapped.Parameter("?ven_data", venda.ven_data)); objCommand.Parameters.Add(Mapped.Parameter("?ven_status", venda.ven_status)); objCommand.Parameters.Add(Mapped.Parameter("?usu_cpf_cnpj", venda.usuario.Usu_cpf_cnpj)); objCommand.Parameters.Add(Mapped.Parameter("?end_codigo", venda.endereco.End_codigo)); objCommand.Parameters.Add(Mapped.Parameter("?env_codigo", venda.envio.Env_codigo)); objCommand.Parameters.Add(Mapped.Parameter("?for_codigo", venda.forma.For_codigo)); objCommand.ExecuteNonQuery();// utilizado quando cdigo não tem retorno, como seria o caso do SELECT objConexao.Close(); objCommand.Dispose(); objConexao.Dispose(); } catch (Exception) { retorno = -2; } return(retorno); }//----
public Vendas GravarVendaVeiculo(Vendas vendas) { if (!new VendedorService(_context) .IsValid(vendas.CodigoVendedor)) { throw new Exception("Vendedor inválido!"); } if (vendas.Veiculos.Count == 0) { throw new Exception("Preencha pelo menos um veículo para registrar a venda!"); } if (vendas.IdVenda > 0) { _context.Vendas.Update(vendas); } else { _context.Vendas.Add(vendas); } _context.SaveChanges(); return(vendas); }
public static List <Vendas> retornarTudo() { //abertura do comando sql var comando = conexão.CreateCommand(); //criação de comando sql comando.CommandText = $"SELECT * FROM {nomeTabela}"; // execução do comando var resultado = comando.ExecuteReader(); List <Vendas> vendas = new List <Vendas>(); // adicionando dados da consulta a lista while (resultado.Read()) { Vendas ven = new Vendas(); ven.idvendas = Convert.ToInt32(resultado.GetString(0)); ven.id_cliente = Convert.ToInt32(resultado.GetString(1)); ven.id_produto = Convert.ToInt32(resultado.GetString(2)); ven.quantidade = Convert.ToInt32(resultado.GetString(3)); ven.data_compra = Convert.ToDateTime(resultado.GetString(4)); ven.formaPagamento = resultado.GetString(5); ven.Vencimento = resultado.GetDateTime(6); ven.StatusVenda = resultado.GetString(7); ven.Valor = Convert.ToInt32(resultado.GetString(8)); vendas.Add(ven); } // distruição de objetos não utilizadoss comando.Dispose(); resultado.Dispose(); return(vendas); }
protected void grdVendas_RowDataBound(object sender, GridViewRowEventArgs e) { if (e.Row.RowType != DataControlRowType.DataRow) { return; } Vendas item = e.Row.DataItem as Vendas; if (item == null) { return; } for (int i = 1; i < grdVendas.Columns.Count - 1; i++) { e.Row.Cells[i].Text = ""; for (int j = 0; j < item.MesVenda.Length; j++) { if (item.MesVenda[j] == grdVendas.Columns[i].HeaderText) { e.Row.Cells[i].Text = item.ValorVenda[j].ToString("C"); break; } } if (String.IsNullOrEmpty(e.Row.Cells[i].Text)) { e.Row.Cells[i].Text = 0.ToString("C"); } } }
async Task ExecuteLoadItemsCommand() { if (IsBusy) { return; } IsBusy = true; try { Vendas.Clear(); var vendas = await Api.Vendas.GetAsync(); foreach (var venda in vendas) { Vendas.Add(venda); } } catch (Exception ex) { Debug.WriteLine(ex); } finally { IsBusy = false; } }
public ActionResult Baixar() { // List<Venda> listVenda = (List<Venda>) Session["Vendas"] as dynamic; var tempListVenda = Session["Vendas"]; int vendaId = (int)Session["vendaId"]; Vendas listVenda = (Vendas)tempListVenda; using (var client = new HttpClient()) { client.BaseAddress = new Uri("http://localhost:56652/"); client.DefaultRequestHeaders.Accept.Clear(); client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); string vendaSerialized = JsonConvert.SerializeObject(new { vendaId = vendaId }); var content = new StringContent(vendaSerialized, Encoding.UTF8, "application/json"); //POST HttpResponseMessage response = client.GetAsync("api/Vendas/Baixar?vendaId=" + vendaId).Result; } return(RedirectToAction("Index", "Home")); }
public JsonResult CadastroVenda(VendasViewModel dadosTela) { var entidade = new Vendas(dadosTela.Id_Cliente, dadosTela.DS_ValorCompra, dadosTela.Data_Compra, DateTime.Now, Environment.MachineName); var isvalid = new VendasValidation().Validate(entidade); if (isvalid.IsValid) { var verifica = _pontosService.ListarPontos().FirstOrDefault(l => l.Id_Cliente == dadosTela.Id_Cliente); if (verifica != null) { entidade.Verifica = true; dadosTela.MensagemCallBack = "Compra cadastrada com sucesso!"; } else { entidade.Verifica = false; dadosTela.MensagemCallBack = "Primeira compra do cliente !!"; } dadosTela.isSucess = true; _vendasService.CadastrarVendas(entidade); } else { dadosTela.isSucess = false; dadosTela.MensagemCallBack = "Verifique se os campos foram preenchidos corretamente!"; } return(Json(dadosTela, JsonRequestBehavior.AllowGet)); }
public void Adicionar(string item) { var itemSplit = item.Split(AnaliseVendasRelatorioService.SEPARADOR); var tipo = itemSplit[0]; switch (tipo) { case VENDEDOR: Vendedores.Add( new VendedorBuilder() .ComCpf(itemSplit[1]) .ComNome(itemSplit[2]) .ComSalario(itemSplit[3]) .Construir()); break; case CLIENTE: Clientes.Add( new ClienteBuilder() .ComCnpj(itemSplit[1]) .ComNome(itemSplit[2]) .ComAreaNegocio(itemSplit[3]) .Construir()); break; case VENDAS: Vendas.Add(new VendasBuilder() .ComId(itemSplit[1]) .ComVendaItens(itemSplit[2]) .ComVendedorNome(itemSplit[3]) .Construir()); break; } ; }
public IRelatorio Processar() { var relatorio = new AnaliseVendasRelatorio(); if (Clientes != null) { relatorio.Clientes = Clientes.Count; } if (Vendedores != null) { relatorio.Vendedores = Vendedores.Count; } if (Vendas != null) { var maiorVenda = Vendas.OrderByDescending(x => x.Total).FirstOrDefault(); if (maiorVenda != null) { relatorio.MelhorVenda = maiorVenda.Id; } var piorVendedor = Vendas.GroupBy(x => x.VendedorNome) .Select(x => new { Vendedor = x.Key, Total = x.Sum(_ => _.Total) }) .OrderBy(x => x.Total) .FirstOrDefault(); if (piorVendedor != null) { relatorio.PiorVendedor = piorVendedor.Vendedor; } } return(relatorio); }
public List <Vendas> VendasDiarias() { List <Vendas> listV = new List <Vendas>(); string dataHoje = DateTime.Now.ToString("dd/MM/yyyy"); string idVendedor = HttpContext.Current.Session["idVendedor"].ToString(); try { Connection objCon = new Connection(); MySqlConnection Banco = new MySqlConnection(); string user = "******"; Banco = objCon.AbreConexao(user); MySqlCommand command = Banco.CreateCommand(); command.CommandText = "SELECT idVenda, idCliente, totalVenda, tipoVenda FROM vendas WHERE idVendedor=" + idVendedor + " and dataVenda LIKE '%" + dataHoje + "%'"; MySqlDataReader Reader = command.ExecuteReader(); while (Reader.Read()) { Vendas v = new Vendas(); v.idVenda = Reader.GetInt32(0); v.idCliente = Reader.GetInt32(1); v.totalVenda = Reader.GetDecimal(2); v.tipoVenda = Reader.GetString(3); listV.Add(v); } command.Dispose(); objCon.FechaConexao(); } catch { } return(listV); }
public Vendas GetVendas(string id) { Vendas v = new Vendas(); try { Connection objCon = new Connection(); MySqlConnection Banco = new MySqlConnection(); string user = "******"; Banco = objCon.AbreConexao(user); MySqlCommand command = Banco.CreateCommand(); command.CommandText = "SELECT idVendedor, idCliente, totalVenda, dataVenda FROM vendas WHERE idVenda=" + id + ""; MySqlDataReader Reader = command.ExecuteReader(); if (Reader.Read()) { v.idVendedor = Reader.GetInt32(0); v.idCliente = Reader.GetInt32(1); v.totalVenda = Reader.GetDecimal(2); v.dataVenda = Reader.GetString(3); } command.Dispose(); v.idVenda = Int32.Parse(id); objCon.FechaConexao(); } catch { } return(v); }
public List <Vendas> listaridvendas(string id) { List <Vendas> Retorno = new List <Vendas>(); try { Connection objCon = new Connection(); MySqlConnection Banco = new MySqlConnection(); string user = "******"; Banco = objCon.AbreConexao(user); MySqlCommand command = Banco.CreateCommand(); command.CommandText = "select idVenda from vendas WHERE idCliente = " + id + " "; MySqlDataReader Reader = command.ExecuteReader(); while (Reader.Read()) { Vendas objV = new Vendas(); objV.idVenda = Reader.GetInt32(0); Retorno.Add(objV); } objCon.FechaConexao(); } catch (Exception e) { Vendas objV = new Vendas(); objV.idCliente = 0; objV.dataVenda = e.Message + e.InnerException + e.Source; Retorno.Add(objV); } return(Retorno); }
}//---- public Vendas SelectVenda(string cpf) { Vendas venda = null; System.Data.IDbConnection objConexao; System.Data.IDbCommand objCommand; System.Data.IDataReader objDataReader; objConexao = Mapped.Connection(); objCommand = Mapped.Command("SELECT * FROM ven_vendas WHERE usu_cpf_cnpj = ?cpf", objConexao); objCommand.Parameters.Add(Mapped.Parameter("?cpf", cpf)); objDataReader = objCommand.ExecuteReader(); string cpf_cnpj = ""; while (objDataReader.Read()) { venda = new Vendas(); venda.ven_codigo = Convert.ToInt32(objDataReader["ven_codigo"]); venda.ven_data = Convert.ToDateTime(objDataReader["ven_data"]); cpf_cnpj = Convert.ToString(objDataReader["usu_cpf_cnpj"]); } objDataReader.Close(); objConexao.Close(); objCommand.Dispose(); if (cpf_cnpj != "") { UsuarioDB db = new UsuarioDB(); db.Select(cpf_cnpj); venda.usuario = db.Select(cpf_cnpj); } objConexao.Dispose(); objDataReader.Dispose(); return(venda); }
private void btnAdicionarProduto_Click(object sender, EventArgs e) { Vendas venda = new Vendas(); try { if (validaCampos()) { dataGridViewProdutosCaixa.Rows.Add(textBoxCodProduto.Text, textBoxNomeProd.Text, textBoxlQuantidadeProduto.Text, textBoxlValorUnitario.Text, maskedTextBoxValorTotalVenda.Text); venda.nome = textBoxNomeProd.Text; venda.quantidade = textBoxlQuantidadeProduto.Text; venda.precoUnidade = textBoxlValorUnitario.Text; venda.total = maskedTextBoxValorTotalVenda.Text; nomearDataGridViewCaixa(); daoVenda.SalvarVenda(venda); setLimparCampos(); } } catch (Exception ex) { MessageBox.Show("Não foi possível adicionar a venda deste produto\nVerifique o ERRO: " + ex.ToString()); } }
public List <Vendas> CarregaDadosDataReader() { var lista = new List <Vendas>(); using (var connection = GetConnection()) { connection.Open(); try { command.Connection = connection; command.CommandText = "SELECT p.id_status, SUM(i.quantidade)as quantidade, i.preco, pr.codigo, pr.descricao FROM tb_pedido p INNER JOIN tb_pedido_item i ON p.id_pedido = i.id_pedido INNER JOIN tb_produto pr ON i.id_produto = pr.id_produto WHERE p.id_status = '2' GROUP BY p.id_status, i.preco, pr.codigo, pr.descricao ORDER BY quantidade desc"; command.CommandType = CommandType.Text; dr = command.ExecuteReader(); while (dr.Read()) { Vendas dp = new Vendas { Codigo = dr.GetString(dr.GetOrdinal("codigo")), Descricao = dr.GetString(dr.GetOrdinal("descricao")), Preco = dr.GetDecimal(dr.GetOrdinal("preco")), Quantidade = dr.GetInt32(dr.GetOrdinal("quantidade")), Total = dr.GetDecimal(dr.GetOrdinal("Total")) }; lista.Add(dp); } } catch (Exception ex) { lista = null; } return(lista); } }
public async Task <ActionResult <Vendas> > PostVendas(Vendas vendas) { _context.Vendas.Add(vendas); await _context.SaveChangesAsync(); return(CreatedAtAction("GetVendas", new { id = vendas.Id }, vendas)); }
private void Button1_Click(object sender, EventArgs e) { if (numericUpDown1.Value < 1) { MessageBox.Show("Informe quantidade"); numericUpDown1.Focus(); return; } if (string.IsNullOrEmpty(textBox1.Text)) { MessageBox.Show("Informe valor"); textBox1.Focus(); return; } decimal.TryParse(textBox1.Text, out decimal valor); vendasRow = new Vendas { Carro = (int)comboBox1.SelectedValue, Quantidade = (int)numericUpDown1.Value, Valor = valor, UsuInc = (int)comboBox1.SelectedValue }; this.Close(); }
public async Task <IActionResult> PutVendas(int id, Vendas vendas) { if (id != vendas.Id) { return(BadRequest()); } _context.Entry(vendas).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!VendasExists(id)) { return(NotFound()); } else { throw; } } return(NoContent()); }
public static int GetIdVenda(Vendas venda) { string sql = $"SELECT id FROM VENDAS WHERE data = '{DateTime.Parse(venda.Data.ToShortDateString())}' AND Clientes_id = {venda.ClientesId} AND Vendedores_id = {venda.VendedoresId}"; int id = 0; try { string connection = @"Server=.\SQLEXPRESS;Database=SYSTEM_SALES_DB;Trusted_Connection=True"; SqlConnection con = new SqlConnection(connection); //GetConnection().Open(); con.Open(); SqlCommand cmd = new SqlCommand(sql, con); SqlDataReader reader = cmd.ExecuteReader(); if (reader.HasRows) { reader.Read(); id = Convert.ToInt32(reader["id"]); } con.Close(); return(id); } catch (Exception) { throw; } }
public void InsereVenda(Vendas venda, HashSet <ItensPedidos> itens) { try { int codigovenda = 0; using (var conexao = AbrirConexao()) { conexao.Open(); using (var comando = conexao.CreateCommand()) { comando.CommandText = $"INSERT vendas values ({venda.ValorTotal},{venda.ModoDePagamento}," + $" '{venda.DataVenda}', '{venda.NomeCliente}')"; comando.ExecuteNonQuery(); } conexao.Close(); using (var C = AbrirConexao()) { C.Open(); string query = $"SELECT TOP 1 codigo FROM " + $" vendas WHERE nomeCliente LIKE '{venda.NomeCliente}' and dataVenda = '{venda.DataVenda}'"; DataTable dt = new DataTable(); SqlDataAdapter adaptador = new SqlDataAdapter(query, stringConection); adaptador.Fill(dt); codigovenda = (int)dt.Rows[0][0]; } insereItens(itens, codigovenda, venda.DataVenda.ToString()); } } catch (Exception e) { Console.WriteLine("ERRO: " + e.Message); } }
public IHttpActionResult PutVendas(int id, Vendas vendas) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != vendas.Id) { return(BadRequest()); } db.Entry(vendas).State = EntityState.Modified; try { db.SaveChanges(); } catch (DbUpdateConcurrencyException) { if (!VendasExists(id)) { return(NotFound()); } else { throw; } } return(StatusCode(HttpStatusCode.NoContent)); }
public void Cadastrar(Vendas venda) { using (ManualPecasContext ctx = new ManualPecasContext()) { ctx.Vendas.Add(venda); ctx.SaveChanges(); } }
private List <SqlParametros> PreencheCondicoes(Vendas vendas) { List <SqlParametros> lstParametrosCondicionais = new List <SqlParametros>(); lstParametrosCondicionais.Add(new SqlParametros("VendasId", vendas.VendasId)); return(lstParametrosCondicionais); }
private static List<Vendas> ObterCancelamentos(Redes rede) { string sql = @" SELECT pt.prod_trans_id FROM Transacoes t JOIN Prod_Trans pt ON pt.trans_id = t.trans_id WHERE t.confirmada = 'S' AND t.cancelado = 'S' AND (t.dtcancelado > @ultima_comunicacao)"; SqlParamsList ps = new SqlParamsList(); ps.Add(new Fields("ultima_comunicacao", rede.Ultima_comunicacao)); BD BD = new BD(rede.Tipobanco, rede.Host, rede.Database, rede.User, rede.Pass); try { DataTable table = BD.GetDataTable(sql, ps); List<Vendas> vendas = new List<Vendas>(); foreach (DataRow row in table.Rows) { Vendas venda = new Vendas(); venda.Id_vendaprod_rede = Convert.ToInt32(row["prod_trans_id"]); vendas.Add(venda); } return vendas; } catch (Exception ex) { throw new Exception("Erro ao obter cancelamentos da rede " + rede.Nome + ": " + ex.Message); } }
private static List<Vendas> ObterVendas(Redes rede) { string sql = @" SELECT t.datahora, pt.prod_trans_id, pt.codbarras, pt.qtd_aprov, pt.prc_unit_env, pt.vlr_bru, pt.vlr_desc, pt.vale_utilizado, pt.vlr_liq, ppt.num_prescritor, ppt.uf_prescritor, ppt.tipo_prescritor, ppt.numreceita, ppt.datareceita, COALESCE(prod.nome,prod.descricao) AS prod_nome, prod.apres, prod.generico, prod.lista, prod.cod_guia, lab.nomefant, clas.classe, sclas.subclasse, fam.familia, pat.pativo, cred.cgc, cred.nome AS cred_nome, cred.cidade, cred.estado, cred.cred_id, conv.titular, conv.cpf, conv.conv_id FROM Transacoes t JOIN Prod_trans pt ON pt.trans_id = t.trans_id LEFT JOIN Pres_Prod_Trans ppt ON ppt.prod_trans_id = pt.prod_trans_id AND ppt.trans_id = t.trans_id JOIN Barras bar ON bar.barras = pt.codbarras JOIN Produtos prod ON prod.prod_id = bar.prod_id LEFT JOIN Laboratorios lab ON lab.lab_id = prod.lab_id LEFT JOIN Classe clas ON clas.clas_id = prod.clas_id LEFT JOIN Subclasse sclas ON sclas.sclas_id = prod.sclas_id LEFT JOIN Familias fam ON fam.fam_id = prod.fam_id LEFT JOIN Pativo pat ON pat.pat_id = prod.pat_id JOIN Credenciados cred ON cred.cred_id = t.cred_id JOIN Cartoes cart ON cart.cartao_id = t.cartao_id JOIN Conveniados conv ON conv.conv_id = cart.conv_id WHERE t.confirmada = 'S' AND t.cancelado <> 'S' AND (t.datahora > @ultima_comunicacao OR t.dtconfirmada > @ultima_comunicacao) ORDER BY t.datahora DESC"; SqlParamsList ps = new SqlParamsList(); ps.Add(new Fields("ultima_comunicacao", rede.Ultima_comunicacao)); BD BD = new BD(rede.Tipobanco, rede.Host, rede.Database, rede.User, rede.Pass); try { DataTable table = BD.GetDataTable(sql, ps); List<Vendas> vendas = new List<Vendas>(); foreach (DataRow row in table.Rows) { Vendas venda = new Vendas(); DateTime data = Convert.ToDateTime(row["datahora"]); venda.Tempo.Data = data; venda.Tempo.Ano = data.Year; venda.Tempo.Mes = data.Month; venda.Tempo.Dia = data.Day; venda.Tempo.Semestre = venda.Tempo.Mes < 7 ? "Primeiro" : "Segundo"; if (venda.Tempo.Mes <= 3) venda.Tempo.Trimestre = "Primeiro"; else if (venda.Tempo.Mes <= 6) venda.Tempo.Trimestre = "Segundo"; else if (venda.Tempo.Mes <= 9) venda.Tempo.Trimestre = "Terceiro"; else venda.Tempo.Trimestre = "Quarto"; switch (data.DayOfWeek) { case DayOfWeek.Friday: venda.Tempo.Dia_semana = "Sexta"; break; case DayOfWeek.Monday: venda.Tempo.Dia_semana = "Segunda"; break; case DayOfWeek.Saturday: venda.Tempo.Dia_semana = "Sabado"; break; case DayOfWeek.Sunday: venda.Tempo.Dia_semana = "Domingo"; break; case DayOfWeek.Thursday: venda.Tempo.Dia_semana = "Quinta"; break; case DayOfWeek.Tuesday: venda.Tempo.Dia_semana = "Terça"; break; case DayOfWeek.Wednesday: venda.Tempo.Dia_semana = "Quarta"; break; } venda.Estab.Cnpj = Misc.Utils.SoNumeros(row["cgc"].ToString()); if (!Misc.Utils.ValidarCNPJ(venda.Estab.Cnpj)) venda.Estab.Cnpj = ""; venda.Estab.Razao_social = row["cred_nome"].ToString(); venda.Estab.Cidade = row["cidade"].ToString(); venda.Estab.Uf = row["estado"].ToString(); venda.Estab.Id_estab_rede = Convert.ToInt32(row["cred_id"]); venda.Conv.Nome = row["titular"].ToString(); venda.Conv.Cpf = Misc.Utils.SoNumeros(row["cpf"].ToString()); if (!Misc.Utils.ValidarCPF(venda.Conv.Cpf)) venda.Conv.Cpf = ""; venda.Conv.Id_conv_rede = Convert.ToInt32(row["conv_id"]); venda.Produto.Barras = row["codbarras"].ToString(); venda.Produto.Nome = row["prod_nome"].ToString(); venda.Produto.Apresentacao = row["apres"].ToString(); venda.Produto.Laboratorio = row["nomefant"].ToString(); venda.Produto.Classe = row["classe"].ToString(); venda.Produto.Subclasse = row["subclasse"].ToString(); venda.Produto.Generico = row["generico"].ToString(); venda.Produto.Lista = row["lista"].ToString(); venda.Produto.Familia = row["familia"].ToString(); venda.Produto.Principio_ativo = row["pativo"].ToString(); if (!string.IsNullOrEmpty(row["cod_guia"].ToString())) venda.Produto.Codigo_guia = Convert.ToInt32(row["cod_guia"]); venda.Quantidade = Convert.ToInt32(row["qtd_aprov"]); venda.Valor_unitario = float.Parse(row["prc_unit_env"].ToString()); venda.Valor_bruto = float.Parse(row["vlr_bru"].ToString()); venda.Valor_desconto = float.Parse(row["vlr_desc"].ToString()); venda.Vale_desconto = float.Parse(row["vale_utilizado"].ToString()); venda.Valor_liquido = float.Parse(row["vlr_liq"].ToString()); venda.Num_prescritor = ""; venda.Uf_prescritor = ""; venda.Tipo_prescritor = ""; if (!string.IsNullOrEmpty(row["uf_prescritor"].ToString())) { venda.Num_prescritor = row["num_prescritor"].ToString(); venda.Uf_prescritor = row["uf_prescritor"].ToString(); venda.Tipo_prescritor = row["tipo_prescritor"].ToString(); if (!string.IsNullOrEmpty(row["numreceita"].ToString())) venda.Num_receita = Convert.ToInt32(row["numreceita"]); if (!string.IsNullOrEmpty(row["datareceita"].ToString())) venda.Data_receita = Convert.ToDateTime(row["datareceita"]); } venda.Id_vendaprod_rede = Convert.ToInt32(row["prod_trans_id"]); vendas.Add(venda); } return vendas; } catch(Exception ex) { throw new Exception("Erro ao obter vendas da rede " + rede.Nome + ": " + ex.Message); } }