Beispiel #1
0
        public List <DishesModel> GetDishesByIds(int[] ids)
        {
            var ds = dao.GetDishesByIds(ids);
            List <DishesModel> dishes = new List <DishesModel>();

            if (ds != null && ds.Tables != null && ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0)
            {
                foreach (DataRow dr in ds.Tables[0].Rows)
                {
                    var dm = new DishesModel();
                    dm.Id         = Int32.Parse(dr[0].ToString());
                    dm.CategoryId = Int32.Parse(dr[1].ToString());
                    dm.EName      = dr[2].ToString();
                    dm.OtherName  = dr[3].ToString();

                    dm.Price        = Decimal.Parse(dr[4].ToString());
                    dm.EComment     = dr[5].ToString();
                    dm.OtherComment = dr[6].ToString();

                    dm.CEName = dr[7].ToString();
                    dm.COName = dr[8].ToString();

                    dishes.Add(dm);
                }
            }

            return(dishes);
        }
Beispiel #2
0
        /// <summary>
        /// 输出用户输入的信息
        /// </summary>
        /// <param name="tm"></param>
        /// <returns></returns>
        public string DefaultHandler(TextMessage tm)
        {
            DailyDishHelper ddh = new DailyDishHelper();

            ddh.CreateUser(tm.FromUserName, "waiting..");
            if (tm.Content.Contains("1"))
            {
                tm.Content = "请点此链接设置个人口味:" + ConfigurationManager.AppSettings["WechatUrl"] + tm.FromUserName;
            }
            else if (tm.Content.Contains("2"))
            {
                DishesModel model = ddh.GetDishByUser(tm.FromUserName);
                ddh.SaveRecommendHistory(tm.FromUserName, model.Id, model.Score, model.DishName);
                ddh.UpdateDishScore(tm.FromUserName, model.Id);
                tm.Content = "请点此链接查看你的专属推荐" + ConfigurationManager.AppSettings["RecommendUrl"] + tm.FromUserName;;
            }


            string toOpenid = tm.ToUserName;

            tm.ToUserName   = tm.FromUserName;
            tm.FromUserName = toOpenid;
            tm.CreateTime   = WeChatHelper.WeChatNowTime();
            return(tm.GenerateContent());
        }
Beispiel #3
0
        public DishesModel GetDishByUser(string openId)
        {
            List <DishScore> score = QueryScoreByUser(openId);

            if (score.Count == 0)
            {
                GetFactorScore(openId);
                score = QueryScoreByUser(openId);
            }
            DishScore   dishscore = score.OrderByDescending(r => r.Score).ThenBy(r => r.DishesId).First();
            Dishes      dish      = QueryDishesById(dishscore.DishesId);
            DishesModel model     = new DishesModel()
            {
                Id              = dishscore.DishesId,
                SecondTaste     = dish.SecondTaste,
                Status          = dish.Status,
                Accessory       = dish.Accessory,
                CreateTime      = dish.CreateTime,
                DishName        = dish.DishName,
                Explain         = dish.Explain,
                FirstTaste      = dish.FirstTaste,
                MainIngredients = dish.MainIngredients,
                PracticeUrl     = dish.PracticeUrl,
                Score           = dishscore.Score
            };

            return(model);
        }
Beispiel #4
0
        public ActionResult GetRecommendDish(string openId)
        {
            DailyDishHelper ddh   = new DailyDishHelper();
            UserInfo        user  = (UserInfo)Session["wechat"];
            DishesModel     model = ddh.GetDishByUser(openId);

            return(View("ShowFoodInfo", model));
        }
Beispiel #5
0
        public DishesModel GetSingleDishes(int dishId)
        {
            var         ds = dao.GetSingleDishes(dishId);
            DishesModel dm = new DishesModel();

            if (ds != null && ds.Tables != null && ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0)
            {
                DataRow dr = ds.Tables[0].Rows[0];
                dm.Id         = Int32.Parse(dr[0].ToString());
                dm.CategoryId = Int32.Parse(dr[1].ToString());
                dm.EName      = dr[2].ToString();
                dm.OtherName  = dr[3].ToString();

                dm.Price        = Decimal.Parse(dr[4].ToString());
                dm.EComment     = dr[5].ToString();
                dm.OtherComment = dr[6].ToString();

                dm.CEName = dr[7].ToString();
                dm.COName = dr[8].ToString();
            }

            return(dm);
        }