/// <summary> /// Se encarga de guardar las respuestas en el sistema. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void SubmitAnswer(object sender, EventArgs e) { try { PollAnswerManager pollAnswerManager = new PollAnswerManager(); List <PollAnswer> pollAnswers = new List <PollAnswer>(); foreach (RepeaterItem item in pollRepeater.Items) { PollAnswer pollAnswer = new PollAnswer(); pollAnswer.User = SessionHelper.GetUser(); pollAnswer.PollOption.Id = Convert.ToInt32(((RadioButtonList)item.FindControl("radioOptionList")).SelectedValue); pollAnswer.PollQuestion.Id = Convert.ToInt32(((HiddenField)item.FindControl("lblQuestion")).Value); //if (item.ItemType == ListItemType.Item || item.ItemType == ListItemType.AlternatingItem) pollAnswers.Add(pollAnswer); } bool success = pollAnswerManager.Save(pollAnswers); if (!success && pollAnswerManager.HasErrors) { ((front)Master).Alert.Show("Error", pollAnswerManager.ErrorDescription); } else { divPoll.Visible = false; divSuccessMessage.Visible = true; } } catch (Exception exception) { ((front)Master).Alert.Show("Excepción", exception.Message); } }
/// <summary> /// Se encarga de guardar las respuestas en el sistema. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void SubmitAnswer(object sender, EventArgs e) { try { PollAnswerManager pollAnswerManager = new PollAnswerManager(); List <PollAnswer> pollAnswers = new List <PollAnswer>(); foreach (RepeaterItem item in pollRepeater.Items) { PollAnswer pollAnswer = new PollAnswer(); pollAnswer.User = SessionHelper.GetUser(); pollAnswer.PollOption.Id = Convert.ToInt32(((RadioButtonList)item.FindControl("radioOptionList")).SelectedValue); pollAnswer.PollQuestion.Id = Convert.ToInt32(((HiddenField)item.FindControl("lblQuestion")).Value); //if (item.ItemType == ListItemType.Item || item.ItemType == ListItemType.AlternatingItem) pollAnswers.Add(pollAnswer); } bool success = pollAnswerManager.Save(pollAnswers); if (!success && pollAnswerManager.HasErrors) { //TODO - Aplicar control de errores //((front)Master).Alert.Show("Error", pollAnswerManager.ErrorDescription); } else { //Esconde el panel de las preguntas y muestra el resultado en el chart divPoll.Visible = false; divPollStatistics.Visible = true; int pollId = Convert.ToInt32(SessionUtilHelper.GetIdFromSession(Session)); Dictionary <string, ArrayList[]> statistics = pollAnswerManager.GetReportForPollAnswers(pollId); int i = 0; foreach (KeyValuePair <string, ArrayList[]> serie in statistics) { Chart1.Series.Add(new Series(serie.Key)); Chart1.Legends.Add(serie.Key); Array yValues = serie.Value[1].ToArray(typeof(int)); Array xLabels = (string[])serie.Value[0].ToArray(typeof(string)); Chart1.Series[i].Points.DataBindXY(xLabels, yValues); Chart1.Series[i].ChartType = SeriesChartType.Column; ++i; } } } catch (Exception exception) { //Aplicar control de errores // ((front)Master).Alert.Show("Excepción", exception.Message); } }
/// <summary> /// Muestra el reporte según el tipo elegido. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void ShowReport(object sender, EventArgs e) { try { if (dropReportType.SelectedIndex == -1 || lstReports.SelectedIndex == -1) { return; } int type = dropReportType.SelectedIndex; PollAnswerManager pollAnswerManager = new PollAnswerManager(); Dictionary <string, ArrayList[]> dataChart = null; switch (type) { case 1: //satisfacción int id = Convert.ToInt32(lstReports.SelectedItem.Value); dataChart = pollAnswerManager.GetReportForPollAnswers(id); break; case 2: //general int id2 = Convert.ToInt32(lstReports.SelectedItem.Value); dataChart = pollAnswerManager.GetReportForPollAnswers(id2); break; case 3: //ventas QueryFilter salesType = new QueryFilter(); salesType.Key = lstReports.SelectedItem.Text; salesType.Value = lstReports.SelectedItem.Value; QueryFilter monthFilter = new QueryFilter(); monthFilter.Value = dropMonth.SelectedValue; QueryFilter yearFilter = new QueryFilter(); yearFilter.Value = dropYear.SelectedValue; Dictionary <String, QueryFilter> filters = new Dictionary <String, QueryFilter>(); filters.Add("Type", salesType); filters.Add("Month", monthFilter); filters.Add("Year", yearFilter); InvoiceManager invoiceManager = new InvoiceManager(); dataChart = invoiceManager.GetReportForSales(filters); break; case 4: //ventas QueryFilter supportType = new QueryFilter(); supportType.Key = lstReports.SelectedItem.Text; supportType.Value = lstReports.SelectedItem.Value; QueryFilter smonthFilter = new QueryFilter(); smonthFilter.Value = dropMonth.SelectedValue; QueryFilter syearFilter = new QueryFilter(); syearFilter.Value = dropYear.SelectedValue; Dictionary <String, QueryFilter> sfilters = new Dictionary <String, QueryFilter>(); sfilters.Add("Type", supportType); sfilters.Add("Month", smonthFilter); sfilters.Add("Year", syearFilter); ItemCommentSupportManager commentManager = new ItemCommentSupportManager(); dataChart = commentManager.GetReportForSupport(sfilters); break; default: return; } ShowChart(dataChart); } catch (Exception exception) { ((front)Master).Alert.Show("Exception", exception.Message); } }