From fcb6180bd21570861ded10db86a629096fa34e21 Mon Sep 17 00:00:00 2001 From: attiya <2413103649@qq.com> Date: Tue, 22 Apr 2025 16:13:39 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E6=8D=A2=E7=94=B5=E5=B7=A5=E5=8D=95?= =?UTF-8?q?=E7=94=9F=E6=88=90=E9=98=B2=E6=AD=A2=E9=87=8D=E5=A4=8D=E3=80=81?= =?UTF-8?q?=E8=87=AA=E5=8A=A8=E7=94=9F=E6=88=90=E3=80=81=E8=87=AA=E5=8A=A8?= =?UTF-8?q?=E5=AE=8C=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/ebike/feign/clients/MaintenanceFeignClient.java | 9 +++++++++ .../service/impl/EbikeBikeOrderServiceImpl.java | 4 +++- .../com/cdzy/ebikereport/component/ReoprtHandler.java | 8 ++++++-- 3 files changed, 18 insertions(+), 3 deletions(-) diff --git a/ebike-feign/src/main/java/com/ebike/feign/clients/MaintenanceFeignClient.java b/ebike-feign/src/main/java/com/ebike/feign/clients/MaintenanceFeignClient.java index 2cc0fb05..ea315d58 100644 --- a/ebike-feign/src/main/java/com/ebike/feign/clients/MaintenanceFeignClient.java +++ b/ebike-feign/src/main/java/com/ebike/feign/clients/MaintenanceFeignClient.java @@ -81,4 +81,13 @@ public interface MaintenanceFeignClient { */ @PostMapping("ebikeBikeInfo/deleteBatteryInfo") JsonResult> deleteBatteryInfo(@RequestBody List batteryCodes); + + /** + * 根据ecuSn生成换电工单 + * + * @param ecuSn 中控编号编号 + * @return 结果 + */ + @GetMapping("ebikeOrder/changeBattery") + JsonResult changeBattery(@RequestParam(name = "ecuSn") String ecuSn); } diff --git a/ebike-maintenance/src/main/java/com/cdzy/ebikemaintenance/service/impl/EbikeBikeOrderServiceImpl.java b/ebike-maintenance/src/main/java/com/cdzy/ebikemaintenance/service/impl/EbikeBikeOrderServiceImpl.java index 6d0c3d19..03fd447e 100644 --- a/ebike-maintenance/src/main/java/com/cdzy/ebikemaintenance/service/impl/EbikeBikeOrderServiceImpl.java +++ b/ebike-maintenance/src/main/java/com/cdzy/ebikemaintenance/service/impl/EbikeBikeOrderServiceImpl.java @@ -39,10 +39,11 @@ public class EbikeBikeOrderServiceImpl extends ServiceImpl 0 && resGpsDto.getSoc() < 20){ + maintenanceFeignClient.changeBattery(deviceId); } resGpsDto.setEcuSn(deviceId); resGpsDto.setHelmetExit(helmet); From d27d38df2d7c922db05d852c6f154c8dc4284b12 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B0=8F=E6=9C=B1?= <2671189764@qq.com> Date: Tue, 22 Apr 2025 16:17:09 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=BD=A6=E8=BE=86?= =?UTF-8?q?=E4=B8=8A=E6=9E=B6=E8=AE=B0=E5=BD=95=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/EbikeBikeInfoServiceImpl.java | 47 ++++++++++++++++++- 1 file changed, 45 insertions(+), 2 deletions(-) diff --git a/ebike-maintenance/src/main/java/com/cdzy/ebikemaintenance/service/impl/EbikeBikeInfoServiceImpl.java b/ebike-maintenance/src/main/java/com/cdzy/ebikemaintenance/service/impl/EbikeBikeInfoServiceImpl.java index be87f1a8..adb1010a 100644 --- a/ebike-maintenance/src/main/java/com/cdzy/ebikemaintenance/service/impl/EbikeBikeInfoServiceImpl.java +++ b/ebike-maintenance/src/main/java/com/cdzy/ebikemaintenance/service/impl/EbikeBikeInfoServiceImpl.java @@ -41,6 +41,7 @@ import java.time.Duration; import java.time.Instant; import java.time.LocalDateTime; import java.time.ZoneId; +import java.time.format.DateTimeFormatter; import java.util.*; import java.util.stream.Collectors; @@ -55,8 +56,7 @@ import static com.cdzy.ebikemaintenance.model.pojo.table.EbikeBikeInfoTableDef.E import static com.cdzy.ebikemaintenance.model.pojo.table.EbikeBikeOrderTableDef.EBIKE_BIKE_ORDER; import static com.cdzy.ebikemaintenance.model.pojo.table.EbikeCarStatusInfoTableDef.EBIKE_CAR_STATUS_INFO; import static com.cdzy.ebikemaintenance.model.pojo.table.EbikeEcuInfoTableDef.EBIKE_ECU_INFO; -import static com.mybatisflex.core.query.QueryMethods.max; -import static com.mybatisflex.core.query.QueryMethods.select; +import static com.mybatisflex.core.query.QueryMethods.*; /** * 车辆基本信息 服务层实现。 @@ -111,6 +111,8 @@ public class EbikeBikeInfoServiceImpl extends ServiceImpl{}", e.getMessage() + Arrays.toString(e.getStackTrace())); @@ -1082,4 +1085,44 @@ public class EbikeBikeInfoServiceImpl extends ServiceImpl bikeCode = reqBulkDeliveryDto.getBikeCode(); + String tokenValue = StpUtil.getTokenValue(); + JsonResult result = staffFeignClient.getInfoByToken(tokenValue); + if (result.getCode() != Code.SUCCESS) { + throw new RuntimeException("获取用户信息失败"); + } + StaffFeign staffFeign = result.getData(); + // 获取当前操作用户和时间 + String operatorName = staffFeign.getStaffId().toString(); + LocalDateTime currentTime = LocalDateTime.now(); + String batch = currentTime.format(DateTimeFormatter.ofPattern("yyyyMMddHHmmss")); // 格式化当前时间为“年月日时分秒”形式 + + // 创建用于批量插入的记录列表 + List recordsList = new ArrayList<>(bikeCode.size()); + // 遍历车辆编号列表,生成每个记录对象 + for (String bikeId : bikeCode) { + EbikeVehicleListingRecords record = new EbikeVehicleListingRecords(); + record.setBatch(batch); + record.setBikeCode(bikeId); + String reginId = reqBulkDeliveryDto.getReginId(); + // 根据reginId是否为空设置内容 + record.setContent(reginId.isEmpty() ? "车辆批量下架" : "车辆批量上架"); + record.setOperationType(reginId.isEmpty() ? 0 : 1); + record.setOperateUser(operatorName); + record.setOperateTime(currentTime); + record.setReginId(reqBulkDeliveryDto.getReginId()); + recordsList.add(record); + } + // 如果有记录,则批量插入 + if (!recordsList.isEmpty()) { + ebikeVehicleListingRecordsMapper.insertBatch(recordsList); + } + } } From c7049ecc928d80e31a7d24c6907d2c413dae3ba6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B0=8F=E6=9C=B1?= <2671189764@qq.com> Date: Tue, 22 Apr 2025 16:21:51 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=BD=A6=E8=BE=86?= =?UTF-8?q?=E4=B8=8B=E6=9E=B6=E8=AE=B0=E5=BD=95=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/cdzy/ebikemaintenance/model/pojo/EbikeBikeOrder.java | 2 +- .../ebikemaintenance/service/impl/EbikeBikeInfoServiceImpl.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/ebike-maintenance/src/main/java/com/cdzy/ebikemaintenance/model/pojo/EbikeBikeOrder.java b/ebike-maintenance/src/main/java/com/cdzy/ebikemaintenance/model/pojo/EbikeBikeOrder.java index 89bb8e61..551000fc 100644 --- a/ebike-maintenance/src/main/java/com/cdzy/ebikemaintenance/model/pojo/EbikeBikeOrder.java +++ b/ebike-maintenance/src/main/java/com/cdzy/ebikemaintenance/model/pojo/EbikeBikeOrder.java @@ -47,7 +47,7 @@ public class EbikeBikeOrder implements Serializable { private Long orderCode; /** - * 工单类型 1 维修工单 2 换电工单 + * 工单类型 1 维修工单 2 换电工单 3 调度工单 */ private String orderType; diff --git a/ebike-maintenance/src/main/java/com/cdzy/ebikemaintenance/service/impl/EbikeBikeInfoServiceImpl.java b/ebike-maintenance/src/main/java/com/cdzy/ebikemaintenance/service/impl/EbikeBikeInfoServiceImpl.java index 083d5016..aa713024 100644 --- a/ebike-maintenance/src/main/java/com/cdzy/ebikemaintenance/service/impl/EbikeBikeInfoServiceImpl.java +++ b/ebike-maintenance/src/main/java/com/cdzy/ebikemaintenance/service/impl/EbikeBikeInfoServiceImpl.java @@ -113,7 +113,7 @@ public class EbikeBikeInfoServiceImpl extends ServiceImpl