1
luodangjia
2025-01-23 698ae84adaf1b8d0e8dd61d7279863fe17c1e81d
ruoyi-modules/ruoyi-company/src/main/java/com/ruoyi/company/controller/front/UserController.java
@@ -52,6 +52,7 @@
        UserDetail userDetail = new UserDetail();
        BeanUtils.copyProperties(user, userDetail);
        BeanUtils.copyProperties(company, userDetail);
        userDetail.setRegisterTime(user.getCreateTime());
        return R.ok(userDetail);
    }
@@ -83,7 +84,9 @@
    @PutMapping("/updateUserDetail")
    @Operation(summary = "编辑联系人信息",tags = {"企业端"})
    public R<Void> updateUserDetail(@RequestBody UserDetail userDetail) {
        User user = userService.getById(userDetail.getUserId());
        AppUser appLoginUser = SecurityUtils.getAppLoginUser();
        userDetail.setUserId(appLoginUser.getUserId());
        User user = userService.getById(appLoginUser.getUserId());
        BeanUtils.copyProperties(userDetail, user);
        userService.updateById(user);
        return R.ok();
@@ -103,15 +106,22 @@
        String verifyKey = CacheConstants.PHONE_CODE_KEY + StringUtils.nvl(updatePhone.getNewPhone(), "");
        String captcha = redisService.getCacheObject(verifyKey);
        if (captcha == null) {
            throw new CaptchaException("验证码错误");
        }
        String[] split = captcha.split(":");
        long l = Long.parseLong(split[1]);
        long l1 = System.currentTimeMillis();
        // 判断是否大于两分钟
        if (l1 - l > 2 * 60 * 1000) {
            throw new CaptchaException("验证码已失效");
        }
        redisService.deleteObject(verifyKey);
        captcha = split[0];
        if (!updatePhone.getCode().equalsIgnoreCase(captcha)) {
            throw new CaptchaException("验证码错误");
        }
        String password = SecurityUtils.encryptPassword(updatePhone.getPassword());
        if (!user.getPassword().equals(password)) {
        if (!SecurityUtils.matchesPassword(updatePhone.getPassword(), user.getPassword())) {
            return R.fail("密码错误");
        }
        user.setPhone(updatePhone.getNewPhone());
@@ -137,4 +147,16 @@
        userService.updateById(user);
        return R.ok();
    }
    /**
     * 通过公司名称和法人身份证号码查询用户信息
     */
    @GetMapping("/getUserByCompanyNameAndLegalId")
    public R<User> getUserByCompanyNameAndLegalId(String companyName, String cardId) {
        Company company = companyService.getOne(new LambdaQueryWrapper<Company>()
                .eq(Company::getCompanyName, companyName)
                .eq(Company::getIdCardNumber, cardId));
        User user = userService.getById(company.getUserId());
        return R.ok(user);
    }
}