use of com.tale.exception.TipException in project tale by otale.
the class UsersServiceImpl method login.
@Override
public Users login(String username, String password) {
if (StringKit.isBlank(username) || StringKit.isBlank(password)) {
throw new TipException("用户名和密码不能为空");
}
int count = activeRecord.count(new Take(Users.class).eq("username", username));
if (count < 1) {
throw new TipException("不存在该用户");
}
String pwd = Tools.md5(username, password);
Users users = activeRecord.one(new Take(Users.class).eq("username", username).eq("password", pwd));
if (null == users) {
throw new TipException("用户名或密码错误");
}
return users;
}
use of com.tale.exception.TipException in project tale by otale.
the class AttachController method delete.
@Route(value = "delete")
@JSON
public RestResponse delete(@QueryParam Integer id, Request request) {
try {
Attach attach = attachService.byId(id);
if (null == attach)
return RestResponse.fail("不存在该附件");
attachService.delete(id);
siteService.cleanCache(Types.C_STATISTICS);
String upDir = CLASSPATH.substring(0, CLASSPATH.length() - 1);
FileKit.delete(upDir + attach.getFkey());
logService.save(LogActions.DEL_ATTACH, attach.getFkey(), request.address(), this.getUid());
} catch (Exception e) {
String msg = "附件删除失败";
if (e instanceof TipException)
msg = e.getMessage();
else
LOGGER.error(msg, e);
return RestResponse.fail(msg);
}
return RestResponse.ok();
}
use of com.tale.exception.TipException in project tale by otale.
the class AttachController method upload.
/**
* 上传文件接口
*
* 返回格式
* @param request
* @return
*/
@Route(value = "upload", method = HttpMethod.POST)
@JSON
public RestResponse upload(Request request) {
LOGGER.info("UPLOAD DIR = {}", TaleUtils.upDir);
Users users = this.user();
Integer uid = users.getUid();
Map<String, FileItem> fileItemMap = request.fileItems();
Collection<FileItem> fileItems = fileItemMap.values();
List<Attach> errorFiles = new ArrayList<>();
List<Attach> urls = new ArrayList<>();
try {
fileItems.forEach((FileItem f) -> {
String fname = f.fileName();
if (f.file().length() / 1024 <= TaleConst.MAX_FILE_SIZE) {
String fkey = TaleUtils.getFileKey(fname);
String ftype = TaleUtils.isImage(f.file()) ? Types.IMAGE : Types.FILE;
String filePath = TaleUtils.upDir + fkey;
File file = new File(filePath);
try {
Tools.copyFileUsingFileChannels(f.file(), file);
f.file().delete();
} catch (IOException e) {
e.printStackTrace();
}
Attach attach = attachService.save(fname, fkey, ftype, uid);
urls.add(attach);
siteService.cleanCache(Types.C_STATISTICS);
} else {
errorFiles.add(new Attach(fname));
}
});
if (errorFiles.size() > 0) {
RestResponse restResponse = new RestResponse();
restResponse.setSuccess(false);
restResponse.setPayload(errorFiles);
return restResponse;
}
return RestResponse.ok(urls);
} catch (Exception e) {
String msg = "文件上传失败";
if (e instanceof TipException) {
msg = e.getMessage();
} else {
LOGGER.error(msg, e);
}
return RestResponse.fail(msg);
}
}
use of com.tale.exception.TipException in project tale by otale.
the class CommentController method reply.
@Route(value = "", method = HttpMethod.POST)
@JSON
public RestResponse reply(@QueryParam Integer coid, @QueryParam String content, Request request) {
if (null == coid || StringKit.isBlank(content)) {
return RestResponse.fail("请输入完整后评论");
}
if (content.length() > 2000) {
return RestResponse.fail("请输入2000个字符以内的回复");
}
Comments c = commentsService.byId(coid);
if (null == c) {
return RestResponse.fail("不存在该评论");
}
Users users = this.user();
content = TaleUtils.cleanXSS(content);
content = EmojiParser.parseToAliases(content);
Comments comments = new Comments();
comments.setAuthor(users.getUsername());
comments.setAuthor_id(users.getUid());
comments.setCid(c.getCid());
comments.setIp(request.address());
comments.setUrl(users.getHome_url());
comments.setContent(content);
if (StringKit.isNotBlank(users.getEmail())) {
comments.setMail(users.getEmail());
} else {
comments.setMail("support@tale.me");
}
comments.setParent(coid);
try {
commentsService.saveComment(comments);
siteService.cleanCache(Types.C_STATISTICS);
return RestResponse.ok();
} catch (Exception e) {
String msg = "回复失败";
if (e instanceof TipException) {
msg = e.getMessage();
} else {
LOGGER.error(msg, e);
}
return RestResponse.fail(msg);
}
}
use of com.tale.exception.TipException in project tale by otale.
the class IndexController method saveSetting.
/**
* 保存系统设置
*/
@Route(value = "setting", method = HttpMethod.POST)
@JSON
public RestResponse saveSetting(@QueryParam String site_theme, Request request) {
try {
Map<String, String> querys = request.querys();
optionsService.saveOptions(querys);
Config config = new Config();
config.addAll(optionsService.getOptions());
TaleConst.OPTIONS = config;
logService.save(LogActions.SYS_SETTING, JSONKit.toJSONString(querys), request.address(), this.getUid());
return RestResponse.ok();
} catch (Exception e) {
String msg = "保存设置失败";
if (e instanceof TipException) {
msg = e.getMessage();
} else {
LOGGER.error(msg, e);
}
return RestResponse.fail(msg);
}
}
Aggregations