public void GravarQuestionario(RespostaQuestionarioForm questionarioForm) { RespostaQuestionario questionario = new RespostaQuestionario(); questionario.IdtRespostaQuestionario = questionarioForm.IdtRespostaQuestionario; questionario.NomQuestionario = questionarioForm.NomeRelatorio; questionario.Objeto = JsonConvert.SerializeObject(questionarioForm); _conexao.Insert(questionario); }
public ResponderQuestionario(long id) { InitializeComponent(); _alternativas = new Dictionary <int, RadioButtonGroupView>(); _opcoes = new Dictionary <int, RadioButtonGroupView>(); _IdtRespostaQuestionario = id; AcessoBanco banco = new AcessoBanco(); RespostaQuestionario questionario = banco.PegarQuestionario(id); _form = JsonConvert.DeserializeObject <RespostaQuestionarioForm>(questionario.Objeto); List <Municipio> municipios = banco.ListarMunicipios(); List <AlternativaICQ> alternativas = banco.ListarAlternativas(); List <OpcaoTipoResposta> opcoes = banco.ListarOpcoes(); NomeRelatorio.Text = _form.NomeRelatorio; TextoCabecalho.Text = _form.TextoCabecalho; foreach (var item in municipios) { Municipio.Items.Add(item.NomMunicipio); } foreach (var item in _form.RespostasPerfil) { StackLayoutPrincipal.Children.Add(new Label() { Text = item.DescPergunta }); var rbgAlternativa = new RadioButtonGroupView(); foreach (var alternativa in alternativas.Where(a => a.IdtItemCabecalhoQuestionario == item.IdtItemCabecalhoQuestionario).ToList()) { rbgAlternativa.Children.Add(new RadioButton() { Value = alternativa.IdtAlternativaICQ, Text = alternativa.DescAlternativa, TextFontSize = Device.GetNamedSize(NamedSize.Small, typeof(Label)) }); } StackLayoutPrincipal.Children.Add(rbgAlternativa); _alternativas.Add(item.IdtItemCabecalhoQuestionario, rbgAlternativa); } foreach (var item in _form.Competencias) { StackLayoutPrincipal.Children.Add(new Label() { Text = item.DescCompetencia, FontSize = Device.GetNamedSize(NamedSize.Large, typeof(Label)) }); AdicionarLinha(); foreach (var resposta in item.Respostas) { StackLayoutPrincipal.Children.Add(new Label() { Text = resposta.DescPergunta }); var rbgOpcao = new RadioButtonGroupView(); foreach (var opcao in opcoes.Where(o => o.IdtTipoResposta == resposta.IdtTipoResposta).ToList()) { rbgOpcao.Children.Add(new RadioButton() { Value = opcao.IdtOpcaoTipoResposta, Text = opcao.DescOpcao, TextFontSize = Device.GetNamedSize(NamedSize.Small, typeof(Label)) }); } StackLayoutPrincipal.Children.Add(rbgOpcao); _opcoes.Add(resposta.IdtQuestionarioPergunta, rbgOpcao); } } Button btnConfirmar = new Button() { Text = "Salvar", HorizontalOptions = LayoutOptions.Center, Margin = 20 }; btnConfirmar.Clicked += Salvar; StackLayoutPrincipal.Children.Add(btnConfirmar); }