From c19842a8cc158631c970a9d41f73489579eb67ee Mon Sep 17 00:00:00 2001
From: Lius <Lius2225@163.com>
Date: 星期一, 15 七月 2024 15:24:39 +0800
Subject: [PATCH] 设备报警报表

---
 lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/EquipmentAlarmServiceImpl.java |  112 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 112 insertions(+), 0 deletions(-)

diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/EquipmentAlarmServiceImpl.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/EquipmentAlarmServiceImpl.java
index aa11e2d..e1b01ce 100644
--- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/EquipmentAlarmServiceImpl.java
+++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/EquipmentAlarmServiceImpl.java
@@ -1,12 +1,29 @@
 package org.jeecg.modules.mdc.service.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.apache.commons.lang.StringUtils;
+import org.apache.shiro.SecurityUtils;
+import org.jeecg.common.system.vo.LoginUser;
+import org.jeecg.modules.mdc.dto.EquipmentAlarmDto;
 import org.jeecg.modules.mdc.entity.EquipmentAlarm;
+import org.jeecg.modules.mdc.entity.MdcEquipmentOvertime;
 import org.jeecg.modules.mdc.mapper.EquipmentAlarmMapper;
 import org.jeecg.modules.mdc.service.IEquipmentAlarmService;
+import org.jeecg.modules.mdc.service.IMdcEquipmentService;
+import org.jeecg.modules.mdc.vo.EquipmentAlarmVo;
+import org.jeecgframework.poi.excel.def.NormalExcelConstants;
+import org.jeecgframework.poi.excel.entity.ExportParams;
+import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
 import org.springframework.stereotype.Service;
+import org.springframework.web.servlet.ModelAndView;
 
+import javax.annotation.Resource;
+import javax.servlet.http.HttpServletRequest;
+import java.util.ArrayList;
+import java.util.Collections;
 import java.util.Date;
 import java.util.List;
 
@@ -16,10 +33,105 @@
  */
 @Service
 public class EquipmentAlarmServiceImpl extends ServiceImpl<EquipmentAlarmMapper, EquipmentAlarm> implements IEquipmentAlarmService {
+
+    @Resource
+    private IMdcEquipmentService mdcEquipmentService;
+
     @Override
     public List<EquipmentAlarm> findEquipmentAlarmByDate(String equipmentId, Date startTime, Date endTime) {
         return this.list(new LambdaQueryWrapper<EquipmentAlarm>()
                 .ge(EquipmentAlarm::getCollecttime, startTime).le(EquipmentAlarm::getCollecttime, endTime)
                 .eq(EquipmentAlarm::getEquipmentid, equipmentId).orderByDesc(EquipmentAlarm::getCollecttime));
     }
+
+    /**
+     * 鍒嗛〉鍒楄〃
+     *
+     * @param userId
+     * @param page
+     * @param equipmentAlarmVo
+     * @param req
+     * @return
+     */
+    @Override
+    public IPage<EquipmentAlarmDto> pageList(String userId, Page<EquipmentAlarmDto> page, EquipmentAlarmVo equipmentAlarmVo, HttpServletRequest req) {
+        List<String> equipmentIds = new ArrayList<>();
+        if (StringUtils.isNotEmpty(equipmentAlarmVo.getParentId()) && StringUtils.isEmpty(equipmentAlarmVo.getEquipmentId())) {
+            if ("2".equals(equipmentAlarmVo.getTypeTree())) {
+                //閮ㄩ棬灞傜骇
+                equipmentIds = mdcEquipmentService.getEquipmentIdsByDepart(userId, equipmentAlarmVo.getParentId());
+            } else {
+                //浜х嚎灞傜骇
+                equipmentIds = mdcEquipmentService.getEquipmentIdsProduction(userId, equipmentAlarmVo.getParentId());
+            }
+        } else if (StringUtils.isNotEmpty(equipmentAlarmVo.getEquipmentId())) {
+            //鍗曞彴璁惧淇℃伅
+            equipmentAlarmVo.setEquipmentIdList(Collections.singletonList(equipmentAlarmVo.getEquipmentId()));
+        } else {
+            //鏌ヨ鐢ㄦ埛鎷ユ湁鐨勬墍鏈夎澶囦俊鎭�
+            if ("2".equals(equipmentAlarmVo.getTypeTree())) {
+                //閮ㄩ棬灞傜骇
+                equipmentIds = mdcEquipmentService.getEquipmentIdsByDepart(userId, null);
+            } else {
+                //浜х嚎灞傜骇
+                equipmentIds = mdcEquipmentService.getEquipmentIdsProduction(userId, null);
+            }
+        }
+
+        if (equipmentAlarmVo.getEquipmentIdList() == null || equipmentAlarmVo.getEquipmentIdList().isEmpty()) {
+            equipmentAlarmVo.setEquipmentIdList(equipmentIds);
+        }
+
+        if (equipmentAlarmVo.getEquipmentIdList() == null || equipmentAlarmVo.getEquipmentIdList().isEmpty()) {
+            return null;
+        }
+        return this.baseMapper.pageList(page, equipmentAlarmVo);
+    }
+
+    @Override
+    public ModelAndView exportXls(String userId, EquipmentAlarmVo equipmentAlarmVo) {
+        List<String> equipmentIds = new ArrayList<>();
+        if (StringUtils.isNotEmpty(equipmentAlarmVo.getParentId()) && StringUtils.isEmpty(equipmentAlarmVo.getEquipmentId())) {
+            if ("2".equals(equipmentAlarmVo.getTypeTree())) {
+                //閮ㄩ棬灞傜骇
+                equipmentIds = mdcEquipmentService.getEquipmentIdsByDepart(userId, equipmentAlarmVo.getParentId());
+            } else {
+                //浜х嚎灞傜骇
+                equipmentIds = mdcEquipmentService.getEquipmentIdsProduction(userId, equipmentAlarmVo.getParentId());
+            }
+        } else if (StringUtils.isNotEmpty(equipmentAlarmVo.getEquipmentId())) {
+            //鍗曞彴璁惧淇℃伅
+            equipmentAlarmVo.setEquipmentIdList(Collections.singletonList(equipmentAlarmVo.getEquipmentId()));
+        } else {
+            //鏌ヨ鐢ㄦ埛鎷ユ湁鐨勬墍鏈夎澶囦俊鎭�
+            if ("2".equals(equipmentAlarmVo.getTypeTree())) {
+                //閮ㄩ棬灞傜骇
+                equipmentIds = mdcEquipmentService.getEquipmentIdsByDepart(userId, null);
+            } else {
+                //浜х嚎灞傜骇
+                equipmentIds = mdcEquipmentService.getEquipmentIdsProduction(userId, null);
+            }
+        }
+
+        if (equipmentAlarmVo.getEquipmentIdList() == null || equipmentAlarmVo.getEquipmentIdList().isEmpty()) {
+            equipmentAlarmVo.setEquipmentIdList(equipmentIds);
+        }
+
+        if (equipmentAlarmVo.getEquipmentIdList() == null || equipmentAlarmVo.getEquipmentIdList().isEmpty()) {
+            return null;
+        }
+        // Step.2 AutoPoi 瀵煎嚭Excel
+        ModelAndView mv = new ModelAndView(new JeecgEntityExcelView());
+        List<EquipmentAlarmDto> equipmentAlarmDtos = this.baseMapper.list(equipmentAlarmVo);
+        // 瀵煎嚭鏂囦欢鍚嶇О
+        mv.addObject(NormalExcelConstants.FILE_NAME, "璁惧鎶ヨ鍒楄〃");
+        mv.addObject(NormalExcelConstants.CLASS, EquipmentAlarmDto.class);
+        //鑾峰彇褰撳墠鐧诲綍鐢ㄦ埛
+        //update-begin---author:wangshuai ---date:20211227  for锛歔JTC-116]瀵煎嚭浜哄啓姝讳簡------------
+        LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal();
+        mv.addObject(NormalExcelConstants.PARAMS, new ExportParams("璁惧鎶ヨ鍒楄〃鏁版嵁", "瀵煎嚭浜�:" + user.getRealname(), "璁惧鎶ヨ"));
+        //update-end---author:wangshuai ---date:20211227  for锛歔JTC-116]瀵煎嚭浜哄啓姝讳簡------------
+        mv.addObject(NormalExcelConstants.DATA_LIST, equipmentAlarmDtos);
+        return mv;
+    }
 }

--
Gitblit v1.9.3