//METODO PARA BUSCAR DADOS DO BANCO LOTES public Queue <ModelCalculaLotes> LocalizarLotes(int valor) { Queue <ModelCalculaLotes> filaLotes = new Queue <ModelCalculaLotes>(); try { DataTable tb = new DataTable(); SQLiteDataAdapter da = new SQLiteDataAdapter("SELECT Id_lote, Fk_produto, qtd_produto, lote FROM lote WHERE Fk_produto = '" + valor + "'", conexao.StringConexao); da.Fill(tb); conexao.Desconectar(); foreach (DataRow item in tb.Rows) { ModelCalculaLotes obj = new ModelCalculaLotes(); obj.Id_lote = Convert.ToInt32(item["Id_lote"].ToString()); obj.Id_produto = Convert.ToInt32(item["Fk_produto"].ToString()); obj.quantidade = Convert.ToDouble(item["qtd_produto"].ToString()); obj.lote = item["lote"].ToString(); obj.total = 0; filaLotes.Enqueue(obj); } return(filaLotes); } catch (Exception ex) { throw ex; } finally { //Fechar a conexão conexao.Desconectar(); } }
//METODO PARA BUSCAR DADOS DO BANCO REGISTROS public Queue <ModelCalculaLotes> LocalizarRegistro(int valor) { Queue <ModelCalculaLotes> filaRegistros = new Queue <ModelCalculaLotes>(); int i = 0; try { DataTable tb = new DataTable(); SQLiteDataAdapter da = new SQLiteDataAdapter("SELECT Fk_produto, lote, qtd_produto, data_fabricacao, data_vencimento FROM registro WHERE Fk_produto = '" + valor + "' AND tipo_operacao = 0 AND marcacao = 0", conexao.StringConexao); da.Fill(tb); conexao.Desconectar(); foreach (DataRow item in tb.Rows) { i = 0; ModelCalculaLotes obj = new ModelCalculaLotes(); obj.Id_produto = Convert.ToInt32(item["Fk_produto"].ToString()); obj.lote = item["lote"].ToString(); obj.quantidade = Convert.ToDouble(item["qtd_produto"].ToString()); obj.data_fabricacao = item["data_fabricacao"].ToString(); obj.data_vencimento = item["data_vencimento"].ToString(); obj.total = 0; foreach (var item2 in filaRegistros) { if (obj.lote.Equals(item2.lote)) { item2.quantidade += obj.quantidade; i = 1; } } if (i == 0) { filaRegistros.Enqueue(obj); } } return(filaRegistros); } catch (Exception ex) { throw ex; } finally { //Fechar a conexão conexao.Desconectar(); } }