public Resultado Fechar(List<ProcessoCompraItem> ListaProcessoCompraItem) { Resultado resultado = new Resultado(); List<ProcessoCompraItem> ListaOrdenada = ListaProcessoCompraItem.FindAll(delegate(ProcessoCompraItem itm) { return itm.Status < 4; }); if (ListaOrdenada.Count > 0) { Mensagem mensagem = new Mensagem(); mensagem.Campo = "ProcessoCompraFechar"; mensagem.Descricoes.Add("Processo não pode ser Finalizado! Exite Itens que não foram finalizados."); resultado.Mensagens.Add(mensagem); resultado.Sucesso = false; } else { resultado = new PCompraData().Atualizar(ListaProcessoCompraItem[0].CodProcesso); Mensagem mensagem = new Mensagem(); mensagem.Campo = "ProcessoCompraAtualizar"; mensagem.Descricoes.Add("Processo Fechado com Sucesso!"); resultado.Mensagens.Add(mensagem); } return resultado; }
public List<ProcessoCompra> Listar(ref Resultado resultado) { List<ProcessoCompra> listaPCompras = new PCompraData().Listar(); List<ProcessoCompra> ListaAgrupada = new List<ProcessoCompra>(); if (listaPCompras.Count == 0) { Mensagem mensagem = new Mensagem(); mensagem.Campo = "ProcessoCompra"; mensagem.Descricoes.Add("Nenhum Processo de Compra Iniciado!"); resultado.Mensagens.Add(mensagem); resultado.Sucesso = false; } else { List<ProcessoCompra> ListaOrdenada = new List<ProcessoCompra>(); int oCodProcesso = 0; foreach (ProcessoCompra item in listaPCompras) { if (oCodProcesso != item.CodProcessoCompra) { oCodProcesso = item.CodProcessoCompra; ListaOrdenada = listaPCompras.FindAll(delegate(ProcessoCompra itm) { return itm.CodProcessoCompra == item.CodProcessoCompra; }); if (ListaOrdenada.Count > 1) { string CodProcesso = string.Empty; foreach (ProcessoCompra pitm in ListaOrdenada) { CodProcesso += pitm.Pedidos + "; "; } item.Pedidos = CodProcesso; ListaAgrupada.Add(item); } else { item.Pedidos = item.Pedidos.ToString() + ";"; ListaAgrupada.Add(item); } } } resultado.Sucesso = true; } return ListaAgrupada; }