Search in sources :

Example 1 with Log

use of com.ruoyi.common.log.annotation.Log in project RuoYi-Cloud-Oracle by yangzongzhuan.

the class SysProfileController method avatar.

/**
 * 头像上传
 */
@Log(title = "用户头像", businessType = BusinessType.UPDATE)
@PostMapping("/avatar")
public AjaxResult avatar(@RequestParam("avatarfile") MultipartFile file) throws IOException {
    if (!file.isEmpty()) {
        LoginUser loginUser = SecurityUtils.getLoginUser();
        R<SysFile> fileResult = remoteFileService.upload(file);
        if (StringUtils.isNull(fileResult) || StringUtils.isNull(fileResult.getData())) {
            return AjaxResult.error("文件服务异常,请联系管理员");
        }
        String url = fileResult.getData().getUrl();
        if (userService.updateUserAvatar(loginUser.getUsername(), url)) {
            AjaxResult ajax = AjaxResult.success();
            ajax.put("imgUrl", url);
            // 更新缓存用户头像
            loginUser.getSysUser().setAvatar(url);
            tokenService.setLoginUser(loginUser);
            return ajax;
        }
    }
    return AjaxResult.error("上传图片异常,请联系管理员");
}
Also used : AjaxResult(com.ruoyi.common.core.web.domain.AjaxResult) LoginUser(com.ruoyi.system.api.model.LoginUser) SysFile(com.ruoyi.system.api.domain.SysFile) PostMapping(org.springframework.web.bind.annotation.PostMapping) Log(com.ruoyi.common.log.annotation.Log)

Example 2 with Log

use of com.ruoyi.common.log.annotation.Log in project RuoYi-Cloud-Oracle by yangzongzhuan.

the class SysProfileController method updatePwd.

/**
 * 重置密码
 */
@Log(title = "个人信息", businessType = BusinessType.UPDATE)
@PutMapping("/updatePwd")
public AjaxResult updatePwd(String oldPassword, String newPassword) {
    String username = SecurityUtils.getUsername();
    SysUser user = userService.selectUserByUserName(username);
    String password = user.getPassword();
    if (!SecurityUtils.matchesPassword(oldPassword, password)) {
        return AjaxResult.error("修改密码失败,旧密码错误");
    }
    if (SecurityUtils.matchesPassword(newPassword, password)) {
        return AjaxResult.error("新密码不能与旧密码相同");
    }
    if (userService.resetUserPwd(username, SecurityUtils.encryptPassword(newPassword)) > 0) {
        // 更新缓存用户密码
        LoginUser loginUser = SecurityUtils.getLoginUser();
        loginUser.getSysUser().setPassword(SecurityUtils.encryptPassword(newPassword));
        tokenService.setLoginUser(loginUser);
        return AjaxResult.success();
    }
    return AjaxResult.error("修改密码异常,请联系管理员");
}
Also used : SysUser(com.ruoyi.system.api.domain.SysUser) LoginUser(com.ruoyi.system.api.model.LoginUser) Log(com.ruoyi.common.log.annotation.Log) PutMapping(org.springframework.web.bind.annotation.PutMapping)

Example 3 with Log

use of com.ruoyi.common.log.annotation.Log in project RuoYi-Cloud-Oracle by yangzongzhuan.

the class SysJobController method changeStatus.

/**
 * 定时任务状态修改
 */
@RequiresPermissions("monitor:job:changeStatus")
@Log(title = "定时任务", businessType = BusinessType.UPDATE)
@PutMapping("/changeStatus")
public AjaxResult changeStatus(@RequestBody SysJob job) throws SchedulerException {
    SysJob newJob = jobService.selectJobById(job.getJobId());
    newJob.setStatus(job.getStatus());
    return toAjax(jobService.changeStatus(newJob));
}
Also used : SysJob(com.ruoyi.job.domain.SysJob) RequiresPermissions(com.ruoyi.common.security.annotation.RequiresPermissions) Log(com.ruoyi.common.log.annotation.Log) PutMapping(org.springframework.web.bind.annotation.PutMapping)

Example 4 with Log

use of com.ruoyi.common.log.annotation.Log in project RuoYi-Cloud-Plus by JavaLionLi.

the class SysProfileController method avatar.

/**
 * 头像上传
 */
@GlobalTransactional(rollbackFor = Exception.class)
@ApiOperation("头像上传")
@ApiImplicitParams({ @ApiImplicitParam(name = "avatarfile", value = "用户头像", paramType = "query", dataTypeClass = File.class, required = true) })
@Log(title = "用户头像", businessType = BusinessType.UPDATE)
@PostMapping("/avatar")
public R<Map<String, Object>> avatar(@RequestPart("avatarfile") MultipartFile file) throws IOException {
    if (!file.isEmpty()) {
        SysFile sysFile = remoteFileService.upload(file.getName(), file.getOriginalFilename(), file.getContentType(), file.getBytes());
        if (ObjectUtil.isNull(sysFile)) {
            return R.fail("文件服务异常,请联系管理员");
        }
        String url = sysFile.getUrl();
        if (userService.updateUserAvatar(LoginHelper.getUsername(), url)) {
            Map<String, Object> ajax = new HashMap<>();
            ajax.put("imgUrl", url);
            return R.ok(ajax);
        }
    }
    return R.fail("上传图片异常,请联系管理员");
}
Also used : HashMap(java.util.HashMap) SysFile(com.ruoyi.resource.api.domain.SysFile) GlobalTransactional(io.seata.spring.annotation.GlobalTransactional) ApiImplicitParams(io.swagger.annotations.ApiImplicitParams) Log(com.ruoyi.common.log.annotation.Log) ApiOperation(io.swagger.annotations.ApiOperation)

Example 5 with Log

use of com.ruoyi.common.log.annotation.Log in project RuoYi-Cloud-Plus by JavaLionLi.

the class SysProfileController method updatePwd.

/**
 * 重置密码
 */
@ApiOperation("重置密码")
@ApiImplicitParams({ @ApiImplicitParam(name = "oldPassword", value = "旧密码", paramType = "query", dataTypeClass = String.class), @ApiImplicitParam(name = "newPassword", value = "新密码", paramType = "query", dataTypeClass = String.class) })
@Log(title = "个人信息", businessType = BusinessType.UPDATE)
@PutMapping("/updatePwd")
public R<Void> updatePwd(String oldPassword, String newPassword) {
    SysUser user = userService.selectUserById(LoginHelper.getUserId());
    String password = user.getPassword();
    if (!BCrypt.checkpw(oldPassword, password)) {
        return R.fail("修改密码失败,旧密码错误");
    }
    if (BCrypt.checkpw(newPassword, password)) {
        return R.fail("新密码不能与旧密码相同");
    }
    if (userService.resetUserPwd(user.getUserName(), BCrypt.hashpw(newPassword)) > 0) {
        return R.ok();
    }
    return R.fail("修改密码异常,请联系管理员");
}
Also used : SysUser(com.ruoyi.system.api.domain.SysUser) ApiImplicitParams(io.swagger.annotations.ApiImplicitParams) Log(com.ruoyi.common.log.annotation.Log) ApiOperation(io.swagger.annotations.ApiOperation)

Aggregations

Log (com.ruoyi.common.log.annotation.Log)13 LoginUser (com.ruoyi.system.api.model.LoginUser)7 SysUser (com.ruoyi.system.api.domain.SysUser)6 PutMapping (org.springframework.web.bind.annotation.PutMapping)6 ApiOperation (io.swagger.annotations.ApiOperation)4 SaCheckPermission (cn.dev33.satoken.annotation.SaCheckPermission)3 AjaxResult (com.ruoyi.common.core.web.domain.AjaxResult)2 RequiresPermissions (com.ruoyi.common.security.annotation.RequiresPermissions)2 SysJob (com.ruoyi.job.domain.SysJob)2 SysFile (com.ruoyi.system.api.domain.SysFile)2 ApiImplicitParams (io.swagger.annotations.ApiImplicitParams)2 HashMap (java.util.HashMap)2 PostMapping (org.springframework.web.bind.annotation.PostMapping)2 ServiceException (com.ruoyi.common.core.exception.ServiceException)1 SysFile (com.ruoyi.resource.api.domain.SysFile)1 SysOss (com.ruoyi.resource.domain.SysOss)1 SysDept (com.ruoyi.system.api.domain.SysDept)1 SysUserExportVo (com.ruoyi.system.domain.vo.SysUserExportVo)1 GlobalTransactional (io.seata.spring.annotation.GlobalTransactional)1