#
vincentlu
2025-02-14 9af56f878cc3e22d3bce6ab53d67f3753470a7ac
rsf-server/src/main/java/com/vincent/rsf/server/system/controller/AuthController.java
@@ -5,14 +5,17 @@
import com.vincent.rsf.framework.common.BaseRes;
import com.vincent.rsf.framework.common.Cools;
import com.vincent.rsf.framework.common.R;
import com.vincent.rsf.framework.exception.CoolException;
import com.vincent.rsf.server.common.annotation.OperationLog;
import com.vincent.rsf.server.common.config.ConfigProperties;
import com.vincent.rsf.server.common.domain.BusinessRes;
import com.vincent.rsf.server.common.security.JwtSubject;
import com.vincent.rsf.server.common.service.EmailService;
import com.vincent.rsf.server.common.service.RedisService;
import com.vincent.rsf.server.common.utils.JwtUtil;
import com.vincent.rsf.server.system.controller.param.LoginParam;
import com.vincent.rsf.server.system.controller.param.RegisterParam;
import com.vincent.rsf.server.system.controller.param.TenantInitParam;
import com.vincent.rsf.server.system.controller.param.UpdatePasswordParam;
import com.vincent.rsf.server.system.controller.result.LoginResult;
import com.vincent.rsf.server.system.controller.result.MenuVo;
@@ -81,9 +84,12 @@
    }
    @GetMapping("/email/code")
    public R emailCode(@RequestParam("email") String email) {
    public R emailCode(@RequestParam(value = "email", required = false) String email) {
        if (Cools.isEmpty(email)) {
            return R.parse(BaseRes.PARAM);
        }
        if (!emailService.isValid(email)) {
            return R.error("Please enter a valid email address.");
        }
        if (null != userService.getByEmail(email, null)) {
            return R.error("Email Already Exist");
@@ -106,29 +112,28 @@
            return R.parse(BaseRes.PARAM);
        }
        // verify code
        String cacheCode = redisService.getValue(EmailType.REGISTER_VERIFY.toString(), param.getEmail());
        if (Cools.isEmpty(cacheCode)) {
            return R.error("The verification code has expired.");
        if (!param.getCode().equals(configProperties.getSecurityCode())) {
            String cacheCode = redisService.getValue(EmailType.REGISTER_VERIFY.toString(), param.getEmail());
            if (Cools.isEmpty(cacheCode)) {
                return R.error("The verification code has expired.");
            }
            if (!cacheCode.equals(param.getCode())) {
                return R.error("The verification code is incorrect.");
            }
        }
        if (!cacheCode.equals(param.getCode())) {
            return R.error("The verification code is incorrect.");
        }
        redisService.delete(EmailType.REGISTER_VERIFY.toString(), param.getEmail());
        // register
        TenantInitParam initParam = new TenantInitParam();
        initParam.setEmail(param.getEmail());
        initParam.setUsername(param.getUsername());
        initParam.setPassword(param.getPassword());
        initParam.setName(param.getUsername());
        initParam.setFlag(param.getUsername());
        if (!tenantService.initTenant(initParam)) {
            throw new CoolException("Failed to register");
        }
//        User user = new User();
//        user.setUsername(param.getUsername());
//        user.setNickname(param.getUsername());
//        user.setPassword(userService.encodePassword(param.getPassword()));
//        user.setEmail(param.getEmail());
//        user.setEmailVerified(1);
//        user.setStatus(StatusType.ENABLE.val);
//        user.setCreateTime(new Date());
//        if (!userService.save(user)) {
//            throw new CoolException("");
//        }
        redisService.delete(EmailType.REGISTER_VERIFY.toString(), param.getEmail());
        return R.ok();
    }
@@ -193,7 +198,7 @@
            return R.error("Please Login First");
        }
        if (!userService.comparePassword(userService.getById(userId).getPassword(), param.getOldPassword())) {
            return R.parse("408-The Current Password Was Incorrect");
            return R.parse(BusinessRes.INVALID_PASSWORD);
        }
        User user = new User();
        user.setId(userId);