This commit is contained in:
lxyer 2018-07-29 15:37:16 +08:00
parent 162eec4a9d
commit d6a6f315f6
6 changed files with 51 additions and 21 deletions

View File

@ -1,6 +1,5 @@
package com.lxyer.bbs.base;
import com.lxyer.bbs.base.user.UserInfo;
import org.redkale.net.http.RestMapping;
import org.redkale.service.Service;
import org.redkale.source.CacheSource;
@ -9,6 +8,9 @@ import org.redkalex.cache.RedisCacheSource;
import javax.annotation.Resource;
import java.io.File;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.StandardCopyOption;
/**
* Created by Lxy at 2017/10/3 13:50.
@ -29,9 +31,6 @@ public class BaseService implements Service {
@Resource(name = "cacheSource")
protected CacheSource cacheSource;
@Resource(name = "userInfos")
protected CacheSource<UserInfo> userInfos;
protected static final boolean winos = System.getProperty("os.name").contains("Window");
@RestMapping(ignore = true)
@ -40,7 +39,7 @@ public class BaseService implements Service {
}
@RestMapping(ignore = true)
public int currentUserId(String sessionid){
public int currentUserid(String sessionid){
if (sessionid == null) return 0;
Object userid = null;
try {
@ -50,4 +49,36 @@ public class BaseService implements Service {
}
return userid == null ? 0 : (Integer)userid;
}
/**
* 文件上传
*/
private static final String dir = "/var/www/upload/redbbs/";
private static final String view = "http://img.1216.top/redbbs/";
private static final String format = "%1$tY%1$tm%1$td%1$tH%1$tM%1$tS";
protected PicRecord upFile(File tmpFile, IPic bean){
String name = tmpFile.getName();
String suffix = name.substring(name.lastIndexOf("."));
String path = String.format(format, System.currentTimeMillis()) + suffix;
File destFile = new File((winos ? "root/tem/" : dir) + path);
destFile.getParentFile().mkdir();
if (!tmpFile.renameTo(destFile)){
try{
Files.copy(tmpFile.toPath(), destFile.toPath(), StandardCopyOption.ATOMIC_MOVE);
} catch (IOException e) {
e.printStackTrace();
} finally {
tmpFile.delete();//删除临时文件
}
}
//存贮资源数据
String src = (winos ? "/tem/" : view) + path;//资源访问地址
PicRecord pic = bean.crearePic();
pic.setSrc(src);
pic.setName(name);
pic.setLen((int) destFile.length());
source.insertAsync(pic);
return pic;
}
}

View File

@ -48,11 +48,16 @@ public class BaseServlet extends HttpServlet {
@Override
protected void preExecute(HttpRequest request, HttpResponse response) throws IOException {
/*if (true){
response.finish(HttpScope.refer("404.html"));
return;
}*/
String sessionid = request.getSessionid(true);
int currentid = 0;
if (sessionid != null) {
request.setCurrentUser(userService.current(sessionid));
currentid = userService.currentUserId(sessionid);
currentid = userService.currentUserid(sessionid);
}
String uri = request.getRequestURI();

View File

@ -125,12 +125,12 @@ public class UserService extends BaseService {
nickname = nickname.replace(" ", "");
UserRecord _user = source.find(UserRecord.class, FilterNode.create("nickname", nickname));
if (_user != null && _user.getUserid() != currentUserId(sessionid))
if (_user != null && _user.getUserid() != currentUserid(sessionid))
return RetCodes.retResult(RET_USER_NICKNAME_EXISTS, "昵称已存在");
user.setNickname(nickname);//去除昵称中的空格
source.updateColumn(user
,FilterNode.create("userid", currentUserId(sessionid))
,FilterNode.create("userid", currentUserid(sessionid))
,SelectColumn.createIncludes(columns)
);
return RetResult.success();

View File

@ -2,11 +2,9 @@ package com.lxyer.bbs.comment;
import com.lxyer.bbs.base.BaseService;
import com.lxyer.bbs.base.entity.ActLog;
import com.lxyer.bbs.base.iface.UI;
import com.lxyer.bbs.base.iface.UIService;
import com.lxyer.bbs.base.kit.LxyKit;
import com.lxyer.bbs.base.kit.RetCodes;
import com.lxyer.bbs.base.user.UserService;
import com.lxyer.bbs.content.Content;
import org.redkale.net.http.RestMapping;
import org.redkale.net.http.RestParam;
@ -17,8 +15,6 @@ import org.redkale.source.*;
import org.redkale.util.SelectColumn;
import org.redkale.util.Sheet;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@ -31,9 +27,6 @@ import static com.lxyer.bbs.base.kit.RetCodes.RET_COMMENT_PARA_ILLEGAL;
@RestService(automapping = true, comment = "评论服务")
public class CommentService extends BaseService implements UIService<CommentInfo> {
/*@Resource
private UserService userService;*/
@RestMapping(name = "save", comment = "评论保存")
public RetResult commentSave(@RestSessionid String sessionid, @RestParam(name = "bean") Comment comment){
int contentid = comment.getContentid();
@ -48,7 +41,7 @@ public class CommentService extends BaseService implements UIService<CommentInfo
return RetCodes.retResult(RET_COMMENT_CONTENT_ILLEGAL, "评论内容无效");
if (comment.getCommentid() < 1) {
int userid = currentUserId(sessionid);
int userid = currentUserid(sessionid);
comment.setUserid(userid);
comment.setCreatetime(System.currentTimeMillis());
//todo:@用户处理
@ -65,7 +58,7 @@ public class CommentService extends BaseService implements UIService<CommentInfo
@RestMapping(name = "query", auth = false,comment = "查询评论")
public Sheet<CommentInfo> commentQuery(@RestSessionid String sessionid , int contentId, Flipper flipper){
int userid = currentUserId(sessionid);
int userid = currentUserid(sessionid);
flipper.setSort("supportnum DESC,commentid ASC");
Sheet<Comment> comments = source.querySheet(Comment.class, flipper, FilterNode.create("contentid", contentId));
@ -103,7 +96,7 @@ public class CommentService extends BaseService implements UIService<CommentInfo
@RestMapping(name = "support", comment = "评论点赞")
public RetResult support(@RestSessionid String sessionid, int commentid, int ok){
int userid = currentUserId(sessionid);
int userid = currentUserid(sessionid);
source.findAsync(ActLog.class, FilterNode.create("userid", userid).and("tid", commentid).and("cate", 10)).thenAccept(actLog -> {
if (actLog == null && ok == 1){

View File

@ -93,7 +93,7 @@ public class ContentService extends BaseService implements UIService<ContentInfo
@RestMapping(name = "info", auth = false, comment = "内容详情")
public ContentInfo contentInfo(@RestSessionid String sessionid, int contentid){
int userId = userService.currentUserId(sessionid);
int userId = userService.currentUserid(sessionid);
Content content = source.find(Content.class, contentid);
if (content == null) return null;
@ -110,7 +110,7 @@ public class ContentService extends BaseService implements UIService<ContentInfo
@RestMapping(name = "collect", comment = "内容收藏")
public RetResult collect(@RestSessionid String sessionid, int contentid, int ok){
int userid = userService.currentUserId(sessionid);//不会为空
int userid = userService.currentUserid(sessionid);//不会为空
ActLog actLog = source.find(ActLog.class, FilterNode.create("userid", userid).and("tid", contentid).and("cate", 20));
if (actLog == null && ok == 1){
@ -130,7 +130,7 @@ public class ContentService extends BaseService implements UIService<ContentInfo
@RestMapping(name = "collectquery", comment = "收藏列表")
public Sheet<ContentInfo> collectQuery(@RestSessionid String sessionid){
int userid = currentUserId(sessionid);
int userid = currentUserid(sessionid);
Flipper flipper = new Flipper().sort("createtime DESC");
FilterNode filterNode = FilterNode.create("cate", 20).and("status", 10).and("userid", userid);

View File

@ -66,6 +66,7 @@ public class UserServlet extends BaseServlet {
Kv kv = Kv.by("contents", contents).set("collects", collects);
response.finish(HttpScope.refer("/user/index.html").attr(kv));
return;
}
//-------用户主页------