@com.blade.mvc.annotation.JSON

Here are the examples of the java api @com.blade.mvc.annotation.JSON taken from open source projects. By voting up you can indicate which examples are most useful and appropriate.

12 Examples 7

17 Source : InstallController.java
with MIT License
from tfssweb

@Route(value = "/", method = HttpMethod.POST)
@JSON
public RestResponse doInstall(@Param String site_replacedle, @Param String site_url, @Param String admin_user, @Param String admin_email, @Param String admin_pwd) {
    if (Files.exists(Paths.get(AttachController.CLreplacedPATH + "install.lock")) && TaleConst.OPTIONS.getInt("allow_install", 0) != 1) {
        return RestResponse.fail("请勿重复安装");
    }
    try {
        if (StringKit.isBlank(site_replacedle) || StringKit.isBlank(site_url) || StringKit.isBlank(admin_user) || StringKit.isBlank(admin_pwd)) {
            return RestResponse.fail("请确认网站信息输入完整");
        }
        if (admin_pwd.length() < 6 || admin_pwd.length() > 14) {
            return RestResponse.fail("请输入6-14位密码");
        }
        if (StringKit.isNotBlank(admin_email) && !TaleUtils.isEmail(admin_email)) {
            return RestResponse.fail("邮箱格式不正确");
        }
        Users temp = new Users();
        temp.setUsername(admin_user);
        temp.setPreplacedword(admin_pwd);
        temp.setEmail(admin_email);
        siteService.initSite(temp);
        if (site_url.endsWith("/")) {
            site_url = site_url.substring(0, site_url.length() - 1);
        }
        if (!site_url.startsWith("http")) {
            site_url = "http://".concat(site_url);
        }
        optionsService.saveOption("site_replacedle", site_replacedle);
        optionsService.saveOption("site_url", site_url);
        TaleConst.OPTIONS = Environment.of(optionsService.getOptions());
    } catch (Exception e) {
        String msg = "安装失败";
        if (e instanceof TipException) {
            msg = e.getMessage();
        } else {
            log.error(msg, e);
        }
        return RestResponse.fail(msg);
    }
    return RestResponse.ok();
}

17 Source : CategoryController.java
with MIT License
from tfssweb

@Route(value = "delete")
@JSON
public RestResponse delete(@Param int mid) {
    try {
        metreplacedervice.delete(mid);
        siteService.cleanCache(Types.C_STATISTICS);
    } catch (Exception e) {
        String msg = "删除失败";
        if (e instanceof TipException) {
            msg = e.getMessage();
        } else {
            log.error(msg, e);
        }
        return RestResponse.fail(msg);
    }
    return RestResponse.ok();
}

16 Source : CategoryController.java
with MIT License
from tfssweb

@Route(value = "save", method = HttpMethod.POST)
@JSON
public RestResponse saveCategory(@Param String cname, @Param Integer mid) {
    try {
        metreplacedervice.saveMeta(Types.CATEGORY, cname, mid);
        siteService.cleanCache(Types.C_STATISTICS);
    } catch (Exception e) {
        String msg = "分类保存失败";
        if (e instanceof TipException) {
            msg = e.getMessage();
        } else {
            log.error(msg, e);
        }
        return RestResponse.fail(msg);
    }
    return RestResponse.ok();
}

16 Source : AuthController.java
with MIT License
from tfssweb

@Route(value = "login", method = HttpMethod.POST)
@JSON
public RestResponse doLogin(LoginParam loginParam, Request request, Session session, Response response) {
    Integer error_count = cache.get("login_error_count");
    try {
        error_count = null == error_count ? 0 : error_count;
        if (null != error_count && error_count > 3) {
            return RestResponse.fail("您输入密码已经错误超过3次,请10分钟后尝试");
        }
        long count = new Users().where("username", loginParam.getUsername()).count();
        if (count < 1) {
            return RestResponse.fail("不存在该用户");
        }
        String pwd = EncryptKit.md5(loginParam.getUsername(), loginParam.getPreplacedword());
        Users user = new Users().where("username", loginParam.getUsername()).and("preplacedword", pwd).find();
        if (null == user) {
            return RestResponse.fail("用户名或密码错误");
        }
        session.attribute(TaleConst.LOGIN_SESSION_KEY, user);
        if (StringKit.isNotBlank(loginParam.getRemeberMe())) {
            TaleUtils.setCookie(response, user.getUid());
        }
        Users temp = new Users();
        temp.setLogged(DateKit.nowUnix());
        temp.update(user.getUid());
        log.info("登录成功:{}", loginParam.getUsername());
        cache.set("login_error_count", 0);
        new Logs(LogActions.LOGIN, loginParam.getUsername(), request.address(), user.getUid()).save();
    } catch (Exception e) {
        error_count += 1;
        cache.set("login_error_count", error_count, 10 * 60);
        String msg = "登录失败";
        if (e instanceof TipException) {
            msg = e.getMessage();
        } else {
            log.error(msg, e);
        }
        return RestResponse.fail(msg);
    }
    return RestResponse.ok();
}

13 Source : IndexController.java
with MIT License
from tfssweb

/**
 * 系统备份
 *
 * @return
 */
@Route(value = "backup", method = HttpMethod.POST)
@JSON
public RestResponse backup(@Param String bk_type, @Param String bk_path, Request request) {
    if (StringKit.isBlank(bk_type)) {
        return RestResponse.fail("请确认信息输入完整");
    }
    try {
        BackResponse backResponse = siteService.backup(bk_type, bk_path, "yyyyMMddHHmm");
        new Logs(LogActions.SYS_BACKUP, null, request.address(), this.getUid()).save();
        return RestResponse.ok(backResponse);
    } catch (Exception e) {
        String msg = "备份失败";
        if (e instanceof TipException) {
            msg = e.getMessage();
        } else {
            log.error(msg, e);
        }
        return RestResponse.fail(msg);
    }
}

13 Source : IndexController.java
with MIT License
from tfssweb

/**
 * 保存个人信息
 */
@Route(value = "profile", method = HttpMethod.POST)
@JSON
public RestResponse saveProfile(@Param String screen_name, @Param String email, Request request) {
    Users users = this.user();
    if (StringKit.isNotBlank(screen_name) && StringKit.isNotBlank(email)) {
        Users temp = new Users();
        temp.setScreen_name(screen_name);
        temp.setEmail(email);
        temp.update(users.getUid());
        new Logs(LogActions.UP_INFO, JsonKit.toString(temp), request.address(), this.getUid()).save();
    }
    return RestResponse.ok();
}

12 Source : IndexController.java
with MIT License
from tfssweb

/**
 * 修改密码
 */
@Route(value = "preplacedword", method = HttpMethod.POST)
@JSON
public RestResponse upPwd(@Param String old_preplacedword, @Param String preplacedword, Request request) {
    Users users = this.user();
    if (StringKit.isBlank(old_preplacedword) || StringKit.isBlank(preplacedword)) {
        return RestResponse.fail("请确认信息输入完整");
    }
    if (!users.getPreplacedword().equals(EncryptKit.md5(users.getUsername() + old_preplacedword))) {
        return RestResponse.fail("旧密码错误");
    }
    if (preplacedword.length() < 6 || preplacedword.length() > 14) {
        return RestResponse.fail("请输入6-14位密码");
    }
    try {
        Users temp = new Users();
        String pwd = EncryptKit.md5(users.getUsername() + preplacedword);
        temp.setPreplacedword(pwd);
        temp.update(users.getUid());
        new Logs(LogActions.UP_PWD, null, request.address(), this.getUid()).save();
        return RestResponse.ok();
    } catch (Exception e) {
        String msg = "密码修改失败";
        if (e instanceof TipException) {
            msg = e.getMessage();
        } else {
            log.error(msg, e);
        }
        return RestResponse.fail(msg);
    }
}

11 Source : AttachController.java
with MIT License
from tfssweb

@Route(value = "delete")
@JSON
public RestResponse delete(@Param Integer id, Request request) {
    try {
        Attach attach = new Attach().find(id);
        if (null == attach) {
            return RestResponse.fail("不存在该附件");
        }
        String fkey = attach.getFkey();
        siteService.cleanCache(Types.C_STATISTICS);
        String filePath = CLreplacedPATH.substring(0, CLreplacedPATH.length() - 1) + fkey;
        java.nio.file.Path path = Paths.get(filePath);
        log.info("Delete attach: [{}]", filePath);
        if (Files.exists(path)) {
            Files.delete(path);
        }
        attach.delete(id);
        new Logs(LogActions.DEL_ATTACH, fkey, request.address(), this.getUid()).save();
    } catch (Exception e) {
        String msg = "附件删除失败";
        if (e instanceof TipException) {
            msg = e.getMessage();
        } else {
            log.error(msg, e);
        }
        return RestResponse.fail(msg);
    }
    return RestResponse.ok();
}

10 Source : IndexController.java
with MIT License
from tfssweb

/**
 * 保存系统设置
 */
@Route(value = "setting", method = HttpMethod.POST)
@JSON
public RestResponse saveSetting(@Param String site_theme, Request request) {
    try {
        Map<String, List<String>> querys = request.parameters();
        optionsService.saveOptions(querys);
        Environment config = Environment.of(optionsService.getOptions());
        TaleConst.OPTIONS = config;
        new Logs(LogActions.SYS_SETTING, JsonKit.toString(querys), request.address(), this.getUid()).save();
        return RestResponse.ok();
    } catch (Exception e) {
        String msg = "保存设置失败";
        if (e instanceof TipException) {
            msg = e.getMessage();
        } else {
            log.error(msg, e);
        }
        return RestResponse.fail(msg);
    }
}

9 Source : IndexController.java
with MIT License
from tfssweb

/**
 * 保存高级选项设置
 *
 * @return
 */
@Route(value = "advanced", method = HttpMethod.POST)
@JSON
public RestResponse doAdvanced(@Param String cache_key, @Param String block_ips, @Param String plugin_name, @Param String rewrite_url, @Param String allow_install) {
    // 清除缓存
    if (StringKit.isNotBlank(cache_key)) {
        if ("*".equals(cache_key)) {
            cache.clean();
        } else {
            cache.del(cache_key);
        }
    }
    // 要过过滤的黑名单列表
    if (StringKit.isNotBlank(block_ips)) {
        optionsService.saveOption(Types.BLOCK_IPS, block_ips);
        TaleConst.BLOCK_IPS.addAll(Arrays.asList(block_ips.split(",")));
    } else {
        optionsService.saveOption(Types.BLOCK_IPS, "");
        TaleConst.BLOCK_IPS.clear();
    }
    // 处理卸载插件
    if (StringKit.isNotBlank(plugin_name)) {
        String key = "plugin_";
        // 卸载所有插件
        if (!"*".equals(plugin_name)) {
            key = "plugin_" + plugin_name;
        } else {
            optionsService.saveOption(Types.ATTACH_URL, Commons.site_url());
        }
        optionsService.deleteOption(key);
    }
    // 是否允许重新安装
    if (StringKit.isNotBlank(allow_install)) {
        optionsService.saveOption("allow_install", allow_install);
        TaleConst.OPTIONS.toMap().put("allow_install", allow_install);
    }
    return RestResponse.ok();
}

5 Source : AttachController.java
with MIT License
from tfssweb

/**
 * 上传文件接口
 * <p>
 * 返回格式
 *
 * @param request
 * @return
 */
@Route(value = "upload", method = HttpMethod.POST)
@JSON
public RestResponse upload(Request request) {
    log.info("UPLOAD DIR = {}", TaleUtils.UP_DIR);
    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.getFileName();
            if ((f.getLength() / 1024) <= TaleConst.MAX_FILE_SIZE) {
                String fkey = TaleUtils.getFileKey(fname);
                String ftype = f.getContentType().contains("image") ? Types.IMAGE : Types.FILE;
                String filePath = TaleUtils.UP_DIR + fkey;
                try {
                    Files.write(Paths.get(filePath), f.getData());
                } catch (IOException e) {
                    log.error("", e);
                }
                Attach attach = new Attach();
                attach.setFname(fname);
                attach.setAuthor_id(uid);
                attach.setFkey(fkey);
                attach.setFtype(ftype);
                attach.setCreated(DateKit.nowUnix());
                attach.save();
                urls.add(attach);
                siteService.cleanCache(Types.C_STATISTICS);
            } else {
                Attach attach = new Attach();
                attach.setFname(fname);
                errorFiles.add(attach);
            }
        });
        if (errorFiles.size() > 0) {
            return RestResponse.builder().success(false).payload(errorFiles).build();
        }
        return RestResponse.ok(urls);
    } catch (Exception e) {
        String msg = "文件上传失败";
        if (e instanceof TipException) {
            msg = e.getMessage();
        } else {
            log.error(msg, e);
        }
        return RestResponse.fail(msg);
    }
}

0 Source : IndexController.java
with MIT License
from tfssweb

/**
 * 评论操作
 */
@CsrfToken(valid = true)
@PostRoute(value = "comment")
@JSON
public RestResponse comment(Request request, Response response, @HeaderParam String Referer, @Valid Comments comments) {
    if (StringKit.isBlank(Referer)) {
        return RestResponse.fail(ErrorCode.BAD_REQUEST);
    }
    if (!Referer.startsWith(Commons.site_url())) {
        return RestResponse.fail("非法评论来源");
    }
    String val = request.address() + ":" + comments.getCid();
    Integer count = cache.hget(Types.COMMENTS_FREQUENCY, val);
    if (null != count && count > 0) {
        return RestResponse.fail("您发表评论太快了,请过会再试");
    }
    comments.setAuthor(TaleUtils.cleanXSS(comments.getAuthor()));
    comments.setContent(TaleUtils.cleanXSS(comments.getContent()));
    comments.setAuthor(EmojiParser.parseToAliases(comments.getAuthor()));
    comments.setContent(EmojiParser.parseToAliases(comments.getContent()));
    comments.setIp(request.address());
    comments.setParent(comments.getCoid());
    try {
        commentsService.saveComment(comments);
        response.cookie("tale_remember_author", URLEncoder.encode(comments.getAuthor(), "UTF-8"), 7 * 24 * 60 * 60);
        response.cookie("tale_remember_mail", URLEncoder.encode(comments.getMail(), "UTF-8"), 7 * 24 * 60 * 60);
        if (StringKit.isNotBlank(comments.getUrl())) {
            response.cookie("tale_remember_url", URLEncoder.encode(comments.getUrl(), "UTF-8"), 7 * 24 * 60 * 60);
        }
        // 设置对每个文章30秒可以评论一次
        cache.hset(Types.COMMENTS_FREQUENCY, val, 1, 30);
        siteService.cleanCache(Types.C_STATISTICS);
        return RestResponse.ok();
    } catch (Exception e) {
        String msg = "评论发布失败";
        if (e instanceof TipException) {
            msg = e.getMessage();
        } else {
            log.error(msg, e);
        }
        return RestResponse.fail(msg);
    }
}