public void IncluirMetaIndividual(int ID_usuario, string ID_ChaveExterna, string Descricao, string Nome, DateTime DataValidade, string[] ListaSolucaoEducacional = null, string FornecedorAlteracao = null) { try { this.RegistrarLogExecucaoFornecedor((new BMFornecedor()).ObterPorFiltro(new Fornecedor() { Login = FornecedorAlteracao }).FirstOrDefault(), "IncluirMetaIndividual"); using (BMMetaIndividual metaIndividualBM = new BMMetaIndividual()) { MetaIndividual mi = new MetaIndividual() { DataValidade = DataValidade, Nome = Nome, IDChaveExterna = ID_ChaveExterna, Auditoria = new Auditoria(FornecedorAlteracao), Usuario = new BMUsuario().ObterPorId(ID_usuario), ListaItensMetaIndividual = new List <ItemMetaIndividual>() }; Fornecedor f = new BMFornecedor().ObterPorFiltro(new Fornecedor() { Login = FornecedorAlteracao }).FirstOrDefault(); foreach (string str in ListaSolucaoEducacional) { SolucaoEducacional se = new BMSolucaoEducacional().ObterPorFiltro(new SolucaoEducacional() { Nome = str, Fornecedor = f }).FirstOrDefault(); if (se != null) { ItemMetaIndividual it = new ItemMetaIndividual() { Auditoria = new Auditoria(FornecedorAlteracao), MetaIndividual = mi, SolucaoEducacional = se, }; mi.ListaItensMetaIndividual.Add(it); } } metaIndividualBM.Salvar(mi); } } catch (Exception ex) { ErroUtil.Instancia.TratarErro(ex); } }
private void ValidarMetaIndividual(int pUsuario, int pSolucaoEducacional, List <int> pListaIdMetaIndividualAssociada, AuthenticationRequest autenticacao) { try { MetaIndividual mi = null; if (pListaIdMetaIndividualAssociada != null && pListaIdMetaIndividualAssociada.Count > 0) { foreach (int IdMetaIndividualAssociada in pListaIdMetaIndividualAssociada) { using (BMMetaIndividual miBM = new BMMetaIndividual()) mi = miBM.ObterPorID(IdMetaIndividualAssociada); if (!mi.ListaItensMetaIndividual.Any(x => x.SolucaoEducacional.ID == pSolucaoEducacional)) { mi.ListaItensMetaIndividual.Add(new ItemMetaIndividual() { Auditoria = new Auditoria(autenticacao.Login), MetaIndividual = new BMMetaIndividual().ObterPorID(mi.ID), SolucaoEducacional = new BMSolucaoEducacional().ObterPorId(pSolucaoEducacional), }); using (BMMetaIndividual miBM = new BMMetaIndividual()) miBM.Salvar(mi); } } SolucaoEducacional se = null; using (BMSolucaoEducacional seBM = new BMSolucaoEducacional()) se = seBM.ObterPorId(pSolucaoEducacional); Usuario user = null; using (BMUsuario userBM = new BMUsuario()) { user = userBM.ObterPorId(pUsuario); } bool listaAlterada = false; foreach (var tagSe in se.ListaTags) { if (!user.ListaTag.Any(x => x.Tag.ID == tagSe.ID)) { user.ListaTag.Add(new UsuarioTag() { Usuario = user, Auditoria = new Auditoria(autenticacao.Login), Tag = new BMTag().ObterPorID(tagSe.Tag.ID), DataValidade = mi.DataValidade, Adicionado = false }); listaAlterada = true; } } if (listaAlterada) { using (BMUsuario userBM = new BMUsuario()) userBM.Salvar(user); } } } catch { //TODO: Verificar se cabe alguma ação } }
public void Salvar(MetaIndividual pMetaIndividual) { bmMetaIndividual.Salvar(pMetaIndividual); }