public async Task <ActionResult> AdicionarTipoImpressao(int id) { List <Printer> impressoras = _uow.BOPrinterRepository.ObterPorEmpresa(IdEmpresa); List <ImpressaoItem> ListImpressaoItem = _uow.ImpressaoItemRepository.Todos(); var tiposImpressao = new TipoImpressaoViewModel { IdImpressaoItem = id, Descricao = ListImpressaoItem.First(f => (int)f.IdImpressaoItem == id).Descricao }; foreach (var impressora in impressoras) { var impressoraViewModel = new ImpressoraViewModel { Selecionado = false, Nome = impressora.Name, IdImpressora = impressora.Id }; tiposImpressao.Impressoras.Add(impressoraViewModel); } var list = new List <TipoImpressaoViewModel> { tiposImpressao }; return(PartialView("_ListaImpressoras", list)); }
public List <TipoImpressaoViewModel> MappingTipoImpressaoViewModel(ICollection <PerfilImpressoraItem> perfilImpressoraItens) { List <TipoImpressaoViewModel> tiposImpressao = new List <TipoImpressaoViewModel>(); var agrupado = perfilImpressoraItens.GroupBy(g => g.IdImpressaoItem).ToDictionary(d => d.Key, d => d.ToList()); foreach (var item in agrupado) { List <ImpressoraViewModel> impressorasView = new List <ImpressoraViewModel>(); foreach (var impressora in item.Value) { var impressoraView = new ImpressoraViewModel() { IdImpressora = impressora.IdImpressora, Nome = impressora.Impressora.Name, Selecionado = true }; impressorasView.Add(impressoraView); } var TipoImpressaoViewModel = new TipoImpressaoViewModel() { Descricao = item.Value.First().ImpressaoItem.Descricao, IdImpressaoItem = item.Key.GetHashCode(), Impressoras = impressorasView }; tiposImpressao.Add(TipoImpressaoViewModel); } return(tiposImpressao); }