/// <summary>
        /// 根据试题ID,问卷选项ID,取回答内容
        /// </summary>
        /// <returns></returns>
        public string AnswerContent(string SQID, string SOID)
        {
            string answercontent = "";

            if (!string.IsNullOrEmpty(RequestPTID) && !string.IsNullOrEmpty(RequestSIID))
            {
                QuerySurveyAnswer query = new QuerySurveyAnswer();
                query.SQID = Convert.ToInt32(SQID);
                query.SOID = Convert.ToInt32(SOID);


                query.PTID = RequestPTID;
                query.SIID = Convert.ToInt32(RequestSIID);

                int       allcount = 0;
                DataTable dt       = BLL.SurveyAnswer.Instance.GetSurveyAnswer(query, "", 1, 100000, out allcount);
                if (dt != null && dt.Rows.Count > 0)
                {
                    answercontent = dt.Rows[0]["answercontent"].ToString();
                }
            }
            return(answercontent);
        }
Пример #2
0
        /// <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 GetSurveyAnswer(QuerySurveyAnswer query, string order, int currentPage, int pageSize, out int totalCount)
        {
            string where = string.Empty;

            if (query.AnswerContent != Constant.STRING_INVALID_VALUE)
            {
                where += " AND AnswerContent like '%" + StringHelper.SqlFilter(query.AnswerContent) + "'%";
            }

            if (query.RecID != Constant.INT_INVALID_VALUE)
            {
                where += " AND RecID = " + query.RecID;
            }
            if (query.SPIID != Constant.INT_INVALID_VALUE)
            {
                where += " AND SPIID = " + query.SPIID;
            }
            if (query.SIID != Constant.INT_INVALID_VALUE)
            {
                where += " AND SIID = " + query.SIID;
            }
            if (query.SQID != Constant.INT_INVALID_VALUE)
            {
                where += " AND SQID = " + query.SQID;
            }
            if (query.CreateUserID != Constant.INT_INVALID_VALUE)
            {
                where += " AND CreateUserID = " + query.CreateUserID;
            }
            if (query.SMRTID != Constant.INT_INVALID_VALUE)
            {
                where += " AND SMRTID = " + query.SMRTID;
            }
            if (query.SMCTID != Constant.INT_INVALID_VALUE)
            {
                where += " AND SMCTID = " + query.SMCTID;
            }
            if (query.SOID != Constant.INT_INVALID_VALUE)
            {
                where += " AND SOID = " + query.SOID;
            }
            if (query.PTID != Constant.STRING_INVALID_VALUE)
            {
                where += " and PTID='" + StringHelper.SqlFilter(query.PTID) + "'";
            }
            if (query.CustID != Constant.STRING_INVALID_VALUE)
            {
                where += " and ReturnVisitCRMCustID='" + StringHelper.SqlFilter(query.CustID) + "'";
            }

            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_SURVEYANSWER_SELECT, parameters);
            totalCount = (int)(parameters[4].Value);
            return(ds.Tables[0]);
        }
Пример #3
0
 public DataTable GetSurveyAnswerByTextDetail(QuerySurveyAnswer query, string order, int currentPage, int pageSize, out int totalCount)
 {
     return(Dal.SurveyAnswer.Instance.GetSurveyAnswerByTextDetail(query, order, currentPage, pageSize, out totalCount));
 }
        /// <summary>
        /// 根据问卷核实任务id,问卷id,问卷试题id,矩阵行,列标示,取所填答案
        /// </summary>
        /// <param name="PTID"></param>
        /// <param name="SIID"></param>
        /// <param name="SQID"></param>
        /// <param name="UserID"></param>
        /// <returns></returns>
        public DataTable Getanswer(string PTID, string SIID, string SQID, string SMRTID, string SMCTID, out int askCategory)
        {
            //问题类型
            //askCategory = GetAskCategory(Convert.ToInt32(SQID));
            //DataTable dtanwers = null;
            //QuerySurveyAnswer query = new QuerySurveyAnswer();
            //query.PTID = PTID;
            //query.SIID = Convert.ToInt32(SIID);
            //query.SQID = Convert.ToInt32(SQID);
            ////如果是矩阵类型
            //if (askCategory == (Int32)Entities.AskCategory.MatrixRadioT || askCategory == (Int32)Entities.AskCategory.MatrixDropDownT)
            //{
            //    if (SMRTID != "" && SMRTID != "-2")
            //    {
            //        query.SMRTID = Convert.ToInt32(SMRTID);
            //    }
            //    if (SMCTID != "" && SMCTID != "-2")
            //    {
            //        query.SMCTID = Convert.ToInt32(SMCTID);
            //    }
            //}

            //int AllCount = 0;
            //dtanwers = BLL.SurveyAnswer.Instance.GetSurveyAnswer(query, "", 1, 100000, out AllCount);
            //return dtanwers;
            //问题类型
            QuerySurveyAnswer query = new QuerySurveyAnswer();

            query.PTID  = PTID;
            query.SIID  = Convert.ToInt32(SIID);
            query.SQID  = Convert.ToInt32(SQID);
            askCategory = GetAskCategory(Convert.ToInt32(SQID));
            DataTable dt = null;

            if (dtanwers != null && dtanwers.Rows.Count > 0)
            {
                dt = new DataTable();
                dt.Columns.Add("RecID", typeof(int));
                dt.Columns.Add("SPIID", typeof(int));
                dt.Columns.Add("SIID", typeof(int));
                dt.Columns.Add("SQID", typeof(int));
                dt.Columns.Add("SMRTID", typeof(int));
                dt.Columns.Add("SMCTID", typeof(int));
                dt.Columns.Add("SOID", typeof(int));
                dt.Columns.Add("AnswerContent", typeof(string));
                dt.Columns.Add("CreateTime", typeof(DateTime));
                dt.Columns.Add("CreateUserID", typeof(int));
                dt.Columns.Add("PTID", typeof(string));
                for (int i = 0; i < dtanwers.Rows.Count; i++)
                {
                    DataRow row = dt.NewRow();
                    if (askCategory == (Int32)Entities.AskCategory.MatrixRadioT || askCategory == (Int32)Entities.AskCategory.MatrixDropDownT)
                    {
                        if (dtanwers.Rows[i]["SQID"].ToString() == SQID)
                        {
                            if (SMRTID != "" && SMRTID != "-2")
                            {
                                if (SMCTID != "" && SMCTID != "-2")
                                {
                                    if (dtanwers.Rows[i]["SMRTID"].ToString() == SMRTID && dtanwers.Rows[i]["SMCTID"].ToString() == SMCTID)
                                    {
                                        row["RecID"]         = dtanwers.Rows[i]["RecID"];
                                        row["SPIID"]         = dtanwers.Rows[i]["SPIID"];
                                        row["SIID"]          = dtanwers.Rows[i]["SIID"];
                                        row["SQID"]          = dtanwers.Rows[i]["SQID"];
                                        row["SMRTID"]        = dtanwers.Rows[i]["SMRTID"];
                                        row["SMCTID"]        = dtanwers.Rows[i]["SMCTID"];
                                        row["SOID"]          = dtanwers.Rows[i]["SOID"];
                                        row["AnswerContent"] = dtanwers.Rows[i]["AnswerContent"];
                                        row["CreateTime"]    = dtanwers.Rows[i]["CreateTime"];
                                        row["CreateUserID"]  = dtanwers.Rows[i]["CreateUserID"];
                                        row["PTID"]          = dtanwers.Rows[i]["PTID"];
                                        dt.Rows.Add(row);
                                    }
                                }
                            }
                        }
                    }
                    else
                    {
                        if (dtanwers.Rows[i]["SQID"].ToString() == SQID)
                        {
                            row["RecID"]         = dtanwers.Rows[i]["RecID"];
                            row["SPIID"]         = dtanwers.Rows[i]["SPIID"];
                            row["SIID"]          = dtanwers.Rows[i]["SIID"];
                            row["SQID"]          = dtanwers.Rows[i]["SQID"];
                            row["SMRTID"]        = dtanwers.Rows[i]["SMRTID"];
                            row["SMCTID"]        = dtanwers.Rows[i]["SMCTID"];
                            row["SOID"]          = dtanwers.Rows[i]["SOID"];
                            row["AnswerContent"] = dtanwers.Rows[i]["AnswerContent"];
                            row["CreateTime"]    = dtanwers.Rows[i]["CreateTime"];
                            row["CreateUserID"]  = dtanwers.Rows[i]["CreateUserID"];
                            row["PTID"]          = dtanwers.Rows[i]["PTID"];
                            dt.Rows.Add(row);
                        }
                    }
                }
            }
            return(dt);
        }
Пример #5
0
        private void SurveyProjectInfoBind()
        {
            int spIid = 0;

            if (int.TryParse(SPIID, out spIid))
            {
                Entities.QuerySurveyProjectInfo query = new QuerySurveyProjectInfo();
                //query.BGIDStr = BLL.UserGroupDataRigth.Instance.GetUserGroupDataRightBgIDStrByUserID(BLL.Util.GetLoginUserID());
                query.LoginUserID = BLL.Util.GetLoginUserID();
                query.SPIID       = spIid;
                int totalCount = 0;
                BLL.SurveyProjectInfo.Instance.GetSurveyProjectInfo(query, "", 1, 1, out totalCount);
                if (totalCount > 0)
                {
                    Entities.SurveyProjectInfo info = BLL.SurveyProjectInfo.Instance.GetSurveyProjectInfo(spIid);
                    if (info != null)
                    {
                        spanProjectName.InnerText = info.Name;
                        spanDescription.InnerText = info.Description;
                        DataTable bgBt = BLL.BusinessGroup.Instance.GetBusinessGroupByBGID((int)info.BGID);
                        if (bgBt != null && bgBt.Rows.Count > 0)
                        {
                            spanBGID.InnerText = bgBt.Rows[0]["Name"].ToString();
                        }
                        Entities.SurveyCategory categoryInfo = BLL.SurveyCategory.Instance.GetSurveyCategory((int)info.SCID);
                        if (categoryInfo != null)
                        {
                            spanBCID.InnerText = categoryInfo.Name;
                        }
                        Entities.SurveyInfo surveyInfo = BLL.SurveyInfo.Instance.GetSurveyInfo((int)info.SIID);
                        spanSIID.InnerText          = surveyInfo.Name;
                        spanBusinessGroup.InnerText = info.BusinessGroup;
                        spanBeginTime.InnerText     = info.SurveyStartTime.ToString();
                        spanEndTime.InnerText       = info.SurveyEndTime.ToString();

                        DataTable dt = BLL.SurveyPerson.Instance.GetSurveyPersonBySPIID(info.SPIID);
                        if (dt != null && dt.Rows.Count > 0)
                        {
                            string personNames = string.Empty;
                            for (int i = 0; i < dt.Rows.Count; i++)
                            {
                                int    userId   = int.Parse(dt.Rows[i]["ExamPersonID"].ToString());
                                string userName = BitAuto.YanFa.SysRightManager.Common.UserInfo.GerTrueName(userId);
                                if (i > 0)
                                {
                                    personNames += ",";
                                }
                                Entities.QuerySurveyAnswer queryAnswer = new QuerySurveyAnswer();
                                queryAnswer.CreateUserID = userId;
                                queryAnswer.SPIID        = spIid;
                                int answerCount = 0;
                                BLL.SurveyAnswer.Instance.GetSurveyAnswer(queryAnswer, "", 1, 1000, out answerCount);
                                if (answerCount > 0)
                                {
                                    personNames += "<a href='/SurveyInfo/PersonalSurveyInfoView.aspx?SPIID=" + spIid + "&UserID=" + userId + "' target='_blank'>" + userName + "</a>";
                                }
                                else
                                {
                                    personNames += userName;
                                }
                            }

                            spanPersons.InnerHtml        = personNames;
                            spanEstimateNumber.InnerText = dt.Rows.Count.ToString();
                        }
                        int userCount = BLL.SurveyAnswer.Instance.GetAnswerUserCountBySPIID(spIid);
                        Entities.QuerySurveyQuestion questionQuery = new QuerySurveyQuestion();
                        questionQuery.AskCategory = 5;
                        questionQuery.SIID        = (int)info.SIID;

                        string    scoreStr           = string.Empty;
                        int       questionTotalCount = 0;
                        DataTable dtQuestion         = BLL.SurveyQuestion.Instance.GetSurveyQuestion(questionQuery, "", 1, 1000, out questionTotalCount);
                        int       row = 0;
                        foreach (DataRow dr in dtQuestion.Rows)
                        {
                            if (row > 0)
                            {
                                scoreStr += ";";
                            }
                            int sqId = int.Parse(dr["SQID"].ToString());
                            Entities.QuerySurveyMatrixTitle queryRow = new QuerySurveyMatrixTitle();
                            queryRow.SQID = sqId;
                            queryRow.Type = 1;
                            int rowCount = 0;
                            BLL.SurveyMatrixTitle.Instance.GetSurveyMatrixTitle(queryRow, "", 1, 1000, out rowCount);

                            int colCount = 0;
                            queryRow.Type = 2;
                            BLL.SurveyMatrixTitle.Instance.GetSurveyMatrixTitle(queryRow, "", 1, 1000, out colCount);

                            int sumScore = BLL.SurveyQuestion.Instance.GetQuestionForMatrixDropdownSumScore(sqId, spIid);
                            if (userCount > 0)
                            {
                                decimal score = (decimal)sumScore / userCount;
                                scoreStr += (int.Parse(dr["OrderNum"].ToString()) + 1) + "(" + score.ToString("0.00") + ")";
                            }
                        }
                        spanScore.InnerText     = scoreStr;
                        spanFinshTime.InnerText = info.SurveyEndTime.ToString();

                        spanTrueNumber.InnerText     = userCount.ToString();
                        spanCreateUserName.InnerText = BitAuto.YanFa.SysRightManager.Common.UserInfo.GerTrueName((int)info.CreateUserID);
                        spanCreateTime.InnerText     = info.CreateTime.ToString();
                        row++;
                    }
                }
                else
                {
                    Response.Write("<script>location.href='about:blank'</script>;");
                }
            }
        }