public void LeiautePadraoTest() { LeiautePergunta leiaute = LeiautePergunta.LeiautePadrao(new PerguntaTexto()); Assert.AreEqual(eColunas.T12, leiaute.LeiauteItem.First().Tamanho); Assert.AreEqual(eTamanhoTela.Mobile, leiaute.LeiauteItem.First().Responsivo); }
public void CriarLeiautePerguntasPadrao() { foreach (var item in Perguntas) { item.LeiautePerguntas.Add(LeiautePergunta.LeiautePadrao(item)); } }
public void ExcluirLeiautePergunta(long leiautePerguntaID) { LeiautePergunta leiaute = BuscarLeiautePergunta().Single(c => c.LeiautePerguntaID == leiautePerguntaID); foreach (LeiautePerguntaItem item in leiaute.LeiauteItem.ToList()) { ExcluirLeiautePerguntaItem(item.LeiautePerguntaItemID); } using (IRepository <LeiautePergunta> repo = factory.Get().GetRepository <LeiautePergunta>()) { repo.Delete(leiaute); } }
protected LeiautePergunta CriarLeiautePergunta(LeiautePerguntaDTO leiautePergunta) { LeiautePergunta result = new LeiautePergunta { LeiautePerguntaID = leiautePergunta.LeiautePerguntaID, PerguntaID = leiautePergunta.PerguntaID, LeiauteItem = leiautePergunta.LeiautesPerguntaItem.Select(d => new LeiautePerguntaItem { LeiautePerguntaID = d.LeiautePerguntaID, LeiautePerguntaItemID = d.LeiautePerguntaItemID, Responsivo = d.TamanhoTela, Tamanho = d.Coluna, }).ToList() }; return(result); }
private LeiautePergunta CriarLeiautePergunta(LeiautePerguntaDTO leiautePergunta) { var result = new LeiautePergunta { LeiautePerguntaID = leiautePergunta.LeiautePerguntaID, PerguntaID = leiautePergunta.PerguntaID, LeiauteItem = leiautePergunta.LeiauteItem.Select(d => new LeiautePerguntaItem { LeiautePerguntaID = d.LeiautePerguntaID, LeiautePerguntaItemID = d.LeiautePerguntaItemID, Responsivo = d.Responsivo, Tamanho = d.Tamanho, }).ToList() }; return(result); }
private void GravarLeiautePergunta(LeiautePergunta leiautePergunta, string UsuarioID) { LeiautePergunta result = BuscarLeiautePergunta().SingleOrDefault(d => d.LeiautePerguntaID == leiautePergunta.LeiautePerguntaID); if (result == null) { using (IRepository <LeiautePergunta> repo = factory.Get().GetRepository <LeiautePergunta>()) { result = repo.Insert(leiautePergunta); } } else { result.PerguntaID = leiautePergunta.LeiautePerguntaID; } result.ControleAtualizacao = ControleUsuario.Criar(UsuarioID); foreach (LeiautePerguntaItem item in leiautePergunta.LeiauteItem.ToList()) { GravarLeiautePerguntaItem(item, UsuarioID); } }
public ModeloDeFormulario GravarModeloFormulario(ModeloFormularioDTO modeloDTO, string UsuarioID) { ModeloDeFormulario modelo; using (IRepository <ModeloDeFormulario> repo = factory.Get().GetRepository <ModeloDeFormulario>()) { if (modeloDTO.ModeloFormularioID > 0) { modelo = BuscarModeloDeFormulario().Single(c => c.ModeloFormularioID == modeloDTO.ModeloFormularioID); } else { modelo = repo.Insert(CreateInstance <ModeloDeFormulario>()); } modelo.Descricao = modeloDTO.Descricao; modelo.Html = modeloDTO.Html; modelo.ControleAtualizacao = ControleUsuario.Criar(UsuarioID); modeloDTO.Perguntas.AtribuirUsuarioID(UsuarioID); //Perguntas novas foreach (PerguntaDTO perguntaDTO in modeloDTO.Perguntas.Where(c => c.PerguntaID <= 0 || !modelo.Perguntas.Any(d => d.PerguntaID == c.PerguntaID))) { Pergunta pergunta = GravarPergunta(perguntaDTO, UsuarioID); pergunta.ModeloDeFormulario = modelo; modelo.Perguntas.Add(pergunta); if (perguntaDTO.PerguntaCondicional != null) { Pergunta perguntaOrigem = modelo.Perguntas.Single(c => c.PerguntaID == perguntaDTO.PerguntaCondicional.PerguntaID); PerguntaCondicional pCondicional = GravarPerguntaCondicional(perguntaDTO.PerguntaCondicional, perguntaOrigem, UsuarioID); pergunta.PerguntaCondicional = pCondicional; } foreach (LeiautePerguntaDTO leiautePerguntaDTO in perguntaDTO.LeiautesPergunta.ToList()) { LeiautePergunta leiautePergunta = CriarLeiautePergunta(leiautePerguntaDTO); //grava o leiaute vinculado à pergunta GravarLeiautePergunta(leiautePergunta, UsuarioID); } if (perguntaDTO.LeiautesPergunta.Any() == false) { GravarLeiautePergunta(LeiautePergunta.LeiautePadrao(pergunta), UsuarioID); } } //Perguntas atualizadas foreach (Pergunta pergunta in modelo.Perguntas.ToList()) { pergunta.ModeloDeFormulario = modelo; //tracking changes PerguntaDTO perguntaDTO = modeloDTO.Perguntas.SingleOrDefault(d => d.PerguntaID == pergunta.PerguntaID); if (perguntaDTO.Deleted) { List <Pergunta> perguntasCondicionais = modelo.Perguntas.Where(c => c.PerguntaCondicionalID == perguntaDTO.PerguntaID).ToList(); foreach (Pergunta pCondicional in perguntasCondicionais) { //remove o vínculo, operações e valor de ativação pCondicional.RemoverCondicional(); } foreach (LeiautePergunta leiautePergunta in pergunta.LeiautePerguntas.ToList()) { //remove o leiaute vinculado à pergunta ExcluirLeiautePergunta(leiautePergunta.LeiautePerguntaID); } //Remove a pergunta do modelo (Caso não tenha nenhuma resposta) ExcluirPergunta(perguntaDTO.PerguntaID); } else { //Atualização pergunta.AtribuirPergunta(perguntaDTO); //Pergunta condicinoal removida if (pergunta.PerguntaCondicionalID.HasValue && perguntaDTO.PerguntaCondicionalID.HasValue == false) { pergunta.RemoverCondicional(); ExcluirPerguntaCondicional(pergunta.PerguntaCondicionalID.Value); } else if (perguntaDTO.PerguntaCondicionalID.HasValue) { PerguntaCondicional condicional = GravarPerguntaCondicional(perguntaDTO.PerguntaCondicional, pergunta, UsuarioID); } foreach (LeiautePergunta leiautePergunta in pergunta.LeiautePerguntas.ToList()) { //grava o leiaute vinculado à pergunta GravarLeiautePergunta(leiautePergunta, UsuarioID); } } } } return(modelo); }