From 57945f688fd21076e36ab5332028c8b4a6dcf59c Mon Sep 17 00:00:00 2001
From: Lius <Lius2225@163.com>
Date: 星期四, 04 九月 2025 16:37:31 +0800
Subject: [PATCH] 同步密网设备管理代码

---
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamMaintenanceStandardServiceImpl.java |   90 +++++++++++++++++++++++++++++++++++----------
 1 files changed, 70 insertions(+), 20 deletions(-)

diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamMaintenanceStandardServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamMaintenanceStandardServiceImpl.java
index af38a15..f0507d6 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamMaintenanceStandardServiceImpl.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamMaintenanceStandardServiceImpl.java
@@ -12,23 +12,27 @@
 import org.apache.shiro.SecurityUtils;
 import org.jeecg.common.api.vo.FileUploadResult;
 import org.jeecg.common.constant.CommonConstant;
+import org.jeecg.common.exception.ExceptionCast;
 import org.jeecg.common.exception.JeecgBootException;
 import org.jeecg.common.system.vo.LoginUser;
+import org.jeecg.common.util.FileUtil;
 import org.jeecg.modules.eam.constant.MaintenanceStandardStatusEnum;
 import org.jeecg.modules.eam.entity.EamMaintenanceStandard;
 import org.jeecg.modules.eam.entity.EamMaintenanceStandardDetail;
+import org.jeecg.modules.eam.entity.EamSysFiles;
 import org.jeecg.modules.eam.mapper.EamMaintenanceStandardMapper;
 import org.jeecg.modules.eam.request.EamMaintenanceStandardRequest;
 import org.jeecg.modules.eam.service.IEamMaintenanceStandardDetailService;
 import org.jeecg.modules.eam.service.IEamMaintenanceStandardService;
+import org.jeecg.modules.eam.service.IEamSysFilesService;
+import org.jeecg.modules.system.service.ISysFilesService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
 import javax.annotation.Resource;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
+import javax.servlet.http.HttpServletResponse;
+import java.util.*;
 import java.util.stream.Collectors;
 
 /**
@@ -46,10 +50,13 @@
     @Autowired
     private IEamMaintenanceStandardDetailService eamMaintenanceStandardDetailService;
 
+    @Autowired
+    private IEamSysFilesService sysFilesService;
+
     @Override
     public IPage<EamMaintenanceStandard> queryPageList(Page<EamMaintenanceStandard> page, EamMaintenanceStandard eamMaintenanceStandard) {
-        LambdaQueryWrapper<EamMaintenanceStandard> queryWrapper = new LambdaQueryWrapper<>();
-        queryWrapper.eq(EamMaintenanceStandard::getDelFlag, CommonConstant.DEL_FLAG_0);
+        QueryWrapper<EamMaintenanceStandard> queryWrapper = new QueryWrapper<>();
+        queryWrapper.eq("ems.del_flag", CommonConstant.DEL_FLAG_0);
         //鐢ㄦ埛鏁版嵁鏉冮檺
         LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
         if (sysUser == null) {
@@ -58,41 +65,41 @@
         if (StringUtils.isNotBlank(sysUser.getEquipmentIds())) {
             //閫夋嫨浜嗚澶囷紝鏍规嵁璁惧id杩囨护璁惧
             List<String> equipArr = Arrays.asList(sysUser.getEquipmentIds().split(","));
-            StringBuilder sqlSb = new StringBuilder("select 1 from eam_equipment t where t.id = equipment_id and t.equipment_code in (");
-            equipArr.forEach(equipmentCode -> {
-                sqlSb.append("'").append(equipmentCode).append("',");
-            });
-            sqlSb.append(")");
-            String sql = sqlSb.toString().replaceAll(",\\)", ")");
-            queryWrapper.exists(sql);
+            queryWrapper.in("e.equipment_code", equipArr);
         } else {
             //娌℃湁閫夋嫨璁惧锛屾牴鎹溅闂磋繃婊よ澶�
-            queryWrapper.exists("select 1 from eam_equipment e where exists (select 1 from mdc_user_production t where t.user_id={0} and t.pro_id=e.org_id) and e.id = equipment_id", sysUser.getId());
+            queryWrapper.exists("select 1 from mdc_user_production t where t.user_id={0} and t.pro_id=e.org_id ", sysUser.getId());
         }
         if(eamMaintenanceStandard != null) {
             //缂栫爜 妯$硦鏌ヨ
             if(StringUtils.isNotBlank(eamMaintenanceStandard.getStandardCode())) {
-                queryWrapper.like(EamMaintenanceStandard::getStandardCode, eamMaintenanceStandard.getStandardCode());
+                queryWrapper.like("ems.standard_code", eamMaintenanceStandard.getStandardCode());
             }
             //鍚嶇О 妯$硦鏌ヨ
             if(StringUtils.isNotBlank(eamMaintenanceStandard.getStandardName())) {
-                queryWrapper.like(EamMaintenanceStandard::getStandardName, eamMaintenanceStandard.getStandardName());
+                queryWrapper.like("ems.standard_name", eamMaintenanceStandard.getStandardName());
             }
             //璁惧
             if(StringUtils.isNotBlank(eamMaintenanceStandard.getEquipmentId())) {
-                queryWrapper.eq(EamMaintenanceStandard::getEquipmentId, eamMaintenanceStandard.getEquipmentId());
+                queryWrapper.eq("ems.equipment_id", eamMaintenanceStandard.getEquipmentId());
             }
             //淇濆吇鍒嗙被
             if(StringUtils.isNotBlank(eamMaintenanceStandard.getMaintenanceCategory())) {
-                queryWrapper.eq(EamMaintenanceStandard::getMaintenanceCategory, eamMaintenanceStandard.getMaintenanceCategory());
+                queryWrapper.eq("ems.maintenance_category", eamMaintenanceStandard.getMaintenanceCategory());
             }
             //淇濆吇鍒嗙被
             if(StringUtils.isNotBlank(eamMaintenanceStandard.getStandardStatus())) {
-                queryWrapper.eq(EamMaintenanceStandard::getStandardStatus, eamMaintenanceStandard.getStandardStatus());
+                queryWrapper.eq("ems.standard_status", eamMaintenanceStandard.getStandardStatus());
+            }
+            //璁惧缂栫爜
+            if(StringUtils.isNotBlank(eamMaintenanceStandard.getKeyword())) {
+                queryWrapper.and(wrapper -> wrapper.like("e.equipment_name", eamMaintenanceStandard.getKeyword())
+                        .or()
+                        .like("e.equipment_code", eamMaintenanceStandard.getKeyword()));
             }
         }
-        queryWrapper.orderByDesc(EamMaintenanceStandard::getCreateTime);
-        return eamMaintenanceStandardMapper.selectPage(page, queryWrapper);
+        queryWrapper.orderByDesc("ems.create_time");
+        return eamMaintenanceStandardMapper.queryPageList(page, queryWrapper);
     }
 
     @Override
@@ -262,4 +269,47 @@
         }
         return list.get(0);
     }
+
+    /**
+     * 鏌ヨ鏍囧噯鍒楄〃-鍓嶇灞曠ず璇ョ敤鎴锋嫢鏈夌殑鏍囧噯
+     * @param keyword 璁惧缂栧彿
+     * @param maintenanceCategory 淇濆吇绫诲瀷
+     * @return
+     */
+    @Override
+    public List<EamMaintenanceStandard> queryListByKeywordAndCategory(String keyword, String equipmentId, Integer pageSize, String maintenanceCategory){
+        Page<EamMaintenanceStandard> page = new Page<EamMaintenanceStandard>(1, pageSize);
+        EamMaintenanceStandard query = new EamMaintenanceStandard();
+        query.setEquipmentId(equipmentId);
+        query.setKeyword(keyword);
+        query.setMaintenanceCategory(maintenanceCategory);
+        query.setStandardStatus(MaintenanceStandardStatusEnum.NORMAL.name());
+        IPage<EamMaintenanceStandard> pageData = this.queryPageList(page, query);
+        return pageData.getRecords();
+    }
+
+    @Override
+    public List<EamMaintenanceStandard> queryListByCategory(String maintenanceCategory) {
+        LambdaQueryWrapper<EamMaintenanceStandard> queryWrapper = new LambdaQueryWrapper<>();
+        queryWrapper.eq(EamMaintenanceStandard::getDelFlag, CommonConstant.DEL_FLAG_0);
+        queryWrapper.eq(EamMaintenanceStandard::getMaintenanceCategory, maintenanceCategory);
+        queryWrapper.eq(EamMaintenanceStandard::getStandardStatus, MaintenanceStandardStatusEnum.NORMAL.name());
+        return eamMaintenanceStandardMapper.selectList(queryWrapper);
+    }
+
+    @Override
+    public void downloadFile(HttpServletResponse response, EamMaintenanceStandard eamMaintenanceStandard) throws JsonProcessingException {
+        String json = eamMaintenanceStandard.getReferenceFile();
+        if(StringUtils.isNotBlank(json)){
+            ObjectMapper mapper = new ObjectMapper();
+            Map<String, Object> map = mapper.readValue(json, Map.class);
+            String fileEncodeName = (String) map.get("fileEncodeName");
+            List<EamSysFiles> list = sysFilesService.lambdaQuery().eq(EamSysFiles::getFileEncodeName, fileEncodeName).list();
+            if(list.size()>0){
+                FileUtil.downLoadFile(response, list.get(0).getFilePath(), list.get(0).getFileName());
+            }else{
+                ExceptionCast.cast("鏂囦欢涓嶅瓨鍦�");
+            }
+        }
+    }
 }

--
Gitblit v1.9.3