public IActionResult PictureUpload(PictureDto body) { using EFCoreContextWrite context = new EFCore.EFCoreContextWrite(); if (!string.IsNullOrEmpty(body.PictureTitle) && !string.IsNullOrEmpty(body.PictureExplain)) { string token = _httpContext.HttpContext.Request.Headers["Authorization"]; AuthRedis.GetUserByToken(token, out UserInfo userInfo); PictureInfo PictureInfos = new PictureInfo() { Id = SequenceID.GetSequenceID(), CreateTime = DateTime.Now, Disable = false, PictureContent = body.url, UserID = userInfo.id, LastModifiedTime = DateTime.Now, PictureExplain = body.PictureExplain, PictureTitle = body.PictureTitle, RecommendIndex = body.Index, PictureType = body.PictureType, PhotoType = body.PhotoType }; context.Add(PictureInfos); context.SaveChanges(); PictureRedis.Del(); } return(Ok(new ApiResponse())); }
//[AuthFilter]//身份认证,不带token或者token错误会被拦截器拦截进不来这个接口 public IActionResult PhotoList(PhotoType photoType) { using EFCoreContextWrite context = new EFCore.EFCoreContextWrite(); int total = 0; List <PictureListDto> PictureListDtos = new List <PictureListDto>(); if (!PictureRedis.GetAll(out List <PictureInfo> Picture)) { Picture = context.PictureInfo.Where(x => x.Disable == false).Include(x => x.Users).ToList(); total = Picture.Count(); if (Picture != null && Picture.Count > 0) { PictureRedis.SaveAll(Picture); } Picture = Picture.Where(x => x.Disable == false && x.PictureType == PictureType.Product && x.PhotoType == photoType).OrderByDescending(x => x.RecommendIndex).ToList(); foreach (var item in Picture) { PictureListDto PictureListDto = new PictureListDto() { ID = item.Id, CreateTime = item.CreateTime, Index = item.RecommendIndex, UserName = item.Users.UserName, PictureExplain = item.PictureExplain, PictureTitle = item.PictureTitle, PictureUrl = item.PictureContent, PictureType = item.PictureType }; PictureListDtos.Add(PictureListDto); } } else { total = Picture.Count(); Picture = Picture.Where(x => x.Disable == false && x.PictureType == PictureType.Product && x.PhotoType == photoType).OrderByDescending(x => x.RecommendIndex).ToList(); foreach (var item in Picture) { PictureListDto PictureListDto = new PictureListDto() { ID = item.Id, CreateTime = item.CreateTime, Index = item.RecommendIndex, UserName = item.Users.UserName, PictureExplain = item.PictureExplain, PictureTitle = item.PictureTitle, PictureUrl = item.PictureContent, PictureType = item.PictureType }; PictureListDtos.Add(PictureListDto); } } return(Ok(new ApiResponse(PictureListDtos, total))); }
[AuthFilter]//身份认证,不带token或者token错误会被拦截器拦截进不来这个接口 public IActionResult PictureDel(long id) { using EFCoreContextWrite context = new EFCore.EFCoreContextWrite(); var PictureInfo = context.PictureInfo.Single(x => x.Id == id); var WordInfo = context.WordInfo.Where(x => x.PictureID == id); PictureInfo.Disable = true; foreach (var item in WordInfo) { item.Disable = true; } context.SaveChanges(); WordRedis.Del(); PictureRedis.Del(); return(Ok(new ApiResponse())); }
[AuthFilter]//身份认证,不带token或者token错误会被拦截器拦截进不来这个接口 public IActionResult PictureInfo(PictureSelectDto body) { using EFCoreContextWrite context = new EFCore.EFCoreContextWrite(); int total = 0; List <PictureListDto> PictureListDtos = new List <PictureListDto>(); if (!PictureRedis.GetAll(out List <PictureInfo> Picture)) { Picture = context.PictureInfo.Where(x => x.Disable == false).Include(x => x.Users).ToList(); total = Picture.Count(); if (Picture != null && Picture.Count > 0) { PictureRedis.SaveAll(Picture); } if (body.StartTime != null) { Picture = Picture.Where(x => x.CreateTime >= body.StartTime).ToList(); } if (body.EndTime != null) { Picture = Picture.Where(x => x.CreateTime <= body.EndTime).ToList(); } if (body.PictureType != null) { Picture = Picture.Where(x => x.PictureType == body.PictureType).ToList(); } Picture = Picture.OrderByDescending(x => x.RecommendIndex).Skip(body.pageSize * (body.pageNum - 1)).Take(body.pageSize).ToList(); foreach (var item in Picture) { PictureListDto PictureListDto = new PictureListDto() { ID = item.Id, CreateTime = item.CreateTime, Index = item.RecommendIndex, UserName = item.Users.UserName, PictureExplain = item.PictureExplain, PictureTitle = item.PictureTitle, PictureUrl = item.PictureContent, PictureType = item.PictureType }; PictureListDtos.Add(PictureListDto); } } else { total = Picture.Count(); if (body.StartTime != null) { Picture = Picture.Where(x => x.CreateTime >= body.StartTime).ToList(); } if (body.EndTime != null) { Picture = Picture.Where(x => x.CreateTime <= body.EndTime).ToList(); } if (body.PictureType != null) { Picture = Picture.Where(x => x.PictureType == body.PictureType).ToList(); } Picture = Picture.OrderByDescending(x => x.RecommendIndex).Skip(body.pageSize * (body.pageNum - 1)).Take(body.pageSize).ToList(); foreach (var item in Picture) { PictureListDto PictureListDto = new PictureListDto() { ID = item.Id, CreateTime = item.CreateTime, Index = item.RecommendIndex, UserName = item.Users.UserName, PictureExplain = item.PictureExplain, PictureTitle = item.PictureTitle, PictureUrl = item.PictureContent, PictureType = item.PictureType }; PictureListDtos.Add(PictureListDto); } } return(Ok(new ApiResponse(PictureListDtos, total))); }
//[AuthFilter]//身份认证,不带token或者token错误会被拦截器拦截进不来这个接口 public IActionResult PictureList() { using EFCoreContextWrite context = new EFCore.EFCoreContextWrite(); int total = 0; List <PictureListDto> PictureListDtos = new List <PictureListDto>(); if (!PictureRedis.GetAll(out List <PictureInfo> Picture)) { Picture = context.PictureInfo.Where(x => x.Disable == false).OrderByDescending(x => x.RecommendIndex).Include(x => x.Users).ToList(); total = Picture.Count(); if (Picture != null && Picture.Count > 0) { PictureRedis.SaveAll(Picture); } string token = _httpContext.HttpContext.Request.Headers["Authorization"]; if (string.IsNullOrEmpty(token)) { Picture = Picture.Where(x => x.PictureType == PictureType.News).OrderByDescending(x => x.RecommendIndex).Skip(0).Take(4).ToList(); } else { if (!AuthRedis.GetUserByToken(token, out UserInfo userInfo)) { Picture = Picture.Where(x => x.PictureType == PictureType.News).OrderByDescending(x => x.RecommendIndex).Skip(0).Take(4).ToList(); } else { //注册账号时间不能超过俩个小时 if (DateTime.Now.Hour - userInfo.CreateTime.Hour > 2 && userInfo.LoginType.First() != LoginType.FreeWeb) { Picture = Picture.Where(x => x.PictureType == PictureType.News).OrderByDescending(x => x.RecommendIndex).Skip(0).Take(4).ToList(); } } Picture = Picture.Where(x => x.Disable == false && x.PictureType == PictureType.News).ToList(); } foreach (var item in Picture) { PictureListDto PictureListDto = new PictureListDto() { ID = item.Id, CreateTime = item.CreateTime, Index = item.RecommendIndex, UserName = item.Users.UserName, PictureExplain = item.PictureExplain, PictureTitle = item.PictureTitle, PictureUrl = item.PictureContent, PictureType = item.PictureType }; PictureListDtos.Add(PictureListDto); } } else { total = Picture.Count(); string token = _httpContext.HttpContext.Request.Headers["Authorization"]; if (string.IsNullOrEmpty(token)) { Picture = Picture.Where(x => x.PictureType == PictureType.News).OrderByDescending(x => x.RecommendIndex).Skip(0).Take(4).ToList(); } else { if (!AuthRedis.GetUserByToken(token, out UserInfo userInfo)) { Picture = Picture.Where(x => x.PictureType == PictureType.News).OrderByDescending(x => x.RecommendIndex).Skip(0).Take(4).ToList(); } else { //注册账号时间不能超过俩个小时 if (DateTime.Now.Hour - userInfo.CreateTime.Hour > 2 && userInfo.LoginType.First() != LoginType.FreeWeb) { Picture = Picture.Where(x => x.PictureType == PictureType.News).OrderByDescending(x => x.RecommendIndex).Skip(0).Take(4).ToList(); } } Picture = Picture.Where(x => x.Disable == false && x.PictureType == PictureType.News).OrderByDescending(x => x.RecommendIndex).ToList(); } foreach (var item in Picture) { PictureListDto PictureListDto = new PictureListDto() { ID = item.Id, CreateTime = item.CreateTime, Index = item.RecommendIndex, UserName = item.Users.UserName, PictureExplain = item.PictureExplain, PictureTitle = item.PictureTitle, PictureUrl = item.PictureContent, PictureType = item.PictureType }; PictureListDtos.Add(PictureListDto); } } return(Ok(new ApiResponse(PictureListDtos, total))); }