public void TestMasterRecordCRUD() { MasterReportDto dto = new MasterReportDto(MasterReportDto.TransientId, new List<MasterQuestionnaireDto>(), "", DateTime.Now, new List<Pair<PageElementType, string>>(), ""); MasterReportDto persDto = FormRegistry.MasterReportDao.Create(dto); Assert.AreNotEqual(0, persDto.MasterRptId); _createdMasterReports.Add(persDto.MasterRptId); List<MasterReportDto> list = FormRegistry.MasterReportDao.GetMasterReports(null, null, null, null, "ad"); Assert.IsNotNull(list); Assert.Less(0, list.Count); MasterReportDto persDto2 = list.Find(delegate(MasterReportDto cur) { return cur.MasterRptId == persDto.MasterRptId; }); Assert.IsNotNull(persDto2); Assert.IsFalse(dto.Equals(persDto2, false)); MasterReport mr = new MasterReport(persDto); MasterQuestionnaireDto mq = new MasterQuestionnaireDto(_currentQuestionnaire.QuestionnaireId, _currentQuestionnaire.QidTitle, _currentCampaign.CampaignCode, DateTime.Today, DateTime.Today, "*****@*****.**"); mr.AddSchQuestionnaire(mq); mr.Save(); MasterReport mr2 = new MasterReport(persDto2); //Assert.IsTrue(mr2.ValidateMaster()); List<MasterQuestionnaireDto> mqs = MasterReport.GetMasterQuestions(mr2.Dto.MasterRptId); if(mqs.Count > 0) Assert.Less(0 , mqs.Count); else Assert.IsEmpty(mqs); if(mqs.Count > 0) Assert.IsTrue(mqs.Exists(delegate(MasterQuestionnaireDto cur) { return cur.QId == mq.QId; })); else Assert.IsFalse(mqs.Exists(delegate(MasterQuestionnaireDto cur) { return cur.QId == mq.QId; })); FormRegistry.QuestionnaireDao.Delete(mq.QId, TestUser); _createdQuestionnaires.Remove(mq.QId); mqs = MasterReport.GetMasterQuestions(mr2.Dto.MasterRptId); Assert.IsNotNull(mqs); Assert.AreEqual(0, mqs.Count); FormRegistry.MasterReportDao.DeleteMasterReport(persDto.MasterRptId); _createdMasterReports.Remove(persDto.MasterRptId); list = FormRegistry.MasterReportDao.GetMasterReports(null, null, null, null, "ad"); Assert.IsNotNull(list); persDto = list.Find(delegate(MasterReportDto cur) { return cur.MasterRptId == persDto2.MasterRptId; }); Assert.IsNull(persDto); }
public List<MasterQuestionnaireDto> GetMasterQuestionnaires(int mstrid) { Hashtable h_params = new Hashtable(); h_params.Add("master_id", mstrid); List<MasterQuestionnaireDto> lst = new List<MasterQuestionnaireDto>(); DataSet dt = _dbLayer.ExecProcedure("get_masterquestionaire", h_params); if (dt != null) { if (dt.Tables.Count > 0) { if (dt.Tables[0].Rows.Count > 0) { foreach (DataRow dr in dt.Tables[0].Rows) { MasterQuestionnaireDto mq = new MasterQuestionnaireDto(); mq.QId = (int)dr[0]; mq.CName = dr[3].ToString(); mq.QName = dr[6].ToString(); lst.Add(mq); } } } } return lst; }
protected void AddMasterQ_Click(object sender, System.EventArgs e) { bool isValid = true; if (campaign_list.SelectedItem.Value == "-- Please choose... --") { isValid = false; error_campaign.ForeColor = Color.Red; error_campaign.Visible = true; error_campaign.Text = "</br>Please Select a Campaign"; } else { error_campaign.Visible = false; } #region check if a questionnaire is selected if (isValid) { if (questionnaires_list.SelectedItem.Value == "-1") { isValid = isValid & false; error_questionnaire.Visible = true; error_questionnaire.Text = "</br>Please Select a Questionnaire"; } else { error_questionnaire.Visible = false; } } #endregion if (isValid) { if ((mstrId.Value == "" || mstrId.Value == "0")) { if (content == "new") isValid = createMasterReportNew(); } } if (isValid) { int qid; int.TryParse(questionnaires_list.SelectedValue, out qid); if (qid > 0) { MasterQuestionnaireDto mq = new MasterQuestionnaireDto(); mq.QId = qid; mq.QName = questionnaires_list.SelectedItem.Text.Substring(questionnaires_list.SelectedItem.Text.LastIndexOf('(') + 1, ((questionnaires_list.SelectedItem.Text.LastIndexOf('-') - 2) - questionnaires_list.SelectedItem.Text.LastIndexOf('(') + 1)).Trim(); mq.CName = campaign_list.SelectedValue; string errMsg = ""; if (mrd == null) isValid = createMasterReportNew(); if (mrd != null) { errMsg = mrd_local.AddSchQuestionnaire(mq); mstrId.Value = mrd_local.Dto.MasterRptId.ToString(); if (mrd_local.Dto.MElementHeading.Count > 0) { dtl1.DataSource = mrd_local.Dto.MElementHeading; dtl1.DataBind(); } else { lbl2.Text = "No variable column exists for this Questionnaire/s."; } dg1.DataSource = mrd_local.Dto.MasterQ; dg1.DataBind(); pnlQuest.Visible = true; pnlTimeFrame.Visible = true; } else errMsg = "could not add the questionnaire please try from start"; lbl1.ForeColor = Color.Red; lbl1.Text = string.IsNullOrEmpty(errMsg) ? null : "<b>" + errMsg + "</b>"; } else { error_questionnaire.Visible = true; } } }
private void Page_Load_new() { // Put user code to initialize the page here string errMsg = string.Empty; string titl = exp ? "Create a new scheduled export of master report" : "Create a new export of master report"; page_utilities.Set_titles(this, titl); choose_table = new DataTable(); choose_table.Columns.Add("rdate"); choose_table.Columns.Add("country_language"); DataRow add_row = choose_table.NewRow(); add_row["country_language"] = "-- Please choose... --"; add_row["rdate"] = "-- Please choose... --"; choose_table.Rows.InsertAt(add_row, 0); lb_email_error_invalid.Visible = false; lb_email_error_nonhp.Visible = false; lb_email_error_nopermission.Visible = false; lb_email_error_tworecipients.Visible = false; #region if admin then schedule can be set on behalf admin_behalf.Visible = (permss.UserType == UserType.Admin); #endregion //madan added for the quesionaire visible if (exp) campaign_list.Enabled = (schedule_mode.SelectedIndex <= 0) ? false : true; if (!this.IsPostBack) { #region display inactive please choose for questionnaire questionnaires_list.DataSource = choose_table; questionnaires_list.DataValueField = "rdate"; questionnaires_list.DataBind(); #endregion #region display inactive please choose for possible_users if (permss.UserType == UserType.Admin) { dd_possible_users.Items.Add("-- Please choose... --"); dd_possible_users.DataBind(); } #endregion #region load campaigns string countriesQ = null; string countriesP = null; if (permss.UserType == UserType.CountryUserWithDataAccess) { countriesQ = String.Empty; countriesP = String.Empty; if (permss.ListOfPermitedCountriesQuestionnaire != null && permss.ListOfPermitedCountriesQuestionnaire.Count > 0) { for (int i = 0; i < permss.ListOfPermitedCountriesQuestionnaire.Count; i++) { if (i != 0) { countriesQ += ","; } countriesQ += permss.ListOfPermitedCountriesQuestionnaire[i].Country; } } if (permss.ListOfPermitedCountriesProcessor != null && permss.ListOfPermitedCountriesProcessor.Count > 0) { for (int i = 0; i < permss.ListOfPermitedCountriesProcessor.Count; i++) { if (i != 0) { countriesP += ","; } countriesP += permss.ListOfPermitedCountriesProcessor[i].Country; } } } //don't show empty campaigns (campaigns without any questionnaire) List<CampaignDto> listOfCampaigns = new List<CampaignDto>(); listOfCampaigns.Add(new CampaignDto() { CampaignCode = "-- Please choose... --" }); List<CampaignDto> tempCamp = CampaignFacade.SelectCampaignsByCodeCountriesTypeAndIndicatorIfEmpty(null, countriesQ, countriesP, 0); if (tempCamp != null && tempCamp.Count > 0) listOfCampaigns.AddRange(tempCamp); campaign_list.DataSource = listOfCampaigns; campaign_list.DataValueField = "CampaignCode"; campaign_list.DataBind(); campaign_list.Items[0].Selected = true; #endregion } if (dg1 != null) { for (int i = 0; i < dg1.Items.Count; i++) { if (i == 0) { if (mrd == null) { if (createMasterReportNew()) { if (mrd != null) { MasterQuestionnaireDto mq = new MasterQuestionnaireDto(); mq.QId = Convert.ToInt32(dg1.Items[i].Cells[1].Text.ToString()); mq.CName = dg1.Items[i].Cells[2].Text.ToString(); mq.QName = dg1.Items[i].Cells[3].Text.ToString(); errMsg = mrd.AddSchQuestionnaire(mq); } } } } else { if (mrd != null) { MasterQuestionnaireDto mq = new MasterQuestionnaireDto(); mq.QId = Convert.ToInt32(dg1.Items[i].Cells[1].Text.ToString()); mq.CName = dg1.Items[i].Cells[2].Text.ToString(); mq.QName = dg1.Items[i].Cells[3].Text.ToString(); errMsg = mrd.AddSchQuestionnaire(mq); } } } } if (!IsPostBack) mrd_local = mrd; }
protected void AddMasterQ_Click(object sender, System.EventArgs e) { if (end_date.SelectedIndex != 0) { if (Session["Master"] == null) { MasterReport master = new MasterReport(permss.EmailAddress); Session["Master"]=master; Session["IsMasterReport"] = true; } int qid; int.TryParse(questionnaires_list.SelectedValue,out qid); #region convert dates int s_year = Int32.Parse(start_date.SelectedItem.Text.Split('/')[2]); int s_month = Int32.Parse(start_date.SelectedItem.Text.Split('/')[1]); int s_day = Int32.Parse(start_date.SelectedItem.Text.Split('/')[0]); int e_year = Int32.Parse(end_date.SelectedItem.Text.Split('/')[2]); int e_month = Int32.Parse(end_date.SelectedItem.Text.Split('/')[1]); int e_day = Int32.Parse(end_date.SelectedItem.Text.Split('/')[0]); from = new DateTime(s_year, s_month, s_day, 0, 0, 0); //TODO Susann change to also recognize responses received after (milliseconds) 23:59:59,000 //until = new DateTime(e_year, e_month, e_day, 23, 59, 59); until = new DateTime(e_year, e_month, e_day, 0, 0, 0); until = until.AddDays(1d); #endregion MasterQuestionnaireDto Mq = new MasterQuestionnaireDto(qid, ViewState["questionnaire_title"].ToString(), campaign_list.SelectedValue, from, until,count_responses_time.Text.ToString()); string errMsg = ""; MasterReport mrd = (MasterReport)Session["Master"]; errMsg= mrd.AddQuestionnaire(Mq); lbl1.Text = string.IsNullOrEmpty(errMsg)?null:errMsg; //add to datalist System.Collections.Generic.Dictionary<string, string> dct = new System.Collections.Generic.Dictionary<string, string>(); foreach (Pair<PageElementType, string> element in mrd.Dto.MElementHeading) { dct.Add(Migration.Convert(element.First), element.Second); } if (mrd.Dto.MElementHeading.Count > 0) { dtl1.DataSource =dct; dtl1.DataBind(); } else { lbl2.Text = "No Dynamic Questions exists for this Questionnaire."; } dg1.DataSource = mrd.Dto.MasterQ;//TODO: 1.9.6 masterreport this might cause problems dg1.DataBind(); pnlQuest.Visible = true; } }