DriverYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/DriverController.java
@@ -34,6 +34,9 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.data.geo.Circle; import org.springframework.data.geo.Distance; import org.springframework.data.geo.Metrics; import org.springframework.data.geo.Point; import org.springframework.data.mongodb.core.MongoTemplate; import org.springframework.data.mongodb.core.geo.GeoJsonPoint; @@ -433,6 +436,42 @@ } } @ResponseBody @PostMapping("/base/driver/queryNearbyCar") @ApiOperation(value = "首页查询5公里范围内的车辆位置", tags = {"司机端-首页"}, notes = "") @ApiImplicitParams({ @ApiImplicitParam(value = "经度", name = "lon", required = true, dataType = "String"), @ApiImplicitParam(value = "纬度", name = "lat", required = true, dataType = "String") }) public ResultUtil<List<Map<String, Object>>> queryNearbyCar(String lon, String lat){ GeoJsonPoint geoJsonPoint = new GeoJsonPoint(Double.parseDouble(lon), Double.parseDouble(lat)); Distance distanceR = new Distance(5, Metrics.KILOMETERS); Circle circle = new Circle(geoJsonPoint, distanceR); Query query = Query.query(Criteria.where("point").withinSphere(circle)); List<DriverPosition> driverPositions = mongoTemplate.find(query, DriverPosition.class); List<Map<String, Object>> collect = new ArrayList<>(); if(driverPositions.size() > 0){ List<Integer> driverIds = driverPositions.stream().map(DriverPosition::getDriverId).collect(Collectors.toList()); List<Driver> drivers = driverService.selectList(new EntityWrapper<Driver>().in("id", driverIds) .eq("authState", 2).eq("state", 2)); collect = drivers.stream().map(driver -> { String value = (String) redisTemplate.opsForValue().get("dache:DRIVER" + driver.getId()); if(ToolUtil.isNotEmpty(value)){ Optional<DriverPosition> driverPosition = driverPositions.stream().filter(position -> position.getDriverId().equals(driver.getId())).findFirst(); Map<String, Object> map = new HashMap<>(); map.put("driverId", driver.getId()); map.put("name", driver.getName()); map.put("lot", driverPosition.isPresent() ? driverPosition.get().getPoint().getX() : ""); map.put("lat", driverPosition.isPresent() ? driverPosition.get().getPoint().getY() : ""); return map; } return null; }).filter(Objects::nonNull).collect(Collectors.toList()); } return ResultUtil.success(collect); } @ResponseBody @PostMapping("/api/driver/queryOrderDataFromDriver") DriverYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/Driver.java
@@ -400,6 +400,28 @@ @ApiModelProperty("是否已同步到中台(0:否,1:是)") private Integer isSynchronous; @ApiModelProperty("从业资格证图片") private String qualificationCertificateImg; @ApiModelProperty("车辆运营证图片") private String vehicleOperationCertificateImg; public String getQualificationCertificateImg() { return qualificationCertificateImg; } public void setQualificationCertificateImg(String qualificationCertificateImg) { this.qualificationCertificateImg = qualificationCertificateImg; } public String getVehicleOperationCertificateImg() { return vehicleOperationCertificateImg; } public void setVehicleOperationCertificateImg(String vehicleOperationCertificateImg) { this.vehicleOperationCertificateImg = vehicleOperationCertificateImg; } public String getShareImg() { return shareImg; } DriverYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java
@@ -408,6 +408,9 @@ driver.setDriverContactAddress(registeredWarpper.getDriverContactAddress()); driver.setDriverContactAddress_(registeredWarpper.getDriverContactAddress_()); driver.setPlaceOfPractice(registeredWarpper.getPlaceOfPractice()); driver.setQualificationCertificateImg(registeredWarpper.getQualificationCertificateImg()); driver.setVehicleOperationCertificateImg(registeredWarpper.getVehicleOperationCertificateImg()); driver.setPlaceOfPractice(registeredWarpper.getPlaceOfPractice()); Calendar calendar = Calendar.getInstance(); calendar.setTime(registeredWarpper.getGetDriverLicenseDate()); DriverYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/RegisteredWarpper.java
@@ -37,6 +37,10 @@ private String headImgUrl; @ApiModelProperty("驾驶证照片") private String driveCardImgUrl; @ApiModelProperty("从业资格证图片") private String qualificationCertificateImg; @ApiModelProperty("从业资格证图片") private String vehicleOperationCertificateImg; @ApiModelProperty("网约车资格证照片") private String networkCarlssueImg; @ApiModelProperty("出租车资格证号") @@ -63,6 +67,22 @@ @ApiModelProperty("公司id") private Integer companyId; public String getQualificationCertificateImg() { return qualificationCertificateImg; } public void setQualificationCertificateImg(String qualificationCertificateImg) { this.qualificationCertificateImg = qualificationCertificateImg; } public String getVehicleOperationCertificateImg() { return vehicleOperationCertificateImg; } public void setVehicleOperationCertificateImg(String vehicleOperationCertificateImg) { this.vehicleOperationCertificateImg = vehicleOperationCertificateImg; } public Integer getCompanyId() { return companyId; }