From cfdaaae8690e188f6971057259873aa408ebc9e3 Mon Sep 17 00:00:00 2001
From: Crunchy <3114200645@qq.com>
Date: 星期四, 25 四月 2024 16:49:56 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 cnas-server/src/main/java/com/yuanchu/mom/service/impl/DeviceServiceImpl.java |   31 +++++++++++++++++++++++++++++--
 1 files changed, 29 insertions(+), 2 deletions(-)

diff --git a/cnas-server/src/main/java/com/yuanchu/mom/service/impl/DeviceServiceImpl.java b/cnas-server/src/main/java/com/yuanchu/mom/service/impl/DeviceServiceImpl.java
index 9b7ce3c..1edd34a 100644
--- a/cnas-server/src/main/java/com/yuanchu/mom/service/impl/DeviceServiceImpl.java
+++ b/cnas-server/src/main/java/com/yuanchu/mom/service/impl/DeviceServiceImpl.java
@@ -1,5 +1,6 @@
 package com.yuanchu.mom.service.impl;
 
+import com.alibaba.fastjson.JSON;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -8,12 +9,15 @@
 import com.yuanchu.mom.common.PrintChina;
 import com.yuanchu.mom.dto.DeviceDto;
 import com.yuanchu.mom.mapper.DeviceMapper;
+import com.yuanchu.mom.mapper.StructureItemParameterMapper;
 import com.yuanchu.mom.pojo.Device;
+import com.yuanchu.mom.pojo.StructureItemParameter;
 import com.yuanchu.mom.service.DeviceService;
 import com.yuanchu.mom.utils.QueryWrappers;
 import lombok.AllArgsConstructor;
 import org.springframework.stereotype.Service;
 
+import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
@@ -28,6 +32,8 @@
     private GetLook getLook;
 
     private DeviceMapper deviceMapper;
+
+    private StructureItemParameterMapper structureItemParameterMapper;
 
     @Override
     public Map<String, Object> selectDeviceParameter(Page page, DeviceDto itemParameter) {
@@ -76,8 +82,29 @@
     }
 
     @Override
-    public List<Device> selectDeviceByCategory(String category) {
-        return deviceMapper.selectList(Wrappers.<Device>lambdaQuery().eq(Device::getLargeCategory, category).eq(Device::getDeviceStatus, 0));
+    public List<Device> selectDeviceByCategory(String inspectionItem, String inspectionItemSubclass) {
+        Integer id;
+        try {
+            id = structureItemParameterMapper.selectOne(Wrappers.<StructureItemParameter>lambdaQuery().eq(StructureItemParameter::getInspectionItem, inspectionItem).eq(StructureItemParameter::getInspectionItemSubclass, inspectionItemSubclass).last("limit 1").select(StructureItemParameter::getId)).getId();
+        } catch (Exception e) {
+            return null;
+        }
+        List<Device> devices = deviceMapper.selectList(Wrappers.<Device>lambdaQuery().eq(Device::getDeviceStatus, 0).isNotNull(Device::getInsProductIds));
+        List<Device> devices2 = new ArrayList<>();
+        for (Device device : devices) {
+            List<Integer> ids = JSON.parseArray(device.getInsProductIds(), Integer.class);
+            for (Integer i : ids) {
+                if (i == id) {
+                    devices2.add(device);
+                }
+            }
+        }
+        return devices2;
+    }
+
+    @Override
+    public Device selectDeviceByCode(String code) {
+        return deviceMapper.selectOne(Wrappers.<Device>lambdaQuery().eq(Device::getFactoryNo, code).last("limit 1"));
     }
 }
 

--
Gitblit v1.9.3