/// <summary> /// Carrega o movimento selecionado pelo usuário /// </summary> /// <param name="eguid">Código do movimento</param> private void CarregarMovimento(EGUID eguid) { IList<IMovimento> movimentos = new List<IMovimento>(); if (!string.IsNullOrEmpty(eguid)) { if (rbtDAV.Checked) { movimentos = new DAV().Find<IDAV>(new Where { { "fat_LanMovDav.EGUID", eguid} }).ToList<IMovimento>(); } else if (rbtPreVenda.Checked) { movimentos = new PreVenda().Find<IPreVenda>(new Where { { "fat_LanMovPv.EGUID", eguid } }).ToList<IMovimento>(); } else { movimentos = new Data.Faturamento.Lancamento.Movimento.DAV.OS.DAV().Find<Model.Faturamento.Lancamento.Movimento.DAV.OS.IDAV>(new Where { { "fat_LanMovDavOs.EGUID", eguid } }).ToList<IMovimento>(); } /* * Se não encontrou movimento na base do OpenPOS, vamos procurar na base da retaguarda */ if (movimentos.Count == 0) { Movimento = GetFromBackend().FirstOrDefault(); movimentos.Add(Movimento); } CarregarMovimento(movimentos.FirstOrDefault()); } }
/// <summary> /// Pesquisar todos os movimentos utilizando a SearchWindow /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnPesquisarMovimento_Click(object sender, EventArgs e) { IParentModel tipoMovimento = null; // Aqui verifica o tipo de movimento que o usuário quer pesquisar if (rbtDAV.Checked) tipoMovimento = new DAV(); else if (rbtDAVOS.Checked) tipoMovimento = new Data.Faturamento.Lancamento.Movimento.DAV.OS.DAV(); else tipoMovimento = new PreVenda(); //Filtro para trazer somente os movimentos que estão com o status: Aberto Where where = new Where(); where.Add("fat_lan.status = @status", new Parameter { ParameterName = "@status", Value = (int)Enuns.Faturamento.Lancamento.Status.Aberto }); // Fazer a Pesquisa e pegar o GUID movimento selecionado SearchWindowResult result = SearchWindow.Show(tipoMovimento, where); if (!result.GUID.IsNullOrEmpty()) CarregarMovimento(result.GUID); }