From 91ebbdc5ef67699d166498f6cf5fcc21058817dd Mon Sep 17 00:00:00 2001 From: Pu Zhibing <393733352@qq.com> Date: 星期二, 25 二月 2025 19:59:50 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/MessageNotificationServiceImpl.java | 49 ++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 46 insertions(+), 3 deletions(-) diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/MessageNotificationServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/MessageNotificationServiceImpl.java index 6570f1c..0317f8e 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/MessageNotificationServiceImpl.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/MessageNotificationServiceImpl.java @@ -1,23 +1,34 @@ package com.panzhihua.sangeshenbian.service.impl; +import cn.hutool.core.bean.BeanUtil; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.panzhihua.common.model.vos.LoginUserInfoVO; +import com.panzhihua.common.service.sangeshenbian.SystemUserService; import com.panzhihua.sangeshenbian.dao.MessageNotificationMapper; import com.panzhihua.sangeshenbian.model.entity.MessageNotification; +import com.panzhihua.sangeshenbian.model.entity.SystemUser; import com.panzhihua.sangeshenbian.model.query.BasePage; import com.panzhihua.sangeshenbian.model.vo.MessageNotificationVO; import com.panzhihua.sangeshenbian.service.IMessageNotificationService; +import com.panzhihua.sangeshenbian.service.ISystemUserService; import com.panzhihua.sangeshenbian.warpper.MessageNotificationList; +import lombok.RequiredArgsConstructor; +import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; + +import java.util.Objects; +import java.util.Optional; /** * @author zhibing.pu * @Date 2025/2/23 3:04 */ @Service +@RequiredArgsConstructor(onConstructor_ = {@Lazy}) public class MessageNotificationServiceImpl extends ServiceImpl<MessageNotificationMapper, MessageNotification> implements IMessageNotificationService { - + private final ISystemUserService systemUserService; @Override public IPage<MessageNotification> list(MessageNotificationList query) { @@ -31,7 +42,39 @@ @Override public Page<MessageNotificationVO> getMessageList(BasePage basePage, Long userId) { //TODO 待完善 - Page<MessageNotificationVO> page = new Page<>(basePage.getPageNum(),basePage.getPageSize()); - return page; + Page<MessageNotification> page = lambdaQuery().page(new Page<>(basePage.getPageNum(),basePage.getPageSize())); + return (Page<MessageNotificationVO>) page.convert(item-> BeanUtil.copyProperties(item, MessageNotificationVO.class)); + } + + /** + * 标记已读 + * @param loginUserInfoVO + */ + @Override + public void read(LoginUserInfoVO loginUserInfoVO) { + String undertakerUserId = ""; + Optional<SystemUser> systemUserByPhone = systemUserService.getSystemUserByPhone(loginUserInfoVO.getPhone()); + if (systemUserByPhone.isPresent()) { + SystemUser systemUser = systemUserByPhone.get(); + if (systemUser.getIsAdmin().equals(1)){ + switch (systemUser.getAccountLevel()) { + case 1: + undertakerUserId = "510400";//默认市级 + break; + case 2: + undertakerUserId = systemUser.getDistrictsCode(); + break; + case 3: + undertakerUserId = systemUser.getStreetId(); + break; + case 4: + undertakerUserId = systemUser.getCommunityId().toString(); + break; + } + } + }else { + undertakerUserId = loginUserInfoVO.getUserId().toString(); + } + this.lambdaUpdate().eq(MessageNotification::getUndertakerUserId, undertakerUserId).set(MessageNotification::getReadStatus, 1).update(); } } -- Gitblit v1.7.1