//特定咨询详情页面(用户和专家共用)
        public ActionResult ConsultDetails()
        {
            if (Session["userName"] == null)
            {
                return(RedirectToAction("LoginRemind", "Topic"));
            }
            LoginStatusConfig();//配置登录状态
            string userName = Session["userName"].ToString();
            ////获取用户等级名
            Rank_bll rank_bll   = new Rank_bll();
            string   rankNameDB = rank_bll.GetRankName(userName); //该用户数据库里的等级名

            rankNameDB = rankNameDB.Trim();                       //去除空格
            //string expertUserName = Request["expertUserName"].ToString();
            int specialConsultId = Convert.ToInt32(Request["specialConsultId"]);
            SpecialConsult_bll   specialConsult_bll   = new SpecialConsult_bll();
            SpecialConsult_model specialConsult_model = specialConsult_bll.GetOneSpecialConsult(specialConsultId);//通过specialConsultId获取用户特定咨询时填写的特定咨询数据

            ViewData["specialConsult_model"] = specialConsult_model;
            ViewData["rankName"]             = rankNameDB;
            SpecialConsultAnswer_bll specialConsultAnswer_bll = new SpecialConsultAnswer_bll();
            string   expertUserName = Request["expertUserName"].ToString();
            User_bll user_bll       = new User_bll();
            int      expertId       = user_bll.GetUserId(expertUserName);
            SpecialConsultAnswer_model specialConsultAnswer_model = specialConsultAnswer_bll.GetOneSpecialAnswerData(specialConsultId, expertId);//通过specialConsultId获取特定咨询的专家解答数据

            return(View(specialConsultAnswer_model));
        }
        /// <summary>
        /// 将一条数据转化为SpecialConsult_model数据
        /// </summary>
        /// <param name="row"></param>
        /// <returns></returns>
        public SpecialConsult_model ToModel(DataRow row)
        {
            ///这里还缺少一个处理,那就是,当数据库里的某个字段为空时,要初始化什么值,或者做什么处理
            SpecialConsult_model specialConsult_model = new SpecialConsult_model();

            specialConsult_model.id              = (int)row["id"];
            specialConsult_model.caption         = row["caption"].ToString();
            specialConsult_model.userPhotoUrl    = row["geRenZhao"].ToString();
            specialConsult_model.occasion        = row["occasion"].ToString();
            specialConsult_model.likeStyleUrl    = row["likeStyleUrl"].ToString();
            specialConsult_model.dislikeStyleUrl = row["dislikeStyleUrl"].ToString();
            specialConsult_model.detail          = row["detail"].ToString();
            //咨询者数据
            specialConsult_model.user.userId     = (int)row["userId"];
            specialConsult_model.user.userName   = row["userName"].ToString();
            specialConsult_model.user.height     = Convert.ToInt32(row["height"]);
            specialConsult_model.user.weight     = Convert.ToInt32(row["weight"]);
            specialConsult_model.user.yaoWei     = Convert.ToInt32(row["yaoWei"]);
            specialConsult_model.user.tuiChang   = Convert.ToInt32(row["tuiChang"]);
            specialConsult_model.user.daTuiWei   = Convert.ToInt32(row["daTuiWei"]);
            specialConsult_model.user.xiaoTunWei = Convert.ToInt32(row["xiaoTuiWei"]);
            specialConsult_model.user.tunWei     = Convert.ToInt32(row["tunWei"]);
            specialConsult_model.user.biWei      = Convert.ToInt32(row["biWei"]);
            specialConsult_model.user.xiongWei   = Convert.ToInt32(row["xiongWei"]);
            specialConsult_model.user.skinColor  = row["skinColor"].ToString();
            return(specialConsult_model);
        }
        /// <summary>
        /// 将一条数据转化为SpecialConsult_model数据
        /// 特定咨询帖子id  标题 用户个人照 详细描述 日期
        /// </summary>
        /// <param name="row"></param>
        /// <returns></returns>
        public SpecialConsult_model ToShortModel(DataRow row)
        {
            SpecialConsult_model specialConsult_model = new SpecialConsult_model();

            specialConsult_model.id           = (int)row["id"];
            specialConsult_model.caption      = row["caption"].ToString();
            specialConsult_model.userPhotoUrl = row["geRenZhao"].ToString();
            specialConsult_model.detail       = row["detail"].ToString();
            specialConsult_model.datetime     = (DateTime)row["date"];
            return(specialConsult_model);
        }
        /// <summary>
        /// 显示特定咨询选择的专家列表解答情况
        /// </summary>
        /// <returns></returns>
        public ActionResult MySpecialConsultExpertList()
        {
            if (Session["userName"] == null)
            {
                return(RedirectToAction("LoginRemind", "Topic"));
            }
            LoginStatusConfig();                                                 //配置登录状态
            int specialConsultId = Convert.ToInt32(Request["specialConsultId"]); //特定咨询帖子的id

            ViewData["specialConsultId"] = specialConsultId;
            SpecialConsult_bll   specialConsult_bll   = new SpecialConsult_bll();
            SpecialConsult_model specialConsult_model = specialConsult_bll.GetOneShortConsultData(specialConsultId);//获取的咨询的标题,场合,内容以及时间

            ViewData["specialConsult_model"] = specialConsult_model;
            SpecialConsultAnswer_bll          specialConsultAnswer_bll       = new SpecialConsultAnswer_bll();
            List <SpecialConsultAnswer_model> specialConsultAnswer_modelList = specialConsultAnswer_bll.GetAllSelectExpertShortAnswer(specialConsultId);//获取选择的多个专家的解答数据

            return(View(specialConsultAnswer_modelList));
        }
        //特定咨询详情页面(用户和专家共用)
        public ActionResult ConsultDetails()
        {
            if (Session["userName"] == null)
            {
                return(RedirectToAction("LoginRemind", "Topic"));
            }
            LoginStatusConfig();//配置登录状态
            //string expertUserName = Request["expertUserName"].ToString();
            int specialConsultId = Convert.ToInt32(Request["specialConsultId"]);

            SpecialConsult_bll   specialConsult_bll   = new SpecialConsult_bll();
            SpecialConsult_model specialConsult_model = specialConsult_bll.GetOneSpecialConsult(specialConsultId);//通过specialConsultId获取用户特定咨询时填写的特定咨询数据

            ViewData["specialConsult_model"] = specialConsult_model;
            SpecialConsultAnswer_bll   specialConsultAnswer_bll   = new SpecialConsultAnswer_bll();
            SpecialConsultAnswer_model specialConsultAnswer_model = specialConsultAnswer_bll.GetOneSpecialAnswerData(specialConsultId);//通过specialConsultId获取特定咨询的专家解答数据

            return(View(specialConsultAnswer_model));
        }
        /// <summary>
        /// 返回专家特定咨询解答页面
        /// </summary>
        /// <returns></returns>
        public ActionResult ExpertAnswer()
        {
            //string expertUserName = Request["expertUserName"].ToString();
            string expertUserName   = "******";
            int    specialConsultId = 3;
            //检查用户是否为专家
            Rank_bll rank_bll = new Rank_bll();
            string   rankName = rank_bll.GetRankName(expertUserName); //获取用户的等级名称

            rankName = rankName.Trim();                               //去除字符串里的空格
            if (rankName != "专家")
            {
                return(Content("0"));
            }
            //获取specialConsultId的特定咨询的数据
            SpecialConsult_bll   specialConsult_bll   = new SpecialConsult_bll();
            SpecialConsult_model specialConsult_model = specialConsult_bll.GetOneSpecialConsult(specialConsultId);

            return(View(specialConsult_model));
        }
        /// <summary>
        /// 通过特定咨询的帖子编号specialConsultId查询数据库的tb_SpecialConsult,
        /// 获取用户特定咨询时填写的特定咨询数据
        /// </summary>
        /// <param name="specialConsultId">特定咨询的帖子编号</param>
        /// <returns></returns>
        public SpecialConsult_model GetOneConsultData(int specialConsultId)
        {
            string sqlStr = @"select consult.SpecialConsult_Id id,consult.SpecialConsult_Caption caption,consult.SpecialConsult_Occasion occasion,
                                                   consult.SpecialConsult_UserPhotoUrl geRenZhao,consult.SpecialConsult_LikeStyleUrl likeStyleUrl,
                                                   consult.SpecialConsult_DislikeStyleUrl dislikeStyleUrl,consult.SpecialConsult_Detail detail,
                                                   theUser.User_Id userId,theUser.User_Name userName,theUser.User_Height height,theUser.User_Weight weight,
                                                   theUser.User_YaoWei yaoWei,theUser.User_LegLength tuiChang,theUser.User_ThighGirth daTuiWei,
                                                   theUser.User_SkinColor skinColor,theUser.User_TunWei tunWei,theUser.User_ArmGirth biWei,
                                                   theUser.User_XiongWei xiongWei,theUser.User_CalfGirth xiaoTuiWei
                                            from  tb_SpecialConsult consult 
                                                           left join tb_User theUser on consult.SpecialConsult_UserId=theUser.User_Id
                                            where consult.SpecialConsult_Id=@specialConsultId";

            SqlParameter[] parameters = new SqlParameter[] {
                new SqlParameter("@specialConsultId", specialConsultId)
            };
            DataTable            dataTable            = SqlHelper.ExecuteDataTable(sqlStr, parameters);
            SpecialConsult_model specialConsult_model = ToModel(dataTable.Rows[0]);

            return(specialConsult_model);
        }
        /// <summary>
        /// 根据specialConsultId获取特定咨询的SpecialConsult_Caption,SpecialConsult_Occasion,SpecialConsult_Detail,SpecialConsult_Date
        /// </summary>
        /// <param name="specialConsultId"></param>
        /// <returns></returns>
        public SpecialConsult_model GetOneShortConsultData(int specialConsultId)
        {
            string sqlStr = @"select SpecialConsult_Caption caption,SpecialConsult_Occasion occasion,
                                                   SpecialConsult_Detail detail,SpecialConsult_Date [date]
                                              from tb_SpecialConsult
                                              where SpecialConsult_Id=@specialConsultId";

            SqlParameter[] parameters = new SqlParameter[] {
                new SqlParameter("@specialConsultId", specialConsultId)
            };
            DataTable            dt = SqlHelper.ExecuteDataTable(sqlStr, parameters);
            SpecialConsult_model specialConsult_model = new SpecialConsult_model();

            if (dt.Rows.Count == 1)
            {
                specialConsult_model.caption  = dt.Rows[0]["caption"].ToString();
                specialConsult_model.datetime = (DateTime)dt.Rows[0]["date"];
                specialConsult_model.occasion = dt.Rows[0]["occasion"].ToString();
                specialConsult_model.detail   = dt.Rows[0]["detail"].ToString();
            }
            return(specialConsult_model);
        }
        /// <summary>
        /// 返回专家特定咨询解答页面
        /// </summary>
        /// <returns></returns>
        public ActionResult ExpertAnswer()
        {
            if (Session["userName"] == null)
            {
                return(RedirectToAction("LoginRemind", "Topic"));
            }
            LoginStatusConfig();//配置登录状态
            string expertUserName   = Request["expertUserName"].ToString();
            int    specialConsultId = Convert.ToInt32(Request["specialConsultId"]);
            //检查用户是否为专家
            Rank_bll rank_bll = new Rank_bll();
            string   rankName = rank_bll.GetRankName(expertUserName); //获取用户的等级名称

            rankName = rankName.Trim();                               //去除字符串里的空格
            if (rankName != "专家")
            {
                return(Content("0"));
            }
            //获取specialConsultId的特定咨询的数据
            SpecialConsult_bll   specialConsult_bll   = new SpecialConsult_bll();
            SpecialConsult_model specialConsult_model = specialConsult_bll.GetOneSpecialConsult(specialConsultId);

            return(View(specialConsult_model));
        }