更新搜索数据时先判断是否有数据

This commit is contained in:
dengchun
2025-04-26 23:26:17 +08:00
parent aff68bd5a3
commit 529447f27a
2 changed files with 54 additions and 23 deletions

View File

@@ -8,7 +8,7 @@ pnpm run build
# 后端发布 # 后端发布
## 测试环境 ## 测试环境
docker compose pull docker compose pull
docker compose up -d docker compose up -d
# 数据库地址 # 数据库地址

View File

@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import jodd.util.StringUtil;
import org.jeecg.common.system.query.QueryGenerator; import org.jeecg.common.system.query.QueryGenerator;
import org.jeecg.modules.database.constant.ComponentSearchType; import org.jeecg.modules.database.constant.ComponentSearchType;
import org.jeecg.modules.database.entity.Experiment; import org.jeecg.modules.database.entity.Experiment;
@@ -50,32 +51,62 @@ public class ComponentSearchServiceImpl extends ServiceImpl<ComponentSearchMappe
// 批量更新样品型号,样品名称,样品批次 // 批量更新样品型号,样品名称,样品批次
if (CollUtil.isNotEmpty(experiment.getSampleInfoList())) { if (CollUtil.isNotEmpty(experiment.getSampleInfoList())) {
experiment.getSampleInfoList().forEach(sampleInfo -> { experiment.getSampleInfoList().forEach(sampleInfo -> {
SearchResult modelNumberRecord = new SearchResult(); if (StringUtil.isNotEmpty(sampleInfo.getSampleModel())) {
modelNumberRecord.setDataType(ComponentSearchType.MODEL_NUMBER.getCode()); SearchResult searchResult = new SearchResult();
modelNumberRecord.setContent(sampleInfo.getSampleModel()); Map requestMap = new HashMap();
try { requestMap.put("dataType", ComponentSearchType.MODEL_NUMBER.getCode());
saveOrUpdate(modelNumberRecord); requestMap.put("content", sampleInfo.getSampleModel().trim());
}catch (Exception e) { QueryWrapper<SearchResult> queryWrapper = QueryGenerator.initQueryWrapper(searchResult,requestMap);
logger.warn("样品型号搜索数据更新失败,错误信息: " + e.getMessage());
if (null == this.getOne(queryWrapper)){
SearchResult modelNumberRecord = new SearchResult();
modelNumberRecord.setDataType(ComponentSearchType.MODEL_NUMBER.getCode());
modelNumberRecord.setContent(sampleInfo.getSampleModel().trim());
try {
saveOrUpdate(modelNumberRecord);
}catch (Exception e) {
logger.warn("样品型号搜索数据更新失败,错误信息: " + e.getMessage());
}
}
} }
SearchResult modelNameRecord = new SearchResult(); if (StringUtil.isNotEmpty(sampleInfo.getSampleName())) {
modelNameRecord.setDataType(ComponentSearchType.MODEL_NAME.getCode()); SearchResult searchResult = new SearchResult();
modelNameRecord.setContent(sampleInfo.getSampleName()); Map requestMap = new HashMap();
try { requestMap.put("dataType", ComponentSearchType.MODEL_NAME.getCode());
updateById(modelNameRecord); requestMap.put("content", sampleInfo.getSampleName().trim());
}catch (Exception e) { QueryWrapper<SearchResult> queryWrapper = QueryGenerator.initQueryWrapper(searchResult,requestMap);
logger.warn("样品名称搜索数据更新失败,错误信息: " + e.getMessage());
if (null == this.getOne(queryWrapper)){
SearchResult modelNameRecord = new SearchResult();
modelNameRecord.setDataType(ComponentSearchType.MODEL_NAME.getCode());
modelNameRecord.setContent(sampleInfo.getSampleName());
try {
updateById(modelNameRecord);
}catch (Exception e) {
logger.warn("样品名称搜索数据更新失败,错误信息: " + e.getMessage());
}
}
} }
SearchResult modelBatchNoRecord = new SearchResult(); if (StringUtil.isNotEmpty(sampleInfo.getModelBatch())){
modelBatchNoRecord.setDataType(ComponentSearchType.MODEL_BATCH_NO.getCode()); SearchResult searchResult = new SearchResult();
modelBatchNoRecord.setContent(sampleInfo.getModelBatch()); Map requestMap = new HashMap();
try { requestMap.put("dataType", ComponentSearchType.MODEL_BATCH_NO.getCode());
updateById(modelBatchNoRecord); requestMap.put("content", sampleInfo.getModelBatch().trim());
}catch (Exception e) { QueryWrapper<SearchResult> queryWrapper = QueryGenerator.initQueryWrapper(searchResult,requestMap);
logger.warn("样品批次搜索数据更新失败,错误信息: " + e.getMessage()); if (null == this.getOne(queryWrapper)){
} SearchResult modelBatchNoRecord = new SearchResult();
modelBatchNoRecord.setDataType(ComponentSearchType.MODEL_BATCH_NO.getCode());
modelBatchNoRecord.setContent(sampleInfo.getModelBatch());
try {
updateById(modelBatchNoRecord);
}catch (Exception e) {
logger.warn("样品批次搜索数据更新失败,错误信息: " + e.getMessage());
}
}
}
}); });
} }
} }