private void PreencheNome(NomeLista nome, Lista lista, string usuarioId) { nome.ListaId = lista.Id; nome.PrecoEntrada = nome.Masculino ? lista.PrecoM : lista.PrecoF; nome.valorConsuma = nome.Masculino ? lista.ValorConsumaM : lista.ValorConsumaF; nome.UsuarioId = usuarioId; nome.PresencaConf = false; }
public void ConfirmaPresenca(int nomeId, int listaId, int casaId, string usuarioId) { Lista lista = _uow.ListaRepository.GetLista(listaId, casaId); if (lista == null) { throw new RegraException("Tentando confirmar presença de nome de lista que não pertence a Casa." + "casaId:" + casaId + " usuarioId:" + usuarioId + " listaId:" + listaId + " nomeId:" + nomeId); } NomeLista nome = _uow.NomeListaRepository.GetNome(listaId, nomeId); if (nome == null) { throw new RegraException("Tentando confirmar presença de nome que não pertence a lista" + "casaId:" + casaId + " usuarioId:" + usuarioId + " listaId:" + listaId + " nomeId:" + nomeId); } nome.PresencaConf = true; _uow.NomeListaRepository.Update(nome); _uow.Save(); }
private bool VerificaMudancaDeGenero(NomeLista nome, NomeLista nomeAux, Lista lista, string usuarioId, List <string> erros, int qtdM, int qtdF, Distribuicao dist) { //verifica se é o mesmo nome mas mudou o gênero if ((nomeAux.Masculino && !nome.Masculino) || (!nomeAux.Masculino && nome.Masculino)) { //deve mudar o nome para o gênero escolhido //se a presença já foi confirmada não pode ser alterado if (nomeAux.PresencaConf) { erros.Add("As informações do Convidado " + nomeAux.Nome + " não foram alteradas pois sua presença já foi confirmada"); return(true); } //deleta nome antigo _uow.NomeListaRepository.Delete(nomeAux); //se o gênero for mudado para Masculino if (lista.ListaM && nome.Masculino) { qtdF--; if (dist.qtdNomesM > qtdM) { //adiciona nome com gênero alterado qtdM++; PreencheNome(nome, lista, usuarioId); _uow.NomeListaRepository.Insert(nome); } else { erros.Add("O nome " + nome.Nome + " não foi adicionado pois excede o número de convidados Masc. distribuidos para seu usuário"); } } else if (lista.ListaF && !nome.Masculino) { qtdM--; if (dist.qtdNomesF > qtdF) { //adiciona nome com gênero alterado qtdF++; PreencheNome(nome, lista, usuarioId); _uow.NomeListaRepository.Insert(nome); } else { erros.Add("O nome " + nome.Nome + " não foi adicionado pois excede o número de convidados Fem. distribuidos para seu usuário"); } } else { erros.Add("O Nome " + nome.Nome + " não foi adicionado pois nessa lista não são permitidos " + "nomes " + (nome.Masculino ? "Masc." : "Fem.")); } return(true); } return(false); }