From 34981c30a78e8bbd7791131059a9210f9928b62c Mon Sep 17 00:00:00 2001
From: 刘光辉 <347230014@qq.com>
Date: 星期四, 17 九月 2026 09:24:09 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master' into master
---
jnpf-lims/jnpf-lims-biz/src/main/java/jnpf/mapper/EmailReceiveMapper.java | 93 ++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 93 insertions(+), 0 deletions(-)
diff --git a/jnpf-lims/jnpf-lims-biz/src/main/java/jnpf/mapper/EmailReceiveMapper.java b/jnpf-lims/jnpf-lims-biz/src/main/java/jnpf/mapper/EmailReceiveMapper.java
new file mode 100644
index 0000000..1d3738f
--- /dev/null
+++ b/jnpf-lims/jnpf-lims-biz/src/main/java/jnpf/mapper/EmailReceiveMapper.java
@@ -0,0 +1,93 @@
+package jnpf.mapper;
+
+
+import cn.hutool.core.util.ObjectUtil;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import jnpf.base.PaginationTime;
+import jnpf.base.mapper.SuperMapper;
+import jnpf.entity.EmailReceiveEntity;
+import jnpf.util.UserProvider;
+import org.apache.commons.lang3.StringUtils;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 閭欢鎺ユ敹
+ *
+ * @author JNPF寮�鍙戝钩鍙扮粍
+ * @version V3.1.0
+ * @copyright 寮曡繄淇℃伅鎶�鏈湁闄愬叕鍙�
+ * @date 2019骞�9鏈�26鏃� 涓婂崍9:18
+ */
+public interface EmailReceiveMapper extends SuperMapper<EmailReceiveEntity> {
+
+ default List<EmailReceiveEntity> getReceiveList(PaginationTime paginationTime) {
+ String userId = UserProvider.getUser().getUserId();
+ QueryWrapper<EmailReceiveEntity> queryWrapper = new QueryWrapper<>();
+ queryWrapper.lambda().eq(EmailReceiveEntity::getCreatorUserId, userId);
+ //鏃ユ湡鑼冨洿锛堣繎7澶┿�佽繎1鏈堛�佽繎3鏈堛�佽嚜瀹氫箟锛�
+ if (ObjectUtil.isNotEmpty(paginationTime.getStartTime()) && ObjectUtil.isNotEmpty(paginationTime.getEndTime())) {
+ queryWrapper.lambda().between(EmailReceiveEntity::getFdate, new Date(paginationTime.getStartTime()), new Date(paginationTime.getEndTime()));
+ }
+ //鍏抽敭瀛楋紙鐢ㄦ埛銆両P鍦板潃銆佸姛鑳藉悕绉帮級
+ String keyWord = paginationTime.getKeyword() != null ? paginationTime.getKeyword() : null;
+ //鍏抽敭瀛楋紙鍙戜欢浜恒�佷富棰橈級
+ if (!StringUtils.isEmpty(keyWord)) {
+ queryWrapper.lambda().and(
+ t -> t.like(EmailReceiveEntity::getSender, keyWord)
+ .or().like(EmailReceiveEntity::getSubject, keyWord)
+ );
+ }
+ //鎺掑簭
+ if (StringUtils.isEmpty(paginationTime.getSidx())) {
+ queryWrapper.lambda().orderByDesc(EmailReceiveEntity::getFdate);
+ } else {
+ queryWrapper = "ASC".equalsIgnoreCase(paginationTime.getSort()) ? queryWrapper.orderByAsc(paginationTime.getSidx()) : queryWrapper.orderByDesc(paginationTime.getSidx());
+ }
+ Page<EmailReceiveEntity> page = new Page<>(paginationTime.getCurrentPage(), paginationTime.getPageSize());
+ IPage<EmailReceiveEntity> userIPage = this.selectPage(page, queryWrapper);
+ return paginationTime.setData(userIPage.getRecords(), page.getTotal());
+ }
+
+ default List<EmailReceiveEntity> getDashboardReceiveList() {
+ String userId = UserProvider.getUser().getUserId();
+ QueryWrapper<EmailReceiveEntity> queryWrapper = new QueryWrapper<>();
+ queryWrapper.lambda().eq(EmailReceiveEntity::getCreatorUserId, userId).eq(EmailReceiveEntity::getIsRead, 0).orderByDesc(EmailReceiveEntity::getCreatorTime);
+ Page<EmailReceiveEntity> page = new Page<>(1, 20);
+ IPage<EmailReceiveEntity> iPage = this.selectPage(page, queryWrapper);
+ return iPage.getRecords();
+ }
+
+ default List<EmailReceiveEntity> getStarredList(PaginationTime paginationTime) {
+ String userId = UserProvider.getUser().getUserId();
+ QueryWrapper<EmailReceiveEntity> queryWrapper = new QueryWrapper<>();
+ queryWrapper.lambda().eq(EmailReceiveEntity::getCreatorUserId, userId).eq(EmailReceiveEntity::getStarred, 1);
+ //鏃ユ湡鑼冨洿锛堣繎7澶┿�佽繎1鏈堛�佽繎3鏈堛�佽嚜瀹氫箟锛�
+ if (ObjectUtil.isNotEmpty(paginationTime.getStartTime()) && ObjectUtil.isNotEmpty(paginationTime.getEndTime())) {
+ queryWrapper.lambda().between(EmailReceiveEntity::getCreatorTime, new Date(paginationTime.getStartTime()), new Date(paginationTime.getEndTime()));
+ }
+ //鍏抽敭瀛楋紙鐢ㄦ埛銆両P鍦板潃銆佸姛鑳藉悕绉帮級
+ String keyWord = paginationTime.getKeyword() != null ? paginationTime.getKeyword() : null;
+ //鍏抽敭瀛楋紙鍙戜欢浜恒�佷富棰橈級
+ if (!StringUtils.isEmpty(keyWord)) {
+ queryWrapper.lambda().and(
+ t -> t.like(EmailReceiveEntity::getSender, keyWord)
+ .or().like(EmailReceiveEntity::getSubject, keyWord)
+ );
+ }
+ //鎺掑簭
+ if (StringUtils.isEmpty(paginationTime.getSidx())) {
+ queryWrapper.lambda().orderByDesc(EmailReceiveEntity::getCreatorTime);
+ } else {
+ queryWrapper = "ASC".equalsIgnoreCase(paginationTime.getSort()) ? queryWrapper.orderByAsc(paginationTime.getSidx()) : queryWrapper.orderByDesc(paginationTime.getSidx());
+ }
+ Page<EmailReceiveEntity> page = new Page<>(paginationTime.getCurrentPage(), paginationTime.getPageSize());
+ IPage<EmailReceiveEntity> userIPage = this.selectPage(page, queryWrapper);
+ return paginationTime.setData(userIPage.getRecords(), page.getTotal());
+ }
+
+
+}
--
Gitblit v1.8.0