public override object[] DoInBackGround(int param) { Movimentos_caixasController controller = new Movimentos_caixasController(); List <Movimentos_caixas> list = controller.GetMovimentosCaixaAtual(); foreach (Movimentos_caixas mov in list) { if (mov.Tipo_mov == (int)Tipo_movimentacao_caixa.SAIDA || mov.Tipo_mov == (int)Tipo_movimentacao_caixa.TROCO || mov.Tipo_mov == (int)Tipo_movimentacao_caixa.FECHAMENTO) { mov.Valor = mov.Valor; } } decimal valorAbertura = controller.GetUltimoMovimentoAbertura().Valor; decimal totalSaidas = controller.GetTotalMovimentacoesCaixaAtual(Tipo_movimentacao_caixa.SAIDA); decimal totalEntradas = controller.GetTotalMovimentacoesCaixaAtual(Tipo_movimentacao_caixa.ENTRADA); decimal totalCaixa = controller.GetTotalCaixa(); Caixas caixaAtual = new CaixasController().Find(controller.Get_ID_CaixaAtualUsuario()); return(new object[] { list, caixaAtual.Nome, UsuariosController.UsuarioAtual.Nome, valorAbertura, totalEntradas, totalSaidas *(-1), totalCaixa }); }
private void btRelatorio_Click(object sender, RoutedEventArgs e) { Movimentos_caixasController mc_controller = new Movimentos_caixasController(); HashSet <Usuarios> usuarios = new HashSet <Usuarios>(); List <Caixas> caixas = new List <Caixas>() { new CaixasController().Find(mc_controller.Get_ID_CaixaAtualUsuario()) }; HashSet <Formas_pagamento> formas_pg = new HashSet <Formas_pagamento>(); mc_controller.DisableAntiTracking(); List <Movimentos_caixas> movimentos = mc_controller.GetMovimentosCaixaAtual(); foreach (Movimentos_caixas movimento in movimentos) { if (usuarios.FirstOrDefault(u => u.Id == movimento.Usuario_id) == null) { usuarios.Add(movimento.Usuarios); } if (formas_pg.FirstOrDefault(f => f.Id == movimento.Forma_pagamento_id) == null) { formas_pg.Add(movimento.Formas_pagamento); } movimento.Usuarios = null; movimento.Formas_pagamento = null; movimento.Caixas = null; movimento.Lojas = null; } IControllerReport rController = ReportController.GetInstance(); rController.AddDataSource("Movimentos_caixas", movimentos); rController.AddDataSource("Usuarios", usuarios); rController.AddDataSource("Caixas", caixas); rController.AddDataSource("Formas_pagamento", formas_pg); rController.AddDataSource("Lojas", new List <Lojas>() { UsuariosController.LojaAtual }); rController.BindParameter("ValorAbertura", mc_controller.GetUltimoMovimentoAbertura().Valor); rController.BindParameter("TotalEntradas", mc_controller.GetTotalMovimentacoesCaixaAtual(Tipo_movimentacao_caixa.ENTRADA)); rController.BindParameter("TotalSaidas", mc_controller.GetTotalMovimentacoesCaixaAtual(Tipo_movimentacao_caixa.SAIDA)); rController.BindParameter("TotalCaixa", mc_controller.GetTotalCaixa()); rController.BindParameter("UsuarioImpressao", UsuariosController.UsuarioAtual.Nome); rController.ShowReport("Relatório de caixa", "CXACONS001"); }