package com.xzx.gc.system.service; import cn.hutool.core.date.DateUtil; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import com.xzx.gc.common.constant.SysEnum; import com.xzx.gc.common.utils.ExceptionUtils; import com.xzx.gc.model.system.SysMessageReq; import com.xzx.gc.model.system.SysMessageVo; import com.xzx.gc.system.mapper.SysMessageMapper; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.HashMap; import java.util.List; import java.util.Map; @Service @Transactional public class SysMessageService { @Autowired private SysMessageMapper sysMessageMapper; public int addSysMessage(SysMessageReq sysMessageReq) { Map params = new HashMap<>(16); params.put("message",sysMessageReq.getMessage()); params.put("userId",sysMessageReq.getReceiveUserId()); params.put("mobilePhone",sysMessageReq.getMobilePhone()); params.put("messageType",sysMessageReq.getMessageType()); params.put("flag",SysEnum.未读.getValue()); params.put("createTime",DateUtil.now()); params.put("createUserId",sysMessageReq.getCreateUserId()); try { sysMessageMapper.addSysMessage(params); } catch (Exception e) { ExceptionUtils.err("新增消息失败",e); } return 0; } public PageInfo getSysMessageByType(SysMessageReq sysMessageReq) { PageHelper.startPage(sysMessageReq.getPageNo(),sysMessageReq.getPageSize()); Map params = new HashMap<>(16); params.put("messageType",sysMessageReq.getMessageType()); params.put("userId",sysMessageReq.getUserId()); List sysMessageByType = sysMessageMapper.getSysMessageByType(params); PageInfo pageInfo=new PageInfo<>(sysMessageByType); //获取所有未读消息数目 int notReadNum = sysMessageMapper.getNotReadNum(sysMessageReq.getUserId()); pageInfo.setNavigatePages(notReadNum); return pageInfo; } public SysMessageVo getSysMessageById(SysMessageReq sysMessageReq) { Map params = new HashMap<>(16); params.put("id",sysMessageReq.getId()); return sysMessageMapper.getSysMessageById(params); } public int editSysMessage(SysMessageReq sysMessageReq) { try { Map params = new HashMap<>(16); params.put("id",sysMessageReq.getId()); params.put("flag",sysMessageReq.getFlag()); return sysMessageMapper.editSysMessageVo(params); } catch (Exception e) { ExceptionUtils.err("消息修改失败",e); } return 0; } public int updateAllMessageFlag(SysMessageReq sysMessageReq) { return sysMessageMapper.updateAllMessageFlag(sysMessageReq); } }