k94314517
2025-01-03 57c04c4c4b7c6bd5470ac3e48bed5b0fceecc639
server/system_service/src/main/java/com/doumee/service/system/impl/SystemLoginServiceImpl.java
@@ -35,6 +35,7 @@
import org.springframework.context.annotation.Lazy;
import org.springframework.http.server.reactive.ServerHttpRequest;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
@@ -58,8 +59,10 @@
    private MemberMapper memberMapper;
    @Autowired
    private SystemDictDataBiz systemDictDataBiz;
    @Lazy
    @Autowired
    private SystemUserMapper systemUserMapper;
    @Lazy
    @Autowired
    private SmsEmailMapper smsEmailMapper;
@@ -74,9 +77,10 @@
    @Lazy
    @Autowired
    private SystemPermissionService systemPermissionService;
    @Lazy
    @Autowired
    private CaptchaService captchaService;
    @Lazy
    @Autowired
    private SystemLoginLogService systemLoginLogService;
@@ -250,7 +254,8 @@
                    .set(SystemUser::getOpenidHkInfo,null)
                    .set(SystemUser::getOpenidHkStatus,Constants.ZERO)
                    .eq(SystemUser::getOpenid,openid)
                    .eq(SystemUser::getType,user.getType()));
//                    .eq(SystemUser::getType,user.getType())
            );
            systemUserMapper.update(null,new UpdateWrapper<SystemUser>().lambda()
                    .set(SystemUser::getOpenid,openid)
                    .set(SystemUser::getOpenidHkStatus,Constants.ZERO)
@@ -370,8 +375,6 @@
        }else{
            throw new BusinessException(ResponseStatus.NO_ALLOW_LOGIN);
        }
        String pwd = Utils.Secure.encryptPassword(new String(dto.getPassword()), user.getSalt());
        // 比较密码
        if( !StringUtils.equals(pwd, user.getPassword())){
@@ -411,6 +414,7 @@
    }
    @Override
    @Transactional
    public LoginUserInfo loginDriverWithCode(LoginPhoneDTO param, ServerHttpRequest request) {
        isCaptcheValide(param.getPhone(),param.getCode());//检查验证码
@@ -446,6 +450,7 @@
            systemUser = new SystemUser();
            systemUser.setCreateTime(new Date());
            systemUser.setCreateUser(1);
            systemUser.setDeleted(Boolean.FALSE);
            systemUser.setUsername(param.getPhone());
            systemUser.setRealname(null);
@@ -458,14 +463,17 @@
            systemUser.setSource(Constants.TWO);
            systemUser.setOpenid(param.getOpenid());
            systemUserMapper.insert(systemUser);
        }else{
            if(!Constants.equalsInteger(systemUser.getType(),Constants.memberType.driver)){
                throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"对不起,请使用正确的司机账号登陆!");
            }
        }
        dealOpenIdBiz(systemUser,param.getOpenid());
        Company company = new Company();
        if(Objects.nonNull(systemUser.getCompanyId())){
            company = companyMapper.selectById(systemUser.getCompanyId());
        }
        LoginUserInfo userInfo = LoginUserInfo.from(systemUser, null, null,null,null);
        LoginUserInfo userInfo = LoginUserInfo.from(systemUser, null, null,company,null);
        return  userInfo;
    }