Pu Zhibing
2025-08-08 846f8e416e86ee5f5f33da0977d605f355bcf75a
UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/UserInfoServiceImpl.java
@@ -27,7 +27,6 @@
import com.stylefeng.guns.modular.taxi.model.PaymentRecord;
import com.stylefeng.guns.modular.taxi.service.IPaymentRecordService;
import com.stylefeng.guns.modular.taxi.service.ITransactionDetailsService;
import org.apache.commons.lang.time.DateUtils;
import org.apache.shiro.authc.SimpleAuthenticationInfo;
import org.apache.shiro.authc.UsernamePasswordToken;
import org.apache.shiro.authc.credential.HashedCredentialsMatcher;
@@ -51,7 +50,6 @@
import java.net.URLConnection;
import java.security.spec.AlgorithmParameterSpec;
import java.text.SimpleDateFormat;
import java.time.LocalDateTime;
import java.util.*;
import java.util.concurrent.TimeUnit;
import java.util.concurrent.locks.Lock;
@@ -236,6 +234,7 @@
        }
        //调中台接口查询用户
        List<QYTUserInfo> infoByPhone = UserUtil.getUserInfoByPhone(phone);
        String onconUUID = null;
        if (null == infoByPhone || infoByPhone.isEmpty()) {
            RegisterViaMobileRequest request = new RegisterViaMobileRequest();
            request.setMobile(phone);
@@ -248,6 +247,7 @@
            if (!"0".equals(register.getStatus())) {
                return ResultUtil.error(register.getDesc());
            }
            onconUUID = register.getOnconUUID();
        } else {
            boolean b = this.checkCaptcha(phone, code);
            if (!b) {
@@ -257,6 +257,7 @@
    
        if (null == userInfo) {
            userInfo = new UserInfo();
            userInfo.setAvatar("https://traffic.qytzt.cn/v1/AUTH_d8bef0a04db511f0b79d01a3e2b7587e/qyt20250702/imgs/management/d081e7a9-13d4-4eec-afb6-afd10885a664.png");
            userInfo.setPhone(phone);
            userInfo.setPassWord(ShiroKit.md5("", salt));
            userInfo.setNickName(nickName);
@@ -265,6 +266,9 @@
            userInfo.setConsumption(0D);
            userInfo.setBalance(0D);
            userInfo.setState(1);
            if(null != onconUUID){
                userInfo.setOnconUUID(onconUUID);
            }
            //用户所属企业
            if(null != registAreaCode){
@@ -334,6 +338,7 @@
        UserInfo userInfo = userInfoMapper.queryByPhone(phone);
        if (null == userInfo) {
            userInfo = new UserInfo();
            userInfo.setAvatar("https://traffic.qytzt.cn/v1/AUTH_d8bef0a04db511f0b79d01a3e2b7587e/qyt20250702/imgs/management/d081e7a9-13d4-4eec-afb6-afd10885a664.png");
            userInfo.setPhone(phone);
            userInfo.setPassWord(ShiroKit.md5("", salt));
            userInfo.setNickName(this.getDefaultName());
@@ -524,6 +529,7 @@
        }
        if (null == userInfo) {
            userInfo = new UserInfo();
            userInfo.setAvatar("https://traffic.qytzt.cn/v1/AUTH_d8bef0a04db511f0b79d01a3e2b7587e/qyt20250702/imgs/management/d081e7a9-13d4-4eec-afb6-afd10885a664.png");
            userInfo.setPassWord(ShiroKit.md5("", salt));
            userInfo.setRegistIp(registIp);
            userInfo.setSex(sex);
@@ -653,6 +659,7 @@
        int i =0;
        if(null == userInfo){
            userInfo = new UserInfo();
            userInfo.setAvatar("https://traffic.qytzt.cn/v1/AUTH_d8bef0a04db511f0b79d01a3e2b7587e/qyt20250702/imgs/management/d081e7a9-13d4-4eec-afb6-afd10885a664.png");
            if(ToolUtil.isEmpty(phone)){
                String phone2 = getPhone(sessionKey, encryptedData, iv);
                List<UserInfo> phone1 = userInfoMapper.selectList(new EntityWrapper<UserInfo>().eq("phone", phone2).eq("state",1).ne("flag",3));
@@ -868,7 +875,8 @@
            nickName = userInfo.getNickName();
        }
        //调中台接口查询用户
        List<QYTUserInfo> infoByPhone = UserUtil.getUserInfoByPhone(phone);
        String onconUUID = null;
                List<QYTUserInfo> infoByPhone = UserUtil.getUserInfoByPhone(phone);
        if (null == infoByPhone || infoByPhone.isEmpty()) {
            RegisterViaMobileRequest request = new RegisterViaMobileRequest();
            request.setMobile(phone);
@@ -881,6 +889,7 @@
            if (!"0".equals(register.getStatus())) {
                return ResultUtil.error(register.getDesc());
            }
            onconUUID = register.getOnconUUID();
        } else {
            boolean b = this.checkCaptcha(phone, code);
            if (!b) {
@@ -895,6 +904,7 @@
            userInfo1.setAvatar(userInfo.getAvatar());
            userInfo1.setSex(userInfo.getSex());
            userInfo1.setNickName(userInfo.getNickName());
            userInfo1.setOnconUUID(onconUUID);
            this.updateById(userInfo1);
        
            if (ToolUtil.isNotEmpty(loginType) && loginType.equals("Applets")) {//小程序登录后绑定手机号码
@@ -944,7 +954,7 @@
            loginWarpper.setPhone(2);
            return ResultUtil.success(loginWarpper);
        }
        userInfo.setOnconUUID(onconUUID);
        userInfo.setPhone(phone);
        userInfo.setUpdateTime(new Date());
        userInfo.setUpdateUser(userInfo.getId());
@@ -1627,4 +1637,60 @@
        }
        return ResultUtil.success(loginWarpper);
    }
    @Override
    public String addAppUser(String phone, String code, String areaCode) throws Exception {
        UserInfo userInfo = userInfoMapper.queryByPhone(phone);
        String nickName = null;
        if (null == userInfo) {
            nickName = this.getDefaultName();
        } else {
            nickName = userInfo.getNickName();
        }
        //调中台接口查询用户
        List<QYTUserInfo> infoByPhone = UserUtil.getUserInfoByPhone(phone);
        String onconUUID = null;
        if (null == infoByPhone || infoByPhone.isEmpty()) {
            RegisterViaMobileRequest request = new RegisterViaMobileRequest();
            request.setMobile(phone);
            request.setEncryptType("aesbase64");
            request.setPassword(AESUtils.encryptBase64("123456"));
            request.setNickname(nickName);
            request.setVerify_code(code);
            request.setVerify_code_type("0");
            RegisterViaMobile register = UserUtil.registerViaMobile(request);
            if (!"0".equals(register.getStatus())) {
                return null;
            }
            onconUUID = register.getOnconUUID();
        }
        if (null == userInfo) {
            userInfo = new UserInfo();
            userInfo.setAvatar("https://traffic.qytzt.cn/v1/AUTH_d8bef0a04db511f0b79d01a3e2b7587e/qyt20250702/imgs/management/d081e7a9-13d4-4eec-afb6-afd10885a664.png");
            userInfo.setPhone(phone);
            userInfo.setPassWord(ShiroKit.md5("", salt));
            userInfo.setNickName(nickName);
            userInfo.setIsAuth(1);
            userInfo.setConsumption(0D);
            userInfo.setBalance(0D);
            userInfo.setState(1);
            if(null != onconUUID){
                userInfo.setOnconUUID(onconUUID);
            }
            //用户所属企业
            if(null != areaCode){
                Company query = companyCityService.query(areaCode);
                userInfo.setCompanyId(null != query ? query.getId() : 1);
                userInfo.setRegistAreaCode(areaCode);
            }else {
                userInfo.setCompanyId(1);
            }
            this.insert(userInfo);
        }
        return userInfo.getId().toString();
    }
}