From c2538085f897faa67abf32f23fc006e816df3c09 Mon Sep 17 00:00:00 2001
From: Crunchy <3114200645@qq.com>
Date: 星期四, 18 七月 2024 18:20:23 +0800
Subject: [PATCH] 文件采集完成 - 数采

---
 cnas-server/src/main/java/com/yuanchu/mom/service/impl/DeviceServiceImpl.java |   63 +++++++++++++++++++++++++++++--
 1 files changed, 58 insertions(+), 5 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 1ed9636..38e1c96 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,15 +1,23 @@
 package com.yuanchu.mom.service.impl;
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
+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.yuanchu.mom.common.GetLook;
 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;
@@ -25,14 +33,16 @@
 
     private DeviceMapper deviceMapper;
 
+    private StructureItemParameterMapper structureItemParameterMapper;
+
     @Override
-    public Map<String, Object> selectDeviceParameter(com.baomidou.mybatisplus.extension.plugins.pagination.Page page, Device itemParameter) {
+    public Map<String, Object> selectDeviceParameter(Page page, DeviceDto itemParameter) {
         Map<String, Object> map = new HashMap<>();
-        map.put("head", PrintChina.printChina(Device.class));
+        map.put("head", PrintChina.printChina(DeviceDto.class));
         Map<String, Integer> map1 = getLook.selectPowerByMethodAndUserId("selectDeviceParameter");
         if (map1.get("look") == 1) itemParameter.setCreateUser(map1.get("userId"));
-//        deviceMapper.selectPage(page, QueryWrappers.queryWrappers(itemParameter));
-        map.put("body", deviceMapper.selectPage(page, QueryWrappers.queryWrappers(itemParameter)));
+        IPage<DeviceDto> iPage = deviceMapper.selectDeviceParameterPage(page, QueryWrappers.queryWrappers(itemParameter));
+        map.put("body", iPage);
         return map;
     }
 
@@ -53,7 +63,7 @@
 
     @Override
     public List<Device> selectEquipmentOverview() {
-        return deviceMapper.selectEquipmentOverview(new com.baomidou.mybatisplus.extension.plugins.pagination.Page(1, 10), QueryWrappers.queryWrappers(new Device()));
+        return deviceMapper.selectEquipmentOverview(new Page(1, 10), QueryWrappers.queryWrappers(new Device()));
     }
 
     @Override
@@ -70,5 +80,48 @@
     public List<Device> selectDevicePrincipal() {
         return deviceMapper.selectDevicePrincipal();
     }
+
+    @Override
+    public List<Device> selectDeviceByCategory(String inspectionItem, String inspectionItemSubclass) {
+        Integer id;
+        try {
+            if (ObjectUtils.isEmpty(inspectionItemSubclass)) {
+                id = structureItemParameterMapper.selectOne(Wrappers.<StructureItemParameter>lambdaQuery()
+                        .eq(StructureItemParameter::getInspectionItem, inspectionItem)
+                        .last("limit 1").select(StructureItemParameter::getId)).getId();
+            }else {
+                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) {
+            String[] ids = device.getInsProductIds().split(",");
+            for (String i : ids) {
+                if (i.equals(id + "")) {
+                    if (ObjectUtils.isEmpty(device.getFileType()) || ObjectUtils.isEmpty(device.getCollectUrl())) {
+                        device.setIsItADataAcquisitionDevice(false);
+                    } else {
+                        device.setIsItADataAcquisitionDevice(true);
+                    }
+                    devices2.add(device);
+                    break;
+                }
+            }
+        }
+        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