示例#1
0
        /// <summary>
        /// 根据问卷标识和时间范围获取问题列表
        /// </summary>
        /// <param name="questionnaireId"></param>
        /// <param name="time"></param>
        /// <returns></returns>
        public static async Task <IEnumerable <QuestionModel> > GetQuestionList(long questionnaireId, DateTime time)
        {
            #region SQL

            string sql = @" SELECT [PKID] AS QuestionID
                                  ,[QuestionnaireID]
                                  ,[QuestionTitle]
                                  ,[QuestionType]
                                  ,[IsFork]
                                  ,[DefaultValue]
                                  ,[ScoreStyle]
                                  ,[MinScore]
                                  ,[MaxScore]
                                  ,[IsRequired]
                                  ,[IsValidateMinChar]
                                  ,[MinChar]
                                  ,[IsValidateMaxChar]
                                  ,[MaxChar]
                                  ,[IsValidateStartDate]
                                  ,[StartTime]
                                  ,[IsValidateEndDate]
                                  ,[EndTime]
                                  ,[IsValidatePhone]
                                  ,[Sort]
                                  ,[CreateDateTime]
                                  ,[LastUpdateDateTime]
                                  ,[IsDeleted]
                                  ,[QuestionTextResult]
                                  ,[QuestionConfirm]
                                  ,[DeadLineTime]
                              FROM [Activity].[dbo].[Question] WITH ( NOLOCK )
                              WHERE IsDeleted=0 AND QuestionnaireID=@QuestionnaireID  and StartTime< @time and EndTime > @time 
                              ORDER BY Sort ASC ";
            #endregion
            BaseDbHelper dbHelper = null;
            SqlCommand   sqlCmd   = null;
            try
            {
                SqlParameter[] paras = { new SqlParameter("@QuestionnaireID", questionnaireId), new SqlParameter("@time", time) };
                dbHelper = DbHelper.CreateDbHelper(true);
                sqlCmd   = new SqlCommand(sql);
                sqlCmd.Parameters.AddRange(paras.ToArray());
                return(await dbHelper.ExecuteSelectAsync <QuestionModel>(sqlCmd));
            }
            catch (Exception ex)
            {
                Logger.Error($"DB异常=>GetQuestionList=>{ex.ToString()}");
                return(null);
            }
            finally
            {
                dbHelper?.Dispose();
                sqlCmd?.Dispose();
            }
        }
示例#2
0
        /// <summary>
        ///     通过主键获取问题对象
        /// </summary>
        /// <param name="pkid"></param>
        /// <returns></returns>
        public static async Task <QuestionModel> GetQuestion(long pkid)
        {
            #region SQL
            string sql = @" SELECT     [PKID] as [QuestionID]
                                      ,[QuestionnaireID]
                                      ,[QuestionTitle]
                                      ,[QuestionType]
                                      ,[IsFork]
                                      ,[DefaultValue]
                                      ,[ScoreStyle]
                                      ,[MinScore]
                                      ,[MaxScore]
                                      ,[IsRequired]
                                      ,[IsValidateMinChar]
                                      ,[MinChar]
                                      ,[IsValidateMaxChar]
                                      ,[MaxChar]
                                      ,[IsValidateStartDate]
                                      ,[StartTime]
                                      ,[IsValidateEndDate]
                                      ,[EndTime]
                                      ,[IsValidatePhone]
                                      ,[Sort]
                                      ,[CreateDateTime]
                                      ,[LastUpdateDateTime]
                                      ,[IsDeleted]
                                      ,[QuestionTextResult]
                                      ,[QuestionConfirm]
                                      ,[DeadLineTime]
                            FROM    [Activity].[dbo].[Question] WITH ( NOLOCK )
                            WHERE   IsDeleted = 0
                                    AND pkid = @pkid ";
            #endregion

            BaseDbHelper dbHelper = null;
            SqlCommand   sqlCmd   = null;
            try
            {
                SqlParameter[] paras = { new SqlParameter("@pkid", pkid) };
                dbHelper = DbHelper.CreateDbHelper(true);
                sqlCmd   = new SqlCommand(sql);
                sqlCmd.Parameters.AddRange(paras.ToArray());
                return((await dbHelper.ExecuteSelectAsync <QuestionModel>(sqlCmd)).FirstOrDefault());
            }
            catch (Exception ex)
            {
                Logger.Error($"DB异常=>{nameof(GetQuestion)}=>{ex.ToString()}");
                return(null);
            }
            finally
            {
                dbHelper?.Dispose();
                sqlCmd?.Dispose();
            }
        }
示例#3
0
        /// <summary>
        ///     根据问题获取问题的所有选项
        /// </summary>
        /// <param name="questionId"></param>
        /// <returns></returns>
        public static async Task <IEnumerable <QuestionOptionModel> > GetQuestionOptionListByQuestionId(long questionId)
        {
            #region SQL
            string sql = @" SELECT  [PKID] AS OptionID ,
                                    [QuestionnaireID] ,
                                    [QuestionID] ,
                                    [OptionContent] ,
                                    [OptionPicSrc] ,
                                    [NoOptionScore] ,
                                    [YesOptionScore] ,
                                    [IsRightValue] ,
                                    [ForkQuestionID] ,
                                    [Sort] ,
                                    [CreateDateTime] ,
                                    [LastUpdateDateTime] ,
                                    [IsDeleted],
                                    ISNULL([IsAdditionalInfo],0) AS [IsAdditionalInfo],
                                    ISNULL([IsShowAdditionalInfo],0) AS [IsShowAdditionalInfo],
                                    [QuestionParentID],
                                    [UseIntegral],
                                    [WinCouponCount]
                            FROM    [Activity].[dbo].[QuestionOption] WITH ( NOLOCK )
                            WHERE   IsDeleted = 0
                                    AND QuestionID = @QuestionID
                                    ORDER BY Sort ASC ,PKID asc";
            #endregion

            BaseDbHelper dbHelper = null;
            SqlCommand   sqlCmd   = null;
            try
            {
                SqlParameter[] paras = new SqlParameter[] { new SqlParameter("@QuestionID", questionId) };
                dbHelper = DbHelper.CreateDbHelper(true);
                sqlCmd   = new SqlCommand(sql);
                sqlCmd.Parameters.AddRange(paras.ToArray());
                return(await dbHelper.ExecuteSelectAsync <QuestionOptionModel>(sqlCmd));
            }
            catch (Exception ex)
            {
                Logger.Error($"DB异常=>{nameof(GetQuestionOptionListByQuestionId)}=>{ex.ToString()}");
                return(null);
            }
            finally
            {
                dbHelper?.Dispose();
                sqlCmd?.Dispose();
            }
        }