public void AdicionarUnidadesDemantes(ref classes.SolucaoEducacional solucao) { var ids = listBoxesUnidadeDemandante .RecuperarIdsSelecionadosNumerico() .ToList(); var lsRmv = solucao.ListUnidadesDemandates .Where(p => !ids.Contains(p.Cargo.ID)) .Select(p => p.Cargo.ID) .ToList(); var cargos = new ManterCargo() .ObterTodos() .Where(x => ids.Contains(x.ID)) .ToList(); foreach (var cargo in cargos) { if (solucao.ListUnidadesDemandates.Any(p => p.Cargo.ID == cargo.ID)) { continue; } solucao.ListUnidadesDemandates.Add(new SolucaoEducacionalUnidadeDemantes { Cargo = cargo, SolucaoEducacional = solucao }); } foreach (var id in lsRmv) { solucao.ListUnidadesDemandates.Remove(solucao.ListUnidadesDemandates.First(p => p.Cargo.ID == id)); } }
private void PreencherComboUnidadeDemandante() { var cargos = new ManterCargo() .ObterTodos() .Where(x => x.Uf.ID == (int)enumUF.NA) .Where(x => x.TipoCargo != EnumTipoCargo.Funcionario && x.TipoCargo != EnumTipoCargo.Diretoria) .Distinct() .ToList(); listBoxesUnidadeDemandante.PreencherItens(cargos, "ID", "Nome"); }