/// <summary> /// 取问卷下所有选项 /// </summary> /// <param name="siid"></param> /// <returns></returns> public DataTable GetOptionTable(int siid) { DataTable dtOption = null; QuerySurveyOption query = new QuerySurveyOption(); query.Status = 0; query.SIID = siid; int allcount = 0; dtOption = GetSurveyOption(query, "OrderNum", 1, 100000, out allcount); return(dtOption); }
/// <summary> /// 是否存在该记录 /// </summary> public bool IsExistsBySOID(int SOID) { QuerySurveyOption query = new QuerySurveyOption(); query.SOID = SOID; DataTable dt = new DataTable(); int count = 0; dt = GetSurveyOption(query, string.Empty, 1, 1, out count); if (count > 0) { return(true); } else { return(false); } }
/// <summary> /// 得到一个对象实体 /// </summary> public Entities.SurveyOption GetSurveyOption(int SOID) { QuerySurveyOption query = new QuerySurveyOption(); query.SOID = SOID; DataTable dt = new DataTable(); int count = 0; dt = GetSurveyOption(query, string.Empty, 1, 1, out count); if (count > 0) { return(LoadSingleSurveyOption(dt.Rows[0])); } else { return(null); } }
/// <summary> /// 按照查询条件查询 /// </summary> /// <param name="query">查询条件</param> /// <param name="order">排序</param> /// <param name="currentPage">页号,-1不分页</param> /// <param name="pageSize">每页记录数</param> /// <param name="totalCount">总行数</param> /// <returns>集合</returns> public DataTable GetSurveyOption(QuerySurveyOption query, string order, int currentPage, int pageSize, out int totalCount) { string where = string.Empty; if (query.SQID != Constant.INT_INVALID_VALUE) { where += " And SQID=" + query.SQID; } if (query.SOID != Constant.INT_INVALID_VALUE) { where += " And SOID=" + query.SOID; } if (query.SIID != Constant.INT_INVALID_VALUE) { where += " And SIID=" + query.SIID; } if (query.Status != Constant.INT_INVALID_VALUE) { where += " And Status=" + query.Status; } DataSet ds; SqlParameter[] parameters = { new SqlParameter("@where", SqlDbType.NVarChar, 40000), new SqlParameter("@order", SqlDbType.NVarChar, 200), new SqlParameter("@pagesize", SqlDbType.Int, 4), new SqlParameter("@indexpage", SqlDbType.Int, 4), new SqlParameter("@totalRecorder", SqlDbType.Int, 4) }; parameters[0].Value = where; parameters[1].Value = order; parameters[2].Value = pageSize; parameters[3].Value = currentPage; parameters[4].Direction = ParameterDirection.Output; ds = SqlHelper.ExecuteDataset(CONNECTIONSTRINGS, CommandType.StoredProcedure, P_SURVEYOPTION_SELECT, parameters); totalCount = (int)(parameters[4].Value); return(ds.Tables[0]); }
/// <summary> /// 查询试题下的所有选项 /// </summary> /// <param name="sqid"></param> /// <returns></returns> public List <Entities.SurveyOption> GetSurveyOptionListBySQID(int sqid) { List <Entities.SurveyOption> list = new List <Entities.SurveyOption>(); Entities.QuerySurveyOption query = new QuerySurveyOption(); int totalCount = 0; query.SQID = sqid; query.Status = 0; DataTable dt = GetSurveyOption(query, "ordernum", 1, 9999, out totalCount); if (totalCount > 0) { foreach (DataRow dr in dt.Rows) { list.Add(LoadSingleSurveyOption(dr)); } } return(list); }
/// <summary> /// 取下拉矩阵html /// </summary> /// <param name="SQID"></param> /// <returns></returns> public string GetHtmlForDropDown(string SQID) { StringBuilder sbDropDown = new StringBuilder(); //判断是否是单选矩阵 if (BLL.SurveyQuestion.Instance.GetSurveyQuestion(Convert.ToInt32(SQID)).AskCategory == (Int32)BitAuto.ISDC.CC2012.Entities.AskCategory.MatrixDropDownT) { DataTable SuryOptionDt = null; QuerySurveyOption query = new QuerySurveyOption(); query.SQID = Convert.ToInt32(SQID); query.Status = 0; int allcount = 0; SuryOptionDt = BLL.SurveyOption.Instance.GetSurveyOption(query, "OrderNum", 1, 100000, out allcount); //行,列 DataTable DataRowTitle = GetMatrixDataTable(Convert.ToInt32(SQID), 1); DataTable DataColumTitle = GetMatrixDataTable(Convert.ToInt32(SQID), 2); //是否有列信息 if (DataColumTitle != null && DataColumTitle.Rows.Count > 0) { Decimal width = 95 / (SuryOptionDt.Rows.Count + 1); sbDropDown.Append("<table width='95%' border='1' class='wjdcView'>"); sbDropDown.Append("<thead>"); sbDropDown.Append("<tr style='background: #F2F2F2;'>"); sbDropDown.Append("<th style='border-bottom: 1px solid #efefef;width:" + width + "%'>"); sbDropDown.Append("</th>"); for (int i = 0; i < DataColumTitle.Rows.Count; i++) { sbDropDown.Append("<td style='width:" + width + "%;text-align:center;'>"); sbDropDown.Append(DataColumTitle.Rows[i]["TitleName"].ToString()); sbDropDown.Append("</td>"); } sbDropDown.Append("</tr>"); sbDropDown.Append("</thead>"); sbDropDown.Append("<tbody>"); for (int i = 0; i < DataRowTitle.Rows.Count; i++) { if (i % 2 > 0) { sbDropDown.Append("<tr style='background: #F2F2F2;'>"); sbDropDown.Append("<th>"); sbDropDown.Append(DataRowTitle.Rows[i]["TitleName"].ToString()); sbDropDown.Append("</th>"); for (int j = 0; j < DataColumTitle.Rows.Count; j++) { sbDropDown.Append("<td style='text-align:center;'>"); sbDropDown.Append("<select disabled='disabled' name='" + DataRowTitle.Rows[i]["SMTID"].ToString() + "_" + DataColumTitle.Rows[j]["SMTID"].ToString() + "'>"); sbDropDown.Append("<option value='-1'>请选择</option>"); for (int m = 0; m < SuryOptionDt.Rows.Count; m++) { //判断选项是否选中 string selectstr = GetChecked(SQID, SuryOptionDt.Rows[m]["SOID"].ToString(), DataRowTitle.Rows[i]["SMTID"].ToString(), DataColumTitle.Rows[j]["SMTID"].ToString()); if (selectstr == "checked") { selectstr = "selected=true"; } sbDropDown.Append("<option value='" + SuryOptionDt.Rows[m]["SOID"].ToString() + "' " + selectstr + ">" + SuryOptionDt.Rows[m]["OptionName"].ToString() + "(" + SuryOptionDt.Rows[m]["Score"].ToString() + "分)</option>"); } sbDropDown.Append("</select>"); sbDropDown.Append("</td>"); } sbDropDown.Append("</tr>"); } else { sbDropDown.Append("<tr style='background: #ffffff;'>"); sbDropDown.Append("<th>"); sbDropDown.Append(DataRowTitle.Rows[i]["TitleName"].ToString()); sbDropDown.Append("</th>"); for (int j = 0; j < DataColumTitle.Rows.Count; j++) { sbDropDown.Append("<td style='text-align:center;'>"); sbDropDown.Append("<select disabled='disabled' name='" + DataRowTitle.Rows[i]["SMTID"].ToString() + "_" + DataColumTitle.Rows[j]["SMTID"].ToString() + "'>"); sbDropDown.Append("<option value='-1'>请选择</option>"); for (int m = 0; m < SuryOptionDt.Rows.Count; m++) { //判断选项是否选中 string selectstr = GetChecked(SQID, SuryOptionDt.Rows[m]["SOID"].ToString(), DataRowTitle.Rows[i]["SMTID"].ToString(), DataColumTitle.Rows[j]["SMTID"].ToString()); if (selectstr == "checked") { selectstr = "selected=true"; } sbDropDown.Append("<option value='" + SuryOptionDt.Rows[m]["SOID"].ToString() + "' " + selectstr + ">" + SuryOptionDt.Rows[m]["OptionName"].ToString() + "(" + SuryOptionDt.Rows[m]["Score"].ToString() + "分)</option>"); } sbDropDown.Append("</select>"); sbDropDown.Append("</td>"); } } } sbDropDown.Append("</tbody>"); sbDropDown.Append("</table>"); TabMatrixDropDown = sbDropDown.ToString(); } } return(sbDropDown.ToString()); }
/// <summary> /// 取单选矩阵html /// </summary> /// <param name="SQID"></param> /// <returns></returns> public string GetTableHtmlForRadio(string SQID) { StringBuilder sbRadio = new StringBuilder(); //判断是否是单选矩阵 if (BLL.SurveyQuestion.Instance.GetSurveyQuestion(Convert.ToInt32(SQID)).AskCategory == (Int32)BitAuto.ISDC.CC2012.Entities.AskCategory.MatrixRadioT) { DataTable SuryOptionDt = null; QuerySurveyOption query = new QuerySurveyOption(); query.SQID = Convert.ToInt32(SQID); query.Status = 0; int allcount = 0; SuryOptionDt = BLL.SurveyOption.Instance.GetSurveyOption(query, "OrderNum", 1, 100000, out allcount); DataTable DataRowTitle = GetMatrixDataTable(Convert.ToInt32(SQID), 1); //是否有列信息 if (SuryOptionDt != null && SuryOptionDt.Rows.Count > 0) { Decimal width = 95 / (SuryOptionDt.Rows.Count + 1); sbRadio.Append("<table width='95%' border='1' class='wjdcView'>"); sbRadio.Append("<thead>"); sbRadio.Append("<tr style='background: #F2F2F2;'>"); sbRadio.Append("<th style='border-bottom: 1px solid #efefef;width:" + width + "%'>"); sbRadio.Append("</th>"); for (int i = 0; i < SuryOptionDt.Rows.Count; i++) { sbRadio.Append("<td style='width:" + width + "%;text-align:center;'>"); sbRadio.Append(SuryOptionDt.Rows[i]["OptionName"].ToString()); sbRadio.Append("</td>"); } sbRadio.Append("</tr>"); sbRadio.Append("</thead>"); sbRadio.Append("<tbody>"); for (int i = 0; i < DataRowTitle.Rows.Count; i++) { #region if (i % 2 > 0) { sbRadio.Append("<tr style='background: #F2F2F2;'>"); sbRadio.Append("<th>"); sbRadio.Append(DataRowTitle.Rows[i]["TitleName"].ToString()); sbRadio.Append("</th>"); for (int j = 0; j < SuryOptionDt.Rows.Count; j++) { sbRadio.Append("<td style='text-align:center;'>"); //是否选中 string selectstr = GetChecked(SQID, SuryOptionDt.Rows[j]["SOID"].ToString(), DataRowTitle.Rows[i]["SMTID"].ToString(), SuryOptionDt.Rows[j]["SOID"].ToString()); sbRadio.Append("<input disabled='disabled' type='radio' name='" + DataRowTitle.Rows[i]["SMTID"].ToString() + "_" + SQID + "' id='" + DataRowTitle.Rows[i]["SMTID"].ToString() + "_" + SuryOptionDt.Rows[j]["SOID"].ToString() + "' " + selectstr + "/>"); sbRadio.Append("</td>"); } sbRadio.Append("</tr>"); } else { sbRadio.Append("<tr style='background: #ffffff;'>"); sbRadio.Append("<th>"); sbRadio.Append(DataRowTitle.Rows[i]["TitleName"].ToString()); sbRadio.Append("</th>"); for (int j = 0; j < SuryOptionDt.Rows.Count; j++) { sbRadio.Append("<td style='text-align:center;'>"); //是否选中 string selectstr = GetChecked(SQID, SuryOptionDt.Rows[j]["SOID"].ToString(), DataRowTitle.Rows[i]["SMTID"].ToString(), SuryOptionDt.Rows[j]["SOID"].ToString()); sbRadio.Append("<input disabled='disabled' type='radio' name='" + DataRowTitle.Rows[i]["SMTID"].ToString() + "_" + SQID + "' id='" + DataRowTitle.Rows[i]["SMTID"].ToString() + "_" + SuryOptionDt.Rows[j]["SOID"].ToString() + "' " + selectstr + "/>"); sbRadio.Append("</td>"); } sbRadio.Append("</tr>"); } #endregion } sbRadio.Append("</tbody>"); sbRadio.Append("</table>"); } } return(sbRadio.ToString()); }
/// <summary> /// 绑定每一行 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void repeaterTableList_ItemDataBound(object sender, RepeaterItemEventArgs e) { if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem) { //取试题类型 Label lblAskCategory = e.Item.FindControl("lblAskCategory") as Label; string AskCategory = lblAskCategory.Text.Trim(); //取单选 System.Web.UI.HtmlControls.HtmlControl ulRadio = (System.Web.UI.HtmlControls.HtmlControl)e.Item.FindControl("ulRadio"); Repeater repeaterRadio = e.Item.FindControl("repeaterRadio") as Repeater; //取多选 System.Web.UI.HtmlControls.HtmlControl ulCheckBox = (System.Web.UI.HtmlControls.HtmlControl)e.Item.FindControl("ulCheckBox"); Repeater repeaterCheckBox = e.Item.FindControl("repeaterCheckBox") as Repeater; //取文本 System.Web.UI.HtmlControls.HtmlControl ulText = (System.Web.UI.HtmlControls.HtmlControl)e.Item.FindControl("ulText"); //单选矩阵 System.Web.UI.HtmlControls.HtmlControl liMatrixRadio = (System.Web.UI.HtmlControls.HtmlControl)e.Item.FindControl("liMatrixRadio"); //下拉矩阵 System.Web.UI.HtmlControls.HtmlControl liMatrixDropDown = (System.Web.UI.HtmlControls.HtmlControl)e.Item.FindControl("liMatrixDropDown"); //取试题ID Label lblSQID = e.Item.FindControl("lblSQID") as Label; string SQID = lblSQID.Text.Trim(); //根据题取选项 DataTable SuryOptionDt = null; QuerySurveyOption query = new QuerySurveyOption(); query.SQID = Convert.ToInt32(SQID); query.Status = 0; int allcount = 0; SuryOptionDt = BLL.SurveyOption.Instance.GetSurveyOption(query, "OrderNum", 1, 100000, out allcount); //判断该行属于哪种题型 if (Convert.ToInt32(AskCategory) == (Int32)BitAuto.ISDC.CC2012.Entities.AskCategory.RadioT) { ulRadio.Visible = true; repeaterRadio.DataSource = SuryOptionDt; repeaterRadio.DataBind(); } else if (Convert.ToInt32(AskCategory) == (Int32)BitAuto.ISDC.CC2012.Entities.AskCategory.CheckBoxT) { ulCheckBox.Visible = true; repeaterCheckBox.DataSource = SuryOptionDt; repeaterCheckBox.DataBind(); } else if (Convert.ToInt32(AskCategory) == (Int32)BitAuto.ISDC.CC2012.Entities.AskCategory.TextT) { ulText.Visible = true; } //如果是单选矩阵 else if (Convert.ToInt32(AskCategory) == (Int32)BitAuto.ISDC.CC2012.Entities.AskCategory.MatrixRadioT) { #region 绑定单选矩阵 liMatrixRadio.Visible = true; #endregion } //如果是下拉选矩阵 else if (Convert.ToInt32(AskCategory) == (Int32)BitAuto.ISDC.CC2012.Entities.AskCategory.MatrixDropDownT) { #region 绑定下拉矩阵 liMatrixDropDown.Visible = true; #endregion } } }
/// <summary> /// 按照查询条件查询 /// </summary> /// <param name="query">查询条件</param> /// <param name="order">排序</param> /// <param name="currentPage">页号,-1不分页</param> /// <param name="pageSize">每页记录数</param> /// <param name="totalCount">总行数</param> /// <returns>集合</returns> public DataTable GetSurveyOption(QuerySurveyOption query, string order, int currentPage, int pageSize, out int totalCount) { return(Dal.SurveyOption.Instance.GetSurveyOption(query, order, currentPage, pageSize, out totalCount)); }