From 71a01448f9e6de4a05381a74e415b9f0964cddef Mon Sep 17 00:00:00 2001 From: Pu Zhibing <393733352@qq.com> Date: 星期四, 24 七月 2025 19:21:23 +0800 Subject: [PATCH] 新增部分三方接口 --- DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java | 125 ++++++++++++++++++++--------------------- 1 files changed, 62 insertions(+), 63 deletions(-) diff --git a/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java b/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java index 641980f..354d01b 100644 --- a/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java +++ b/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java @@ -12,16 +12,16 @@ import com.stylefeng.guns.modular.system.model.*; import com.stylefeng.guns.modular.system.service.*; import com.stylefeng.guns.modular.system.util.*; -import com.stylefeng.guns.modular.system.util.qianyuntong.EmployeeUtil; import com.stylefeng.guns.modular.system.util.qianyuntong.SMSUtil; -import com.stylefeng.guns.modular.system.util.qianyuntong.model.EditStaffNodeRequest; -import com.stylefeng.guns.modular.system.util.qianyuntong.model.GetStaffNodeRequest; -import com.stylefeng.guns.modular.system.util.qianyuntong.model.StaffNodeInfo; +import com.stylefeng.guns.modular.system.util.qianyuntong.UserUtil; +import com.stylefeng.guns.modular.system.util.qianyuntong.model.QYTUserInfo; +import com.stylefeng.guns.modular.system.util.qianyuntong.model.SendSmsRequest; import com.stylefeng.guns.modular.system.warpper.ActivityWarpper; import com.stylefeng.guns.modular.system.warpper.BaseWarpper; import com.stylefeng.guns.modular.system.warpper.LoginWarpper; import com.stylefeng.guns.modular.system.warpper.RegisteredWarpper; import com.stylefeng.guns.modular.taxi.service.IOrderTaxiService; +import io.rong.models.response.TokenResult; import org.apache.shiro.authc.SimpleAuthenticationInfo; import org.apache.shiro.authc.UsernamePasswordToken; import org.apache.shiro.authc.credential.HashedCredentialsMatcher; @@ -152,25 +152,23 @@ sb.append((int) (random.nextDouble() * 10)); } String authCode = sb.toString(); - String sms = "短信验证码【" + authCode + "】已发到您的手机,验证码将在5分钟后失效,请及时登录!"; - - //发送验证码短信 - redisTemplate.opsForValue().set(phone, authCode, 5, TimeUnit.MINUTES);//设置五分钟过期 - String templateCode = ""; - switch (type) { - case 1: - templateCode = "SMS_154775435";//身份验证 - break; - case 2: - templateCode = "SMS_154775434";//登录确认 - break; - case 3: - templateCode = "SMS_154775432";//用户注册 - break; - case 4: - templateCode = "SMS_154775431";//修改密码 - break; - } +// //发送验证码短信 +// redisTemplate.opsForValue().set(phone, authCode, 5, TimeUnit.MINUTES);//设置五分钟过期 +// String templateCode = ""; +// switch (type) { +// case 1: +// templateCode = "SMS_154775435";//身份验证 +// break; +// case 2: +// templateCode = "SMS_154775434";//登录确认 +// break; +// case 3: +// templateCode = "SMS_154775432";//用户注册 +// break; +// case 4: +// templateCode = "SMS_154775431";//修改密码 +// break; +// } // String sData = aLiSendSms.sendSms(phone, "SMS_229715276", "{\"code\":\"" + authCode + "\"}"); // JSONObject jsonObject = JSON.parseObject(sData); // String message = jsonObject.getString("Message"); @@ -178,7 +176,16 @@ // return ResultUtil.error(""); // } // System.out.println(sms); - SMSUtil.sendVerifyCode(phone); + SendSmsRequest request = new SendSmsRequest(); + request.setDestAddress(phone); + request.setTemplateId("TPL202410290001"); + Map<String, String> templateParams = new HashMap<>(); + templateParams.put("code", authCode); + request.setTemplateParams(templateParams); + request.setCode("code"); + request.setSpId("T8d5hdfg"); + SMSUtil.sendSms(request); + redisTemplate.opsForValue().set(phone, authCode, 5, TimeUnit.MINUTES);//设置五分钟过期 return ResultUtil.success(); } @@ -338,11 +345,23 @@ @Override public ResultUtil updateDriver(RegisteredWarpper registeredWarpper, Integer uid) throws Exception { Driver driver = this.selectById(uid); + //调用中台接口校验实名信息 + Boolean auth = UserUtil.idCardAuth(registeredWarpper.getName(), registeredWarpper.getIdCard()); + if(!auth){ + return ResultUtil.error("实名认证失败,请输入正确的姓名和身份证号码"); + } driver.setName(registeredWarpper.getName()); driver.setSex(registeredWarpper.getSex()); driver.setIdCard(registeredWarpper.getIdCard()); - String code = registeredWarpper.getPlaceOfEmployment(); + driver.setArea(registeredWarpper.getArea()); + driver.setAreaCode(registeredWarpper.getAreaCode()); + driver.setCity(registeredWarpper.getCity()); + driver.setCityCode(registeredWarpper.getCityCode()); + driver.setProvince(registeredWarpper.getProvince()); + driver.setProvinceCode(registeredWarpper.getProvinceCode()); + + String code = registeredWarpper.getAreaCode(); Company query = companyCityService.query(code); if(null == query){ return ResultUtil.error("选择从业地暂未开通业务"); @@ -389,7 +408,7 @@ boolean b = true; for(String t : split){ for(DriverService driverService : list){ - if(driverService.getType() == Integer.valueOf(t)){ + if(driverService.getType().equals(Integer.valueOf(t))){ b = false; break; } @@ -465,13 +484,10 @@ if (null == driver) { return ResultUtil.error("账号未注册"); } + Company company = companyMapper.selectById(driver.getCompanyId()); //查询中台员工数据 - GetStaffNodeRequest request = new GetStaffNodeRequest(); - request.setEmpId(driver.getEmpId()); - request.setEntercode(driver.getEntercode()); - request.setMobile(driver.getPhone()); - StaffNodeInfo staffNode = EmployeeUtil.getStaffNode(request); - if (null == staffNode || staffNode.getIsValid().equals("0")) { + List<QYTUserInfo> userInfoByPhone = UserUtil.getUserInfoByPhone(driver.getPhone(), company.getEnterCode()); + if (null == userInfoByPhone || userInfoByPhone.size() == 0) { return ResultUtil.error("账号未注册"); } @@ -499,7 +515,9 @@ loginWarpper.setToken(token); loginWarpper.setAppid(UUIDUtil.getRandomCode()); loginWarpper.setState(ToolUtil.isEmpty(driver.getIdCard()) ? 1 : 0); - + TokenResult token1 = RongCloudUtil.getToken(driver.getId().toString(), driver.getName(), driver.getHeadImgUrl()); + loginWarpper.setRongYunToken(token1.getToken()); + //创建高德猎鹰的终端数据 String tid = gdFalconUtil.createTerminal(phone); loginWarpper.setServerId(gdFalconUtil.getServerId()); @@ -781,31 +799,10 @@ return ResultUtil.error("验证码无效"); } Driver driver1 = this.selectById(uid); - GetStaffNodeRequest request = new GetStaffNodeRequest(); - request.setEmpId(driver1.getEmpId()); - request.setEntercode(driver1.getEntercode()); - request.setMobile(driver1.getPhone()); - StaffNodeInfo staffNode = EmployeeUtil.getStaffNode(request); - if ("0".equals(staffNode.getIsValid())) { - return ResultUtil.error("无效的司机账号"); - } - EditStaffNodeRequest editStaffNodeRequest = new EditStaffNodeRequest(); - editStaffNodeRequest.setEmpId(staffNode.getEmpId()); - editStaffNodeRequest.setMobile(staffNode.getMphone()); - editStaffNodeRequest.setEntercode(staffNode.getEnterNum()); - editStaffNodeRequest.setEnterId(staffNode.getEnterId()); - editStaffNodeRequest.setEmpName(staffNode.getEmpName()); - editStaffNodeRequest.setEmpNickname(staffNode.getEmpNickname()); - editStaffNodeRequest.setLoginNo(staffNode.getLoginNo()); - editStaffNodeRequest.setMphone(phone); - editStaffNodeRequest.setEmail(staffNode.getEmail()); - editStaffNodeRequest.setDeptId(staffNode.getDeptId()); - editStaffNodeRequest.setPositionId(1); - editStaffNodeRequest.setSuperLevel(0); - editStaffNodeRequest.setHideMobile(0); - Boolean editStaffNode = EmployeeUtil.editStaffNode(editStaffNodeRequest); - if (!editStaffNode) { - return ResultUtil.error("修改手机号码失败"); + Company company = companyMapper.selectById(driver1.getCompanyId()); + List<QYTUserInfo> userInfoByPhone = UserUtil.getUserInfoByPhone(driver1.getPhone(), company.getEnterCode()); + if (null == userInfoByPhone || userInfoByPhone.size() == 0) { + return ResultUtil.error("账号未注册"); } driver1.setAccount(phone); @@ -856,10 +853,10 @@ if(driver.getState() == 3){ return ResultUtil.error("还在服务中,不能更换"); } -// boolean idle = carService.idle(carId); -// if(!idle){ -// return ResultUtil.error("车辆已被绑定了"); -// } + boolean idle = carService.idle(carId); + if(!idle){ + return ResultUtil.error("当前车辆已经有其他司机在使用,请更换车辆"); + } driver.setCarId(carId); this.updateById(driver); return ResultUtil.success(); @@ -1571,7 +1568,9 @@ //开始清除redis中无效的数据 Driver driver = driverMapper.selectById(id); String key = (String) redisTemplate.opsForValue().get("DRIVER_" + driver.getPhone()); - redisTemplate.delete(key);//删除个人信息数据 + if(ToolUtil.isNotEmpty(key)){ + redisTemplate.delete(key);//删除个人信息数据 + } redisTemplate.delete("DRIVER_" + driver.getPhone());//删除后台冻结相关缓存 redisTemplate.delete("DRIVER_" + id);//清除存储的token } -- Gitblit v1.7.1