xuhy
2025-03-07 193945d70b561bc96bb608b47b9b2e4dba3b45b2
ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/WxLoginController.java
@@ -118,22 +118,26 @@
        appletUserDecodeData.setOpenId(openid);
        // 先使用openId和当前手机号进行查询
        TTenant tenant = tTenantService.getOne(Wrappers.lambdaQuery(TTenant.class)
                .eq(TTenant::getOpenId, appletUserDecodeData.getOpenId())
                .eq(TTenant::getPhone, appletUserDecodeData.getPhoneNumber()));
                .and(e->e.eq(TTenant::getOpenId, appletUserDecodeData.getOpenId()).or()
                .eq(TTenant::getPhone, appletUserDecodeData.getPhoneNumber())));
        if (tenant==null){
//            appUser.setTenantAttributes();
//            appUser.setTenantType();
            tenant = new TTenant();
            tenant.setPhone(appletUserDecodeData.getPhoneNumber());
            tenant.setAccount(appletUserDecodeData.getPhoneNumber());
            tenant.setPassword(SecurityUtils.encryptPassword(appletUserDecodeData.getPhoneNumber().substring(5)));
            tenant.setOpenId(appletUserDecodeData.getOpenId());
            // 手机号中间四位替换为*
            tenant.setResidentName(appletUserDecodeData.getPhoneNumber().replaceAll("(\\d{3})\\d{4}(\\d{4})", "$1****$2"));
            tTenantService.save(tenant);
        }
        LoginUserApplet loginUserApplet = new LoginUserApplet();
        TTenantResp tTenantResp = new TTenantResp();
        BeanUtils.copyProperties(tenant, tTenantResp);
        tTenantResp.setResidentName(appletUserDecodeData.getPhoneNumber());
        loginUserApplet.setUser(tTenantResp);
        loginUserApplet.setUserId(Long.valueOf(tenant.getId()));
        loginUserApplet.setUserId(tenant.getId());
        Map<String, Object> tokenInfos = new HashMap<>();
        tokenInfos.put("token",tokenService.createTokenApplet(loginUserApplet));
        tokenInfos.put("info",loginUserApplet);