From e0c71e43f22a81c57720c7ab3595564c5a8e3aee Mon Sep 17 00:00:00 2001 From: aijinhui <aijinhui> Date: 星期二, 31 十月 2023 17:26:44 +0800 Subject: [PATCH] 清淤管理 --- ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdSyCarServiceImpl.java | 65 +++++++++++++++++++------------- 1 files changed, 39 insertions(+), 26 deletions(-) diff --git a/ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdSyCarServiceImpl.java b/ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdSyCarServiceImpl.java index 83789ea..479655e 100644 --- a/ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdSyCarServiceImpl.java +++ b/ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdSyCarServiceImpl.java @@ -17,25 +17,23 @@ import com.ruoyi.common.core.redis.RedisCache; import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.common.utils.uuid.IdUtils; -import com.ruoyi.utils.tools.Point; +import com.ruoyi.sy.domain.ArdAccessFence; +import com.ruoyi.utils.gis.GisUtil; +import com.ruoyi.utils.gis.Point; import com.ruoyi.scheduling.domian.SchedulingParam; import com.ruoyi.sy.domain.ArdSyCarDay; import com.ruoyi.sy.mapper.ArdSyCarDayMapper; -import com.ruoyi.utils.tools.GisTool; +import com.ruoyi.utils.minio.MinioUtil; import com.ruoyi.utils.websocket.util.WebSocketUtils; -import com.ruoyi.storage.minio.utils.MinioConfig; -import com.ruoyi.storage.minio.utils.MinioUtils; import com.ruoyi.sy.domain.ArdSyUser; import com.ruoyi.sy.gps31.PositionContainer; import com.ruoyi.sy.mapper.ArdSyUserMapper; -import com.ruoyi.system.domain.SysConfig; +import com.ruoyi.common.core.domain.entity.SysConfig; import com.ruoyi.system.mapper.SysConfigMapper; import com.ruoyi.system.mapper.SysUserMapper; import com.ruoyi.utils.forest.SYClient; import com.ruoyi.utils.result.Results; import io.minio.GetPresignedObjectUrlArgs; -import io.minio.ListObjectsArgs; -import io.minio.PutObjectArgs; import io.minio.Result; import io.minio.http.Method; import io.minio.messages.Item; @@ -45,6 +43,7 @@ import okhttp3.Response; import okhttp3.ResponseBody; import org.apache.commons.codec.digest.DigestUtils; +import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; import com.ruoyi.sy.mapper.ArdSyCarMapper; import com.ruoyi.sy.domain.ArdSyCar; @@ -82,8 +81,10 @@ RedisCache redisCache; @Resource private ArdSyCarDayMapper ardSyCarDayMapper; - @Resource - private MinioUtils minioUtil; + + @Value("${minio.endpoint}") + private String minioEndpoint; + private Map<Integer, Map<String, String>> logInMap = new HashMap(); private Map<String, Timer> userCarTimerMap = new HashMap(); @@ -147,7 +148,7 @@ objectNames.add(ardSyCar.getCarPicture().split("/sycar/")[1]); } } - minioUtil.removeObjects("sycar", objectNames); + MinioUtil.removeObjects("sycar", objectNames); return ardSyCarMapper.deleteArdSyCarByIds(ids); } @@ -264,17 +265,19 @@ @Override public List<Map<String, String>> getAllCarModel() { - boolean exsit = minioUtil.exitsBucket("sycar"); + boolean exsit = MinioUtil.exitsBucket("sycar"); if (exsit) { List<Map<String, String>> listObjetcName = new ArrayList<>(); try { // ListObjectsArgs listObjectsArgs = ListObjectsArgs.builder().prefix("carmodel/").bucket("sycar").build(); - Iterable<Result<Item>> myObjects = minioUtil.getObjectsByBucket("sycar","carmodel"); + Iterable<Result<Item>> myObjects = MinioUtil.getObjectsByBucket("sycar","carmodel"); for (Result<Item> result : myObjects) { Item item = result.get(); Map<String, String> map = new HashMap(); + String[] strArr = item.objectName().split("/"); + map.put("carType", strArr[1]); map.put("carModel", "sycar/" + item.objectName()); - switch (item.objectName()) { + /*switch (item.objectName()) { case "carmodel/aodi.glb": map.put("carType", "濂ヨ开"); break; @@ -313,11 +316,12 @@ break; default: break; - } + }*/ listObjetcName.add(map); } return listObjetcName; } catch (Exception ex) { + ex.printStackTrace(); //log.error("minio鑾峰彇妗朵笅瀵硅薄寮傚父锛�" + ex.getMessage()); } } @@ -332,16 +336,16 @@ if (ardSyCarr.getCarPicture() != null || !ardSyCarr.getCarPicture().equals("")) { String objectName = ardSyCarr.getCarPicture().split("/sycar/")[1]; objectNames.add(objectName); - minioUtil.removeObjects("sycar", objectNames); + MinioUtil.removeObjects("sycar", objectNames); } } //鍒ゆ柇鏂囦欢鏄惁涓虹┖ if (null == carPicture || 0 == carPicture.getSize()) { return ""; } - boolean exsit = minioUtil.exitsBucket("sycar"); + boolean exsit = MinioUtil.exitsBucket("sycar"); if (!exsit) { - boolean bucket = minioUtil.createBucket("sycar"); + boolean bucket = MinioUtil.createBucket("sycar"); } //鏂囦欢鍚� String originalFilename = carPicture.getOriginalFilename(); @@ -358,7 +362,7 @@ // .contentType(carPicture.getContentType()) // .build(); // MinioConfig.getMinioClient().putObject(putObjectArgs); - minioUtil.uploadObject("sycar",fileName,inputStream,carPicture.getSize(),carPicture.getContentType()); + MinioUtil.uploadObject("sycar",fileName,inputStream,carPicture.getSize(),carPicture.getContentType()); inputStream.close(); /*鑾峰彇url*/ GetPresignedObjectUrlArgs getPresignedObjectUrlArgs = GetPresignedObjectUrlArgs @@ -368,7 +372,7 @@ .method(Method.GET) .build(); //String presignedObjectUrl = MinioConfig.getMinioClient().getPresignedObjectUrl(getPresignedObjectUrlArgs); - String ObjectUrl = minioUtil.getBucketObjectUrl("sycar", fileName); + String ObjectUrl = MinioUtil.getBucketObjectUrl("sycar", fileName); if (id != null && !id.equals("")) {//id涓洪潪蹇呰 ArdSyCar ardSyCar = new ArdSyCar(); ardSyCar.setId(id); @@ -409,8 +413,9 @@ if (result != null) { if (result.get("carPicture") != null) { if (!((String) result.get("carPicture")).equals("")) { - String url = ((String) result.get("carPicture")).split("sycar")[0]; - String carModel = url + (String) result.get("carModel"); + /*String url = ((String) result.get("carPicture")).split("sycar")[0]; + String carModel = url + (String) result.get("carModel");*/ + String carModel = this.minioEndpoint + "/" + (String) result.get("carModel"); result.put("carModel", carModel); } } @@ -621,13 +626,13 @@ for (int i = 0; i < carList.size(); i++) { ArdSyCar ardSyCar = carList.get(i); if (carId.equals(ardSyCar.getCarId())) { - String url = ""; + /*String url = ""; if (ardSyCar.getCarPicture() != null) { if (!ardSyCar.getCarPicture().equals("")) { url = ardSyCar.getCarPicture().split("sycar")[0]; } - } - m.put("carModel", url + ardSyCar.getCarModel());//zns + }*/ + m.put("carModel", this.minioEndpoint + "/" + ardSyCar.getCarModel());//zns //m.put("carModel",ardSyCar.getCarModel()); m.put("carTypeArd", ardSyCar.getCarType()); m.put("carBrand", ardSyCar.getCarBrand()); @@ -1086,7 +1091,7 @@ List<Map<String, Object>> carGPSMap = (List<Map<String, Object>>) carGPSTrack.get("list"); Double lng = Double.valueOf((String) carGPSMap.get(0).get("lng")); Double lat = Double.valueOf((String) carGPSMap.get(0).get("lat")); - double distance = GisTool.getDistance( new double[]{longitude,latitude}, new double[]{lng, lat}); + double distance = GisUtil.getDistance( new double[]{longitude,latitude}, new double[]{lng, lat}); if (distance <= radius) { carMap.put("longitude",lng); carMap.put("latitude",lat); @@ -1145,7 +1150,7 @@ Double lng = Double.valueOf((String) carGPSMap.get(0).get("lng")); Double lat = Double.valueOf((String) carGPSMap.get(0).get("lat")); Point point = new Point(lng,lat); - boolean inPolygon = GisTool.isInPolygon(point, partitionLocation); + boolean inPolygon = GisUtil.isInPolygon(point, partitionLocation); if (inPolygon) { carMap.put("longitude", lng); carMap.put("latitude", lat); @@ -1159,4 +1164,12 @@ } return filteredList; } + + @Override + public List<ArdSyCar> all() { + QueryWrapper<ArdSyCar> queryWrapper = new QueryWrapper<>(); + queryWrapper.ne("reserved_1",""); + return ardSyCarMapper.selectList(queryWrapper); + } + } -- Gitblit v1.9.3