From 94509204d25f7c0ad213ae2322be2bd5bfd17424 Mon Sep 17 00:00:00 2001
From: liding <756868258@qq.com>
Date: 星期一, 14 七月 2025 16:30:28 +0800
Subject: [PATCH] 1.初始化配煤计算器数据 2。配煤到待入库

---
 basic-server/src/main/java/com/ruoyi/basic/service/impl/CoalFieldServiceImpl.java |   47 +++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 47 insertions(+), 0 deletions(-)

diff --git a/basic-server/src/main/java/com/ruoyi/basic/service/impl/CoalFieldServiceImpl.java b/basic-server/src/main/java/com/ruoyi/basic/service/impl/CoalFieldServiceImpl.java
index 67a6c5e..e476244 100644
--- a/basic-server/src/main/java/com/ruoyi/basic/service/impl/CoalFieldServiceImpl.java
+++ b/basic-server/src/main/java/com/ruoyi/basic/service/impl/CoalFieldServiceImpl.java
@@ -9,15 +9,19 @@
 import com.ruoyi.basic.entity.CoalField;
 import com.ruoyi.basic.mapper.CoalFieldMapper;
 import com.ruoyi.basic.service.CoalFieldService;
+import com.ruoyi.common.exception.base.BaseException;
 import com.ruoyi.common.utils.bean.BeanUtils;
 import lombok.RequiredArgsConstructor;
 import org.springframework.stereotype.Service;
 import org.springframework.util.StringUtils;
 
+import java.util.Collections;
 import java.util.List;
 import java.util.Objects;
+import java.util.Set;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
+import java.util.stream.Collectors;
 
 /**
  * <p>
@@ -80,6 +84,49 @@
         return coalFieldMapper.selectList(null);
     }
 
+    @Override
+    public List<CoalFieldDto> getFieldsByNames(Set<String> fieldNames) {
+        // 1. 鍙傛暟鏍¢獙
+        if (fieldNames == null || fieldNames.isEmpty()) {
+            throw new IllegalArgumentException("瀛楁鍚嶉泦鍚堜笉鑳戒负绌�");
+        }
+
+        // 2. 杩囨护绌哄��
+        Set<String> filteredNames = fieldNames.stream()
+                .filter(name -> name != null && !name.trim().isEmpty())
+                .collect(Collectors.toSet());
+
+        if (filteredNames.isEmpty()) {
+            return Collections.emptyList();
+        }
+
+        // 3. 鏌ヨ鏁版嵁搴�
+        try {
+            List<CoalField> entities = coalFieldMapper.getFieldsByNames(filteredNames);
+
+            // 4. 瀹炰綋杞珼TO
+            return entities.stream()
+                    .map(this::convertToDto)
+                    .collect(Collectors.toList());
+
+        } catch (Exception e) {
+            throw new BaseException("鏌ヨ鐓よ川瀛楁淇℃伅澶辫触锛岃绋嶅悗閲嶈瘯");
+        }
+    }
+
+    private CoalFieldDto convertToDto(CoalField entity) {
+        CoalFieldDto dto = new CoalFieldDto();
+        dto.setId(entity.getId());
+        dto.setFields(entity.getFields());
+        dto.setFieldName(entity.getFieldName());
+        return dto;
+    }
+
+    @Override
+    public Set<String> getFieldNamesByNames(Set<String> fieldNames) {
+        return coalFieldMapper.getFieldNamesByNames(fieldNames);
+    }
+
     private String generateNextFieldNumber() {
         // 鑾峰彇鎵�鏈夊凡瀛樺湪鐨� CoalField 璁板綍锛屽寘鎷凡鍒犻櫎鐨�
         LambdaQueryWrapper<CoalField> queryWrapper = new LambdaQueryWrapper<>();

--
Gitblit v1.9.3