From beaa6e8dcf350fc50320518b9c92986785a2fac9 Mon Sep 17 00:00:00 2001
From: zss <zss@example.com>
Date: 星期四, 03 七月 2025 15:03:55 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

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

diff --git a/src/main/java/com/ruoyi/quality/service/impl/QualityInspectServiceImpl.java b/src/main/java/com/ruoyi/quality/service/impl/QualityInspectServiceImpl.java
new file mode 100644
index 0000000..22055fc
--- /dev/null
+++ b/src/main/java/com/ruoyi/quality/service/impl/QualityInspectServiceImpl.java
@@ -0,0 +1,109 @@
+package com.ruoyi.quality.service.impl;
+
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.common.exception.base.BaseException;
+import com.ruoyi.common.utils.poi.ExcelUtil;
+import com.ruoyi.quality.mapper.QualityInspectMapper;
+import com.ruoyi.quality.mapper.QualityInspectParamMapper;
+import com.ruoyi.quality.mapper.QualityTestStandardMapper;
+import com.ruoyi.quality.pojo.QualityInspect;
+import com.ruoyi.quality.pojo.QualityInspectParam;
+import com.ruoyi.quality.pojo.QualityTestStandard;
+import com.ruoyi.quality.service.IQualityInspectParamService;
+import com.ruoyi.quality.service.IQualityInspectService;
+import com.ruoyi.staff.mapper.StaffJoinLeaveRecordMapper;
+import com.ruoyi.staff.mapper.StaffOnJobMapper;
+import com.ruoyi.staff.pojo.StaffJoinLeaveRecord;
+import com.ruoyi.staff.pojo.StaffOnJob;
+import com.ruoyi.staff.service.IStaffOnJobService;
+import lombok.AllArgsConstructor;
+import org.springframework.beans.BeanUtils;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import javax.servlet.http.HttpServletResponse;
+import java.util.List;
+import java.util.stream.Collectors;
+
+@AllArgsConstructor
+@Service
+@Transactional(rollbackFor = Exception.class)
+public class QualityInspectServiceImpl extends ServiceImpl<QualityInspectMapper, QualityInspect>  implements IQualityInspectService {
+
+    private QualityInspectMapper qualityInspectMapper;
+
+    private IQualityInspectParamService qualityInspectParamService;
+
+    private QualityTestStandardMapper qualityTestStandardMapper;
+
+    @Override
+    public int add(QualityInspect qualityInspect) {
+        String[] ignoreProperties = {"id"};//鎺掗櫎id灞炴��
+        //鏍规嵁浜у搧id鏌ヨ鎸囨爣缁存姢瀵瑰簲鏂板妫�楠屽弬鏁�
+        List<QualityTestStandard> qualityTestStandards = qualityTestStandardMapper.selectList(Wrappers.<QualityTestStandard>lambdaQuery()
+                .eq(QualityTestStandard::getProductId, qualityInspect.getProductId()));
+        if (qualityTestStandards.size()>0){
+            qualityInspectMapper.insert(qualityInspect);
+            List<QualityInspectParam> qualityInspectParams = qualityTestStandards.stream().map(qualityTestStandard -> {
+                QualityInspectParam qualityInspectParam = new QualityInspectParam();
+                BeanUtils.copyProperties(qualityTestStandard, qualityInspectParam,ignoreProperties);
+                qualityInspectParam.setInspectId(qualityInspect.getId());
+                return qualityInspectParam;
+            }).collect(Collectors.toList());
+            qualityInspectParamService.saveBatch(qualityInspectParams);
+        }else{
+            throw new BaseException("璇ヤ骇鍝佹病鏈夌淮鎶ゆ楠屾寚鏍�,璇锋鏌�!!!!!!!!");
+        }
+        return 0;
+    }
+
+    @Override
+    public int updateQualityInspect(QualityInspect qualityInspect) {
+        String[] ignoreProperties = {"id"};//鎺掗櫎id灞炴��
+        //鍏堝垹闄ゆ墍鏈夋楠屽弬鏁板啀鏂板
+        qualityInspectParamService.remove(Wrappers.<QualityInspectParam>lambdaQuery()
+                .eq(QualityInspectParam::getInspectId,qualityInspect.getId()));
+        //鏍规嵁浜у搧id鏌ヨ鎸囨爣缁存姢瀵瑰簲鏂板妫�楠屽弬鏁�
+        List<QualityTestStandard> qualityTestStandards = qualityTestStandardMapper.selectList(Wrappers.<QualityTestStandard>lambdaQuery()
+                .eq(QualityTestStandard::getProductId, qualityInspect.getProductId()));
+        if (qualityTestStandards.size()>0){
+            List<QualityInspectParam> qualityInspectParams = qualityTestStandards.stream().map(qualityTestStandard -> {
+                QualityInspectParam qualityInspectParam = new QualityInspectParam();
+                BeanUtils.copyProperties(qualityTestStandard, qualityInspectParam,ignoreProperties);
+                qualityInspectParam.setInspectId(qualityInspect.getId());
+                return qualityInspectParam;
+            }).collect(Collectors.toList());
+            qualityInspectParamService.saveBatch(qualityInspectParams);
+        }else{
+            throw new BaseException("璇ヤ骇鍝佹病鏈夌淮鎶ゆ楠屾寚鏍�,璇锋鏌�!!!!!!!!");
+        }
+        return  qualityInspectMapper.updateById(qualityInspect);
+    }
+
+    @Override
+    public IPage<QualityInspect> qualityInspectListPage(Page page, QualityInspect qualityInspect) {
+        return qualityInspectMapper.qualityInspectListPage(page,qualityInspect);
+    }
+
+    @Override
+    public void qualityInspectExport(HttpServletResponse response, QualityInspect qualityInspect) {
+        List<QualityInspect> qualityInspects =qualityInspectMapper.qualityInspectExport(qualityInspect);
+        ExcelUtil<QualityInspect> util = new ExcelUtil<QualityInspect>(QualityInspect.class);
+        switch (qualityInspect.getInspectType()){
+            case 0:
+                util.exportExcel(response, qualityInspects, "鍘熸潗鏂欐楠屽鍑�");
+                break;
+            case  1:
+                util.exportExcel(response, qualityInspects, "杩囩▼妫�楠屽鍑�");
+                break;
+            case 2:
+                util.exportExcel(response, qualityInspects, "鍑哄巶妫�楠屽鍑�");
+                break;
+        }
+
+    }
+}

--
Gitblit v1.9.3