public Questionario DuplicarQuestionario(Questionario questionarioOriginal, bool salvar = true) { var questionario = questionarioOriginal.NovoQuestionario(questionarioOriginal); if (questionario == null) { return(null); } var novoQuestionario = new Questionario { TipoQuestionario = questionario.TipoQuestionario, Nome = questionario.Nome + " - V2", PrazoMinutos = questionario.PrazoMinutos, QtdQuestoesProva = questionario.QtdQuestoesProva, TextoEnunciado = questionario.TextoEnunciado }; novoQuestionario.TipoQuestionario = questionario.TipoQuestionario; novoQuestionario.Nome = questionario.Nome; novoQuestionario.Descricao = questionario.Descricao; foreach (var itemQuestionario in questionario.ListaItemQuestionario.ToList()) { var novoItemQuestionario = new ItemQuestionario { Questionario = novoQuestionario, InAvaliaProfessor = itemQuestionario.InAvaliaProfessor, TipoItemQuestionario = itemQuestionario.TipoItemQuestionario, EstiloItemQuestionario = itemQuestionario.EstiloItemQuestionario, Feedback = itemQuestionario.Feedback, NomeGabarito = itemQuestionario.NomeGabarito, Questao = itemQuestionario.Questao, Comentario = itemQuestionario.Comentario, ValorQuestao = itemQuestionario.ValorQuestao }; foreach (var opcao in itemQuestionario.ListaItemQuestionarioOpcoes.ToList()) { var novoItemQuestionarioOpcao = new ItemQuestionarioOpcoes { ItemQuestionario = novoItemQuestionario, Nome = opcao.Nome, RespostaCorreta = opcao.RespostaCorreta, TipoDiagnostico = opcao.TipoDiagnostico }; novoItemQuestionario.ListaItemQuestionarioOpcoes.Add(novoItemQuestionarioOpcao); } novoQuestionario.ListaItemQuestionario.Add(novoItemQuestionario); } foreach (var permissao in questionario.ListaQuestionarioPermissao) { var novaPermissao = new QuestionarioPermissao { Descricao = permissao.Descricao, FormaAquisicao = permissao.FormaAquisicao, NivelOcupacional = permissao.NivelOcupacional, Nome = permissao.Nome, Perfil = permissao.Perfil, Questionario = novoQuestionario, Uf = permissao.Uf }; novoQuestionario.ListaQuestionarioPermissao.Add(novaPermissao); } novoQuestionario.Uf = questionarioOriginal.Uf; if (salvar) { Salvar(novoQuestionario); } return(novoQuestionario); }
public void Salvar(QuestionarioPermissao qp) { repositorio.Salvar(qp); }