package com.yuanchu.mom.service.impl; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.yuanchu.mom.common.GetLook; import com.yuanchu.mom.pojo.InformationNotification; import com.yuanchu.mom.mapper.InformationNotificationMapper; import com.yuanchu.mom.pojo.InformationNotificationDto; import com.yuanchu.mom.service.InformationNotificationService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.List; import java.util.Map; /** *

* 消息通知 服务实现类 *

* * @author 江苏鵷雏网络科技有限公司 * @since 2024-04-23 02:14:30 */ @Service public class InformationNotificationServiceImpl extends ServiceImpl implements InformationNotificationService { @Autowired private GetLook getLook; @Override public IPage getPage(Page page, String messageType) { return baseMapper.getPage(page, messageType); } @Override public void markAllInformationReadOrDeleteAllReadMessages(Boolean isMarkAllInformationRead) { Map map1 = getLook.selectPowerByMethodAndUserId("selectInsOrderParameter"); if (isMarkAllInformationRead) { baseMapper.update(new InformationNotification(), Wrappers.lambdaUpdate() .set(InformationNotification::getViewStatus, true) .eq(InformationNotification::getConsigneeId, map1.get("userId"))); } else { baseMapper.delete(Wrappers.lambdaUpdate() .eq(InformationNotification::getConsigneeId, map1.get("userId")) .eq(InformationNotification::getViewStatus, true)); } } @Override public Boolean checkForUnreadData() { Map map1 = getLook.selectPowerByMethodAndUserId("selectInsOrderParameter"); List informationNotifications = baseMapper.selectList( Wrappers.lambdaQuery() .eq(InformationNotification::getConsigneeId, map1.get("userId")) .eq(InformationNotification::getViewStatus, false) .last("limit 1")); return !informationNotifications.isEmpty(); } }