From 272ef9933ec606c7dcd462d732a7341dc1ec0d61 Mon Sep 17 00:00:00 2001 From: dzl <863620989@qq.com> Date: Thu, 29 May 2025 17:09:35 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../feign/clients/OperateFeignClient.java | 7 +- .../model/pojo/EbikeBikeInfo.java | 8 +++ .../impl/EbikeBikeInfoServiceImpl.java | 36 +++++----- .../dto/request/ReqComponentOutRecordDto.java | 2 +- ...EbikeComponentEnterRecordsServiceImpl.java | 2 +- .../EbikeComponentOutRecordsServiceImpl.java | 6 +- .../impl/EbikeComponentServiceImpl.java | 68 +++++++++++++------ 7 files changed, 85 insertions(+), 44 deletions(-) diff --git a/ebike-feign/src/main/java/com/ebike/feign/clients/OperateFeignClient.java b/ebike-feign/src/main/java/com/ebike/feign/clients/OperateFeignClient.java index 69c7bd78..26d64a5f 100644 --- a/ebike-feign/src/main/java/com/ebike/feign/clients/OperateFeignClient.java +++ b/ebike-feign/src/main/java/com/ebike/feign/clients/OperateFeignClient.java @@ -11,10 +11,7 @@ import com.ebike.feign.model.rsp.FeignEbikeRegionDto; import com.cdzy.common.model.ReqComponentOutRecordDto; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.scheduling.annotation.Async; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.*; import java.util.List; import java.util.concurrent.CompletableFuture; @@ -171,5 +168,5 @@ public interface OperateFeignClient { * @return */ @PostMapping("ebikeComponent/ComponentInventoryOutbound") - JsonResult componentInventoryOutbound(@RequestBody ReqComponentOutRecordDto reqComponentOutRecordDto); + JsonResult componentInventoryOutbound(@RequestBody ReqComponentOutRecordDto reqComponentOutRecordDto,@RequestHeader("Authorization") String token); } diff --git a/ebike-maintenance/src/main/java/com/cdzy/ebikemaintenance/model/pojo/EbikeBikeInfo.java b/ebike-maintenance/src/main/java/com/cdzy/ebikemaintenance/model/pojo/EbikeBikeInfo.java index 5136e6a5..80fb5f0b 100644 --- a/ebike-maintenance/src/main/java/com/cdzy/ebikemaintenance/model/pojo/EbikeBikeInfo.java +++ b/ebike-maintenance/src/main/java/com/cdzy/ebikemaintenance/model/pojo/EbikeBikeInfo.java @@ -59,6 +59,7 @@ public class EbikeBikeInfo implements Serializable { /** * 状态 */ + @Column(onInsertValue = "0") private String state; /** @@ -107,4 +108,11 @@ public class EbikeBikeInfo implements Serializable { * 车牌号 */ private String bikeNumber; + + @Column(onInsertValue = "1") + private String isNew; + + @Column(onInsertValue = "1") + private String isInWarehouse; + } 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 a40dcd3c..1263dc49 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 @@ -147,6 +147,7 @@ public class EbikeBikeInfoServiceImpl extends ServiceImpl{}", e.getMessage() + Arrays.toString(e.getStackTrace())); diff --git a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/dto/request/ReqComponentOutRecordDto.java b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/dto/request/ReqComponentOutRecordDto.java index ec3780cf..dfe86c95 100644 --- a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/dto/request/ReqComponentOutRecordDto.java +++ b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/dto/request/ReqComponentOutRecordDto.java @@ -54,7 +54,7 @@ public class ReqComponentOutRecordDto { /** * 是否是整车绑定调用 */ - private Boolean isWholeBinding; + private Boolean isWholeBinding = false; /** * 中控信息列表,包含所有ECU部件的出库记录。 diff --git a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/service/impl/EbikeComponentEnterRecordsServiceImpl.java b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/service/impl/EbikeComponentEnterRecordsServiceImpl.java index b4ca37eb..5143b26f 100644 --- a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/service/impl/EbikeComponentEnterRecordsServiceImpl.java +++ b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/service/impl/EbikeComponentEnterRecordsServiceImpl.java @@ -42,7 +42,7 @@ public class EbikeComponentEnterRecordsServiceImpl extends ServiceImpl ecuEnterList(ReqEbikeEcuEnterRecordsDto reqEbikeEcuEnterRecordsDto) { QueryWrapper query = QueryWrapper.create(); String componentId = reqEbikeEcuEnterRecordsDto.getComponentEnterRecordId(); - if(componentId!=null&&!componentId.isEmpty()) + if (componentId != null && !componentId.isEmpty()) query.where(EBIKE_ECU_ENTER_RECORDS.COMPONENT_ENTER_RECORD_ID.eq(componentId)); Page page = reqEbikeEcuEnterRecordsDto.getPageParam().getPage(); return ebikeEcuEnterRecordsMapper.paginate(page, query); } + /** * 分页查询Ecu出库库记录。 * @@ -504,11 +507,12 @@ public class EbikeComponentServiceImpl implements EbikeComponentService { public Page ecuOutList(ReqEbikeEcuOutRecordsDto reqEbikeEcuOutRecordsDto) { QueryWrapper query = QueryWrapper.create(); String componentId = reqEbikeEcuOutRecordsDto.getComponentOutRecordId(); - if(componentId!=null&&!componentId.isEmpty()) + if (componentId != null && !componentId.isEmpty()) query.where(EBIKE_ECU_OUT_RECORDS.COMPONENT_OUT_RECORD_ID.eq(componentId)); Page page = reqEbikeEcuOutRecordsDto.getPageParam().getPage(); return ebikeEcuOutRecordsMapper.paginate(page, query); } + /** * 根据部件出库记录表主键,查询部件出库记录信息以及归还部件信息 * @@ -545,10 +549,12 @@ public class EbikeComponentServiceImpl implements EbikeComponentService { return JsonResult.success(resComponentOutRecordInfoDto); } + /** * 根据部件编号 和部件类型验证仓库中是否已经存在 - * @params + * * @return + * @params */ @Override public JsonResult validateComponentExistence(ReqValidateComponentExistenceDto params) { @@ -557,7 +563,7 @@ public class EbikeComponentServiceImpl implements EbikeComponentService { String componentType = params.getComponentType(); Boolean isNew = params.getIsNew(); // 检查是否存在重复记录 - boolean duplicateEntry = isDuplicateEntry(componentCode, componentType,isNew); + boolean duplicateEntry = isDuplicateEntry(componentCode, componentType, isNew); // 返回成功响应 return JsonResult.success(duplicateEntry); } catch (Exception e) { @@ -628,6 +634,7 @@ public class EbikeComponentServiceImpl implements EbikeComponentService { ebikeComponentInventorycountMapper.update(ebikeComponentInventorycount); } } + private EbikeComponentOutRecords buildOutRecord(ReqComponentOutRecordDto params, EbikeComponentTypeInfo ebikeComponentTypeInfo, Integer stockInType, Long orgId) { EbikeComponentOutRecords ebikeComponentOutRecords = new EbikeComponentOutRecords(); ebikeComponentOutRecords.setOwningRegion(params.getOwningRegion()); @@ -669,6 +676,12 @@ public class EbikeComponentServiceImpl implements EbikeComponentService { QueryWrapper query = new QueryWrapper(); query.eq("component_out_record_id", componentOutRecordId); ebikeEcuOutRecordsMapper.deleteByQuery(query); + query = new QueryWrapper(); + query.eq("component_out_record_id", componentOutRecordId); + ebikeHelmetOutRecordsMapper.deleteByQuery(query); + query = new QueryWrapper(); + query.eq("component_out_record_id", componentOutRecordId); + ebikeBatteryOutRecordsMapper.deleteByQuery(query); // 插入新的ECU入库记录 for (EbikeEcuOutRecords record : outRecords) { record.setComponentOutRecordId(componentOutRecordId); @@ -683,7 +696,13 @@ public class EbikeComponentServiceImpl implements EbikeComponentService { // 删除原有的头盔出库记录 QueryWrapper query = new QueryWrapper(); query.eq("component_out_record_id", componentOutRecordId); + ebikeEcuOutRecordsMapper.deleteByQuery(query); + query = new QueryWrapper(); + query.eq("component_out_record_id", componentOutRecordId); ebikeHelmetOutRecordsMapper.deleteByQuery(query); + query = new QueryWrapper(); + query.eq("component_out_record_id", componentOutRecordId); + ebikeBatteryOutRecordsMapper.deleteByQuery(query); // 插入新的头盔出库记录 for (EbikeHelmetOutRecords record : ebikeHelmetOutRecords) { record.setComponentOutRecordId(componentOutRecordId); @@ -698,7 +717,13 @@ public class EbikeComponentServiceImpl implements EbikeComponentService { // 删除原有的电池出库记录 QueryWrapper query = new QueryWrapper(); query.eq("component_out_record_id", componentOutRecordId); - ebikeBatteryEnterRecordsMapper.deleteByQuery(query); + ebikeEcuOutRecordsMapper.deleteByQuery(query); + query = new QueryWrapper(); + query.eq("component_out_record_id", componentOutRecordId); + ebikeHelmetOutRecordsMapper.deleteByQuery(query); + query = new QueryWrapper(); + query.eq("component_out_record_id", componentOutRecordId); + ebikeBatteryOutRecordsMapper.deleteByQuery(query); // 插入新的电池出库记录 for (EbikeBatteryOutRecords record : ebikeBatteryOutRecords) { record.setComponentOutRecordId(componentOutRecordId); @@ -763,7 +788,7 @@ public class EbikeComponentServiceImpl implements EbikeComponentService { // 根据组件类型填充出库记录 private void populateOutRecords(ResComponentOutRecordInfoDto dto, String componentOutRecordId, ComponentType componentTypeEnum) { - QueryWrapper query = new QueryWrapper(); + QueryWrapper query = new QueryWrapper(); query.eq("component_out_record_id", componentOutRecordId); switch (componentTypeEnum) { case BATTERY: // 电池 @@ -807,22 +832,25 @@ public class EbikeComponentServiceImpl implements EbikeComponentService { break; } } + // 更新出库记录状态为已归还 private void updateOutRecordStatus(String componentOutRecordId) { EbikeComponentOutRecords ebikeComponentOutRecords = ebikeComponentOutRecordsMapper.selectOneById(componentOutRecordId); ebikeComponentOutRecords.setState("2"); ebikeComponentOutRecordsMapper.update(ebikeComponentOutRecords); } - public boolean isDuplicateEntry(String itemCode,String componentType,Boolean isNew) { + + public boolean isDuplicateEntry(String itemCode, String componentType, Boolean isNew) { QueryWrapper query = new QueryWrapper(); query.eq("item_code", itemCode); query.eq("component_type", componentType); - if(!isNew){ + if (!isNew) { query.eq("state", 1); // 假设 1 表示已已入库 } long count = ebikeComponentInventoryMapper.selectCountByQuery(query); // 查询符合条件的记录数 return count > 0; // 如果记录数大于 0,说明已经存在重复入库 } + public StaffFeign getStaffFeignInfo() { String tokenValue = StpUtil.getTokenValue(); // 调用 Feign 客户端获取用户信息