예제 #1
0
        public JsonResult GetTuiJianModules()
        {
            var data = new MoLoveData();

            try
            {
                var key = "tuijianmodules";
                data = _cache.Get <MoLoveData>(key);
                if (data == null)
                {
                    data = new MoLoveData();

                    var modules = _db.ToModule.Where(b => b.Status == (int)EnumHelper.EmModuleStatus.启用).
                                  OrderBy(b => Guid.NewGuid()).
                                  Take(4).
                                  ToList();
                    data.Data = modules;
                    data.IsOk = true;
                    if (modules.Count > 0)
                    {
                        _cache.Set <MoLoveData>(key, data, TimeSpan.FromHours(5));
                    }
                }
            }
            catch (Exception ex)
            {
            }
            return(Json(data));
        }
예제 #2
0
        public JsonResult GetLogin()
        {
            var data = new MoLoveData();

            var userInfo = HttpContext.Session.Get <MoUserInfo>(HttpContext.Session.SessionKey());

            if (userInfo != null)
            {
                data.Data = userInfo;
                data.IsOk = true;
            }
            data.Msg = data.IsOk ? "已登录" : "未登录";
            return(Json(data));
        }
        public JsonResult UserStatis()
        {
            var data = new MoLoveData();
            var list = new List <dynamic>();

            //留图数(公有)
            var userContent = _db.ToContent.Where(b => b.UserId == _MyUserInfo.Id).AsEnumerable();
            var total1      = userContent.Count(b => b.Status == (int)EnumHelper.EmContentStatus.公有);

            list.Add(new
            {
                name  = "留图数(公有)",
                total = $"{ total1}(张)"
            });
            //留图数(私有)
            var total2 = userContent.Count(b => b.Status == (int)EnumHelper.EmContentStatus.私有);

            list.Add(new
            {
                name  = "留图数(私有)",
                total = $"{ total2}(张)"
            });
            //点赞数
            var total3 = userContent.Where(b => b.Status != (int)EnumHelper.EmContentStatus.除).Sum(b => b.ZanNum);

            list.Add(new
            {
                name  = "点赞数",
                total = $"{ total3}(个)"
            });
            //浏览数
            var total4 = userContent.Where(b => b.Status != (int)EnumHelper.EmContentStatus.除).Sum(b => b.ReadNum);

            list.Add(new
            {
                name  = "浏览数",
                total = $"{ total4}(次)"
            });
            //爱心积分
            var total5 = _MyUserInfo.LevelNum;

            list.Add(new
            {
                name  = "爱心积分",
                total = $"{ total5}(分)"
            });
            data.Data = list;
            data.IsOk = true;
            return(Json(data));
        }
        public JsonResult UserLog(int?codeId, int page = 1, int pageSize = 5)
        {
            var data = new MoLoveData();

            if (codeId == null)
            {
                return(Json(data));
            }

            page      = page <= 0 ? 1 : page;
            pageSize  = pageSize > 20 ? 20 : pageSize;
            data.Data = _db.ToUserLog.
                        Where(b => b.UserId == _MyUserInfo.Id && b.CodeId == codeId).
                        OrderByDescending(b => b.Id).
                        Skip((page - 1) * pageSize).
                        Take(pageSize).
                        ToList();
            data.IsOk = true;
            return(Json(data));
        }
        public JsonResult UserUp()
        {
            var data = new MoLoveData();
            //留图数(公有)
            var userContent = _db.ToContent.Where(b => b.UserId == _MyUserInfo.Id &&
                                                  b.Status != (int)EnumHelper.EmContentStatus.除).
                              OrderByDescending(b => b.CreateTime).Take(5).
                              Select(b => new
            {
                Id      = b.Id,
                Name    = b.Name,
                ReadNum = b.ReadNum,
                ZanNum  = b.ZanNum,
                MinPic  = b.MinPic,

                MaxPic = b.MaxPic
            });

            data.Data = userContent;
            data.IsOk = true;
            return(Json(data));
        }
예제 #6
0
        /// <summary>
        /// 增加点赞或浏览次数
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public async Task <JsonResult> PicZanOrRead(int?id, int?tId)
        {
            var data = new MoLoveData();

            try
            {
                if (id == null || id <= 0 ||
                    tId == null || tId <= 0)
                {
                    data.Msg = "操作失败!"; return(Json(data));
                }

                var user = HttpContext.Session.Get <MoUserInfo>(HttpContext.Session.SessionKey());
                if (user == null)
                {
                    data.Msg = "请先登录!"; return(Json(data));
                }

                var content = _db.ToContent.SingleOrDefault(b => b.Id == id && b.Status == (int)EnumHelper.EmContentStatus.公有);
                if (content == null)
                {
                    data.Msg = "操作失败。"; return(Json(data));
                }

                if (content.UserId == user.Id)
                {
                    data.Msg = "不能操作自己的图"; return(Json(data));
                }

                if (tId == 1)
                {
                    //点赞
                    content.ZanNum += 1;
                    data.Data       = content.ZanNum;
                    if (content.ZanNum >= 1000000)
                    {
                        data.Msg = "操作成功。"; data.IsOk = true; return(Json(data));
                    }
                }
                else if (tId == 2)
                {
                    //浏览
                    content.ReadNum += 1;
                    data.Data        = content.ReadNum;
                    if (content.ReadNum >= 1000000)
                    {
                        data.Msg = "操作成功。"; data.IsOk = true; return(Json(data));
                    }
                }

                data.IsOk = await _db.SaveChangesAsync() > 0;

                data.Msg = data.IsOk ? "操作成功!" : "操作失败!";
                if (data.IsOk && tId == 1)
                {
                    //增加积分
                    _db.ToUserLog.Add(new ToUserLog
                    {
                        CodeId     = (int)EmLogCode.积分,
                        CreateTime = DateTime.Now,
                        Des        = $"图:{content.Name.FomartSubStr(15)},被【点赞】  +{(int)EmLevelNum.点赞}",
                        UserId     = user.Id
                    });
                    var dbUser = _db.ToUserInfo.SingleOrDefault(b => b.Id == user.Id);
                    dbUser.LevelNum += (int)EmLevelNum.点赞;

                    var result = await _db.SaveChangesAsync();

                    if (result > 0)
                    {
                        user.LevelNum = dbUser.LevelNum;
                    }
                }
            }
            catch (Exception ex)
            {
            }
            return(Json(data));
        }