From 7cd9dbf45e8e29f3bb0c00ac4f14d5588029c3ba Mon Sep 17 00:00:00 2001
From: maven <2163098428@qq.com>
Date: 星期六, 11 十月 2025 17:45:02 +0800
Subject: [PATCH] yys 新增车牌字段
---
main-business/src/main/java/com/ruoyi/business/service/impl/EquipmentManagementServiceImpl.java | 24 ++++++++++++++++++++----
1 files changed, 20 insertions(+), 4 deletions(-)
diff --git a/main-business/src/main/java/com/ruoyi/business/service/impl/EquipmentManagementServiceImpl.java b/main-business/src/main/java/com/ruoyi/business/service/impl/EquipmentManagementServiceImpl.java
index 863d663..9c88381 100644
--- a/main-business/src/main/java/com/ruoyi/business/service/impl/EquipmentManagementServiceImpl.java
+++ b/main-business/src/main/java/com/ruoyi/business/service/impl/EquipmentManagementServiceImpl.java
@@ -3,18 +3,21 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.business.dto.EquipmentManagementDto;
import com.ruoyi.business.entity.EquipmentManagement;
import com.ruoyi.business.entity.EquipmentUsageRecord;
import com.ruoyi.business.mapper.EquipmentManagementMapper;
import com.ruoyi.business.mapper.EquipmentUsageRecordMapper;
import com.ruoyi.business.service.EquipmentManagementService;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.business.vo.EquipmentManagementVo;
+import com.ruoyi.common.exception.base.BaseException;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.common.utils.bean.BeanUtils;
-import org.springframework.stereotype.Service;
import lombok.RequiredArgsConstructor;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Isolation;
+import org.springframework.transaction.annotation.Transactional;
import java.util.Arrays;
import java.util.List;
@@ -66,7 +69,8 @@
// 鏌ヨ璇ヨ澶囩殑浣跨敤鎬婚噺锛坲sageQuantity锛�
LambdaQueryWrapper<EquipmentUsageRecord> usageQueryWrapper = new LambdaQueryWrapper<>();
- usageQueryWrapper.eq(EquipmentUsageRecord::getEquipmentId, entity.getId());
+ usageQueryWrapper.eq(EquipmentUsageRecord::getEquipmentId, entity.getId())
+ .eq(EquipmentUsageRecord::getEquipmentStatus, 1);
// 璁$畻鎬讳娇鐢ㄩ噺
Integer totalUsage = equipmentUsageRecordMapper.selectList(usageQueryWrapper).stream()
@@ -103,13 +107,25 @@
vo.setId(equipment.getId()); // 璁惧id
vo.setEquipmentName(equipment.getEquipmentName()); // 璁惧鍚嶇О
vo.setQuantity(equipment.getQuantity()); // 鏁伴噺
+ vo.setConsumables(equipment.isConsumables()); // 鏄惁鑰楁潗绫�
return vo;
})
.toList();
}
@Override
+ @Transactional(isolation = Isolation.REPEATABLE_READ)
public int delByIds(Long[] ids) {
- return equipmentManagementMapper.deleteByIds(Arrays.asList(ids));
+ // 1. 妫�鏌ヨ澶囨槸鍚︽鍦ㄤ娇鐢紙娣诲姞琛岄攣 for update锛�
+ List<EquipmentUsageRecord> records = equipmentUsageRecordMapper.selectList(
+ new LambdaQueryWrapper<EquipmentUsageRecord>()
+ .in(EquipmentUsageRecord::getEquipmentId, Arrays.asList(ids))
+ .last("FOR UPDATE") // 娣诲姞琛岄攣锛岄攣瀹氭煡璇㈢粨鏋�
+ );
+ if (!records.isEmpty()) {
+ throw new BaseException("璁惧姝e湪浣跨敤涓紝璇锋牳瀵�!");
+ } else {
+ return equipmentManagementMapper.deleteByIds(Arrays.asList(ids));
+ }
}
}
--
Gitblit v1.9.3