From 1d915922d8197aa5d5dc3e40e3088d983dd6e141 Mon Sep 17 00:00:00 2001
From: liding <756868258@qq.com>
Date: 星期五, 13 三月 2026 17:57:59 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/dev_New_kthg' into dev_New_kthg

---
 src/main/java/com/ruoyi/quality/service/impl/RawMaterialServiceImpl.java |   70 +++++++++++++++++++++++++++++++++++
 1 files changed, 70 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/ruoyi/quality/service/impl/RawMaterialServiceImpl.java b/src/main/java/com/ruoyi/quality/service/impl/RawMaterialServiceImpl.java
new file mode 100644
index 0000000..555763c
--- /dev/null
+++ b/src/main/java/com/ruoyi/quality/service/impl/RawMaterialServiceImpl.java
@@ -0,0 +1,70 @@
+package com.ruoyi.quality.service.impl;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.collaborativeApproval.dto.DutyPlanDTO;
+import com.ruoyi.common.enums.RawMaterialCheckResult;
+import com.ruoyi.common.enums.RawMaterialCheckType;
+import com.ruoyi.common.enums.RawMaterialInspectState;
+import com.ruoyi.production.mapper.ProductProcessRouteMapper;
+import com.ruoyi.quality.dto.RawMaterialDto;
+import com.ruoyi.quality.mapper.RawMaterialQualityInspectItemMapper;
+import com.ruoyi.quality.pojo.RawMaterial;
+import com.ruoyi.quality.mapper.RawMaterialMapper;
+import com.ruoyi.quality.pojo.RawMaterialQualityInspectItem;
+import com.ruoyi.quality.service.RawMaterialQualityInspectItemService;
+import com.ruoyi.quality.service.RawMaterialService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import lombok.AllArgsConstructor;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.List;
+import java.util.stream.Collectors;
+
+
+/**
+ * <p>
+ *  鏈嶅姟瀹炵幇绫�
+ * </p>
+ *
+ * @author 鑺杞欢锛堟睙鑻忥級鏈夐檺鍏徃
+ * @since 2026-03-13 02:44:09
+ */
+@AllArgsConstructor
+@Service
+public class RawMaterialServiceImpl extends ServiceImpl<RawMaterialMapper, RawMaterial> implements RawMaterialService {
+    private RawMaterialMapper rawMaterialMapper;
+
+    private RawMaterialQualityInspectItemService rawMaterialQualityInspectItemService;
+
+    @Override
+    public IPage<RawMaterialDto> listPage(Page page, RawMaterialDto rawMaterialDto) {
+        IPage<RawMaterialDto> rawMaterials = rawMaterialMapper.listPage(page, rawMaterialDto);
+        for (RawMaterialDto rawMaterial : rawMaterials.getRecords()) {
+            rawMaterial.setCheckTypeText(RawMaterialCheckType.fromValue(rawMaterial.getCheckType()).getValue());
+            rawMaterial.setCheckResultText(RawMaterialCheckResult.fromValue(rawMaterial.getCheckResult()).getValue());
+            rawMaterial.setInspectStateText(RawMaterialInspectState.fromValue(rawMaterial.getInspectState()).getValue());
+        }
+        return rawMaterials;
+    }
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public boolean add(RawMaterialDto rawMaterialDto) {
+        // 鏂板妫�娴嬮」鍏宠仈鍏崇郴
+        if (rawMaterialDto.getQualityInspectItemIds() != null && !rawMaterialDto.getQualityInspectItemIds().isEmpty()) {
+            List<RawMaterialQualityInspectItem> rawMaterialQualityInspectItems = rawMaterialDto.getQualityInspectItemIds().stream()
+                    .map(id -> {
+                        RawMaterialQualityInspectItem item = new RawMaterialQualityInspectItem();
+                        item.setRawMaterialId(rawMaterialDto.getId());
+                        item.setQualityInspectItemId(id);
+                        return item;
+                    })
+                    .collect(Collectors.toList());
+            rawMaterialQualityInspectItemService.saveBatch(rawMaterialQualityInspectItems);
+        }
+        // 鏂板鍘熸枡
+        return rawMaterialMapper.insert(rawMaterialDto) > 0;
+    }
+}

--
Gitblit v1.9.3