From 8322676d29e1202e093016233b5c260d29fe92e7 Mon Sep 17 00:00:00 2001
From: 龚焕茏 <2842157468@qq.com>
Date: 星期五, 02 八月 2024 18:19:16 +0800
Subject: [PATCH] feat:运维到期预警

---
 ycl-server/src/main/java/com/ycl/platform/service/impl/NotifyServiceImpl.java |   44 ++++++++++++++++++++++++++++++++------------
 1 files changed, 32 insertions(+), 12 deletions(-)

diff --git a/ycl-server/src/main/java/com/ycl/platform/service/impl/NotifyServiceImpl.java b/ycl-server/src/main/java/com/ycl/platform/service/impl/NotifyServiceImpl.java
index b42ff8f..ac2218a 100644
--- a/ycl-server/src/main/java/com/ycl/platform/service/impl/NotifyServiceImpl.java
+++ b/ycl-server/src/main/java/com/ycl/platform/service/impl/NotifyServiceImpl.java
@@ -9,19 +9,22 @@
 import com.ycl.platform.domain.vo.NotifyVO;
 import com.ycl.platform.domain.query.NotifyQuery;
 import java.util.List;
-import org.apache.commons.lang3.StringUtils;
+
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.ycl.system.page.PageUtil;
+import com.ycl.utils.SecurityUtils;
 import org.springframework.stereotype.Service;
 import org.springframework.security.core.context.SecurityContextHolder;
 import org.springframework.beans.BeanUtils;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.Assert;
 import java.util.ArrayList;
+import java.util.Objects;
 import java.util.stream.Collectors;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
 import lombok.RequiredArgsConstructor;
+import org.springframework.util.StringUtils;
 
 /**
  * 閫氱煡 鏈嶅姟瀹炵幇绫�
@@ -101,17 +104,34 @@
      */
     @Override
     public Result page(NotifyQuery query) {
-
-        IPage<Notify> page = new LambdaQueryChainWrapper<>(baseMapper)
-                .orderByDesc(Notify::getCreateTime)
-                .page(PageUtil.getPage(query, Notify.class));
-
-        List<NotifyVO> vos = page.getRecords().stream()
-                .map(
-                        entity -> NotifyVO.getVoByEntity(entity, null)
-                )
-                .collect(Collectors.toList());
-        return Result.ok().data(vos).total(page.getTotal());
+        IPage<Notify> page = PageUtil.getPage(query, Notify.class);
+        // 濡傛灉鏄崟浣嶇鐞嗗憳锛氭煡璇㈠崟浣嶉�氱煡
+        if (SecurityUtils.getLoginUser().getUnitAdmin()) {
+            new LambdaQueryChainWrapper<>(baseMapper)
+                    .between(Objects.nonNull(query.getEnd()) && Objects.nonNull(query.getStart()),
+                            Notify::getCreateTime,
+                            query.getStart(),
+                            query.getEnd())
+                    .eq(StringUtils.hasText(query.getWorkOrderNo()), Notify::getWorkOrderNo, query.getWorkOrderNo())
+                    .eq(Notify::getNotifyUnit, SecurityUtils.getLoginUser().getUnitId())
+                    .orderByDesc(Notify::getCreateTime)
+                    .page(page);
+        } else {
+            // 濡傛灉鏄崟浣嶄汉鍛橈細鏌ヨ鑷繁鐨勯�氱煡
+            new LambdaQueryChainWrapper<>(baseMapper)
+                    .between(Objects.nonNull(query.getEnd()) && Objects.nonNull(query.getStart()),
+                            Notify::getCreateTime,
+                            query.getStart(),
+                            query.getEnd())
+                    .eq(StringUtils.hasText(query.getWorkOrderNo()), Notify::getWorkOrderNo, query.getWorkOrderNo())
+                    .eq(Notify::getNotifyUser, SecurityUtils.getLoginUser().getUnitId())
+                    .orderByDesc(Notify::getCreateTime)
+                    .page(page);
+        }
+        List<NotifyVO> result = page.getRecords().stream().map(entity -> {
+            return NotifyVO.getVoByEntity(entity, null);
+        }).collect(Collectors.toList());
+        return Result.ok().data(result).total(page.getTotal());
     }
 
     /**

--
Gitblit v1.8.0