liuxm
2024-04-26 794f864959f3ca2f3e2a705ae6ef1b26e97ff2c0
pms-parent/pms-web-base/src/main/java/com/dy/pmsBase/user/UserCtrl.java
@@ -6,6 +6,7 @@
import com.dy.common.webUtil.BaseResponse;
import com.dy.common.webUtil.BaseResponseUtils;
import com.dy.common.webUtil.QueryResultVo;
import com.dy.pmsGlobal.aop.Log;
import com.dy.pmsGlobal.pojoBa.BaUser;
import com.dy.pmsGlobal.util.Constant;
import com.mysql.cj.util.StringUtils;
@@ -60,6 +61,7 @@
    @PostMapping(path = "some", consumes = MediaType.APPLICATION_JSON_VALUE)
    //@SsoAop() //只有登录验证,没有权限验证
    @SsoPowerAop(power = "10100010") //登录与权限同时验证
    @Log("查询用户")
    public BaseResponse<QueryResultVo<List<BaUser>>> some(@RequestBody QueryVo vo) {
        try {
            QueryResultVo<List<BaUser>> res = this.sv.selectSome(vo);
@@ -78,6 +80,7 @@
    @GetMapping(path = "one")
    //@SsoAop() //只有登录验证,没有权限验证
    @SsoPowerAop(power = "10100010") //登录与权限同时验证
    @Log("查询单个用户")
    public BaseResponse<BaUser> one(String id) {
        try {
            return BaseResponseUtils.buildSuccess(this.sv.selectById(Long.parseLong(id)));
@@ -96,6 +99,7 @@
    @PostMapping(path = "save", consumes = MediaType.APPLICATION_JSON_VALUE)
    //@SsoAop() //只有登录验证,没有权限验证
    @SsoPowerAop(power = "10100011") //登录与权限同时验证
    @Log("保存用户信息")
    public BaseResponse<Boolean> save(@RequestBody @Valid BaUser po, BindingResult bindingResult) {
        if (bindingResult != null && bindingResult.hasErrors()) {
            return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
@@ -136,21 +140,48 @@
    @PostMapping(path = "update", consumes = MediaType.APPLICATION_JSON_VALUE)
    //@SsoAop() //只有登录验证,没有权限验证
    @SsoPowerAop(power = "10100011") //登录与权限同时验证
    @Log("更新用户信息")
    public BaseResponse<Boolean> update(@RequestBody @Validated BaUser po, BindingResult bindingResult) {
        if (bindingResult != null && bindingResult.hasErrors()) {
            return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
        }
        if (po.id == null) {
            return BaseResponseUtils.buildFail("无数据实体ID");
        }
        int count;
        try {
            if (bindingResult != null && bindingResult.hasErrors()) {
                return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
            }
            if (po.id == null) {
                return BaseResponseUtils.buildFail("无数据实体ID");
            }
            po.password = null;//设置为null,不做更新
            po.supperAdmin = null;//设置为null,不做更新
            po.deleted = null;//设置为null,不做更新
            count = this.sv.update(po);
        } catch (Exception e) {
            log.error("修改用户异常", e);
            return BaseResponseUtils.buildException(e.getMessage());
        }
        if (count <= 0) {
            return BaseResponseUtils.buildFail("数据库存储失败");
        } else {
            return BaseResponseUtils.buildSuccess(true);
        }
    }
    /**
     * 删除用户信息
     * @param id
     * @return
     */
    @GetMapping(path = "delete")
    @SsoPowerAop(power = "10100011") //登录与权限同时验证
    @Log("删除用户")
    public BaseResponse<Boolean> delete(Long id) {
        int count;
        try {
            BaUser po = new BaUser();
            po.id = id;
            po.deleted = true;
            count = this.sv.update(po);
        } catch (Exception e) {
            log.error("删除用户异常", e);
            return BaseResponseUtils.buildException(e.getMessage());
        }
        if (count <= 0) {
@@ -168,27 +199,29 @@
    //@GetMapping(path = "changePassword", consumes = MediaType.TEXT_PLAIN_VALUE)
    @GetMapping(path = "changePassword")
    @SsoAop()
    public BaseResponse<Boolean> changePassword(String id, String oldPassword, String newPassword) throws Exception {
        if (id == null) {
            return BaseResponseUtils.buildFail("id不能为空");
        }
        if (StringUtils.isNullOrEmpty(oldPassword)) {
            return BaseResponseUtils.buildFail("旧密码不能为空");
        }
        if (StringUtils.isNullOrEmpty(newPassword)) {
            return BaseResponseUtils.buildFail("新密码不能为空");
        }
        /*
        如果前端进行了base64加密
        oldPassword = new String(Base64.getDecoder().decode(oldPassword)) ;
        newPassword = new String(Base64.getDecoder().decode(newPassword)) ;
        */
        oldPassword = MD5.encrypt(oldPassword);//进行加密码
        newPassword = MD5.encrypt(newPassword);//进行加密码
        Long idLg = Long.parseLong(id);
    @Log("修改密码")
    public BaseResponse<Boolean> changePassword(String id, String oldPassword, String newPassword) {
        int count;
        try {
            if (id == null) {
            return BaseResponseUtils.buildFail("id不能为空");
            }
            if (StringUtils.isNullOrEmpty(oldPassword)) {
                return BaseResponseUtils.buildFail("旧密码不能为空");
            }
            if (StringUtils.isNullOrEmpty(newPassword)) {
                return BaseResponseUtils.buildFail("新密码不能为空");
            }
            /*
            如果前端进行了base64加密
            oldPassword = new String(Base64.getDecoder().decode(oldPassword)) ;
            newPassword = new String(Base64.getDecoder().decode(newPassword)) ;
            */
            oldPassword = MD5.encrypt(oldPassword);//进行加密码
            newPassword = MD5.encrypt(newPassword);//进行加密码
            Long idLg = Long.parseLong(id) ;
            BaUser po = this.sv.selectById(idLg);
            if (Objects.isNull(po)) {
                return BaseResponseUtils.buildFail("未得到用户,请求失败");
@@ -200,7 +233,7 @@
                }
            }
        } catch (Exception e) {
            log.error("保存用户异常", e);
            log.error("修改密码异常", e);
            return BaseResponseUtils.buildException(e.getMessage());
        }
        if (count <= 0) {
@@ -219,15 +252,16 @@
    @PostMapping(path = "resetPassword", consumes = MediaType.APPLICATION_JSON_VALUE)
    //@SsoAop() //只有登录验证,没有权限验证
    @SsoPowerAop(power = "10100011") //登录与权限同时验证
    public BaseResponse<Boolean> resetPassword(@RequestBody @Validated ResetPasswordVo vo, BindingResult bindingResult) throws Exception {
        if (bindingResult != null && bindingResult.hasErrors()) {
            return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
        }
        String password = MD5.encrypt(vo.password);//进行加密码
        Long idLg = Long.parseLong(vo.id);
    @Log("重置密码")
    public BaseResponse<Boolean> resetPassword(@RequestBody @Validated ResetPasswordVo vo, BindingResult bindingResult) {
        int count;
        try {
            BaUser po = this.sv.selectById(idLg);
            if (bindingResult != null && bindingResult.hasErrors()) {
                return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
            }
            String password = MD5.encrypt(vo.password);//进行加密码
            Long idLg = Long.parseLong(vo.id);
             BaUser po = this.sv.selectById(idLg);
            if (Objects.isNull(po)) {
                return BaseResponseUtils.buildFail("未得到用户,请求失败");
            } else {
@@ -240,7 +274,7 @@
        if (count <= 0) {
            return BaseResponseUtils.buildFail("数据库存储失败");
        } else {
            return BaseResponseUtils.buildSuccess("修改密码成功");
            return BaseResponseUtils.buildSuccess("重置密码成功");
        }
    }