部件判断重复接口(增加新增入库区分验证 新增入库只入库仓库不存在的

This commit is contained in:
小朱 2025-05-29 10:09:35 +08:00
parent adb8eb7011
commit 96c44aa9e1
2 changed files with 15 additions and 4 deletions

View File

@ -13,4 +13,8 @@ public class ReqValidateComponentExistenceDto {
* 部件类型编号 如代表电池头盔等
*/
private String componentType;
/**
* 是否新增入库
*/
private Boolean isNew = false;
}

View File

@ -545,14 +545,19 @@ public class EbikeComponentServiceImpl implements EbikeComponentService {
return JsonResult.success(resComponentOutRecordInfoDto);
}
/**
* 根据部件编号 和部件类型验证仓库中是否已经存在
* @params
* @return
*/
@Override
public JsonResult<?> validateComponentExistence(ReqValidateComponentExistenceDto params) {
try {
String componentCode = params.getComponentCode();
String componentType = params.getComponentType();
Boolean isNew = params.getIsNew();
// 检查是否存在重复记录
boolean duplicateEntry = isDuplicateEntry(componentCode, componentType);
boolean duplicateEntry = isDuplicateEntry(componentCode, componentType,isNew);
// 返回成功响应
return JsonResult.success(duplicateEntry);
} catch (Exception e) {
@ -808,11 +813,13 @@ public class EbikeComponentServiceImpl implements EbikeComponentService {
ebikeComponentOutRecords.setState("2");
ebikeComponentOutRecordsMapper.update(ebikeComponentOutRecords);
}
public boolean isDuplicateEntry(String itemCode,String componentType) {
public boolean isDuplicateEntry(String itemCode,String componentType,Boolean isNew) {
QueryWrapper query = new QueryWrapper();
query.eq("item_code", itemCode);
query.eq("component_type", componentType);
query.eq("state", 1); // 假设 1 表示已已入库
if(!isNew){
query.eq("state", 1); // 假设 1 表示已已入库
}
long count = ebikeComponentInventoryMapper.selectCountByQuery(query); // 查询符合条件的记录数
return count > 0; // 如果记录数大于 0说明已经存在重复入库
}