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<String,Object> 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<SysMessageVo> getSysMessageByType(SysMessageReq sysMessageReq) {
|
PageHelper.startPage(sysMessageReq.getPageNo(),sysMessageReq.getPageSize());
|
Map<String,Object> params = new HashMap<>(16);
|
params.put("messageType",sysMessageReq.getMessageType());
|
params.put("userId",sysMessageReq.getUserId());
|
List<SysMessageVo> sysMessageByType = sysMessageMapper.getSysMessageByType(params);
|
PageInfo<SysMessageVo> pageInfo=new PageInfo<>(sysMessageByType);
|
//获取所有未读消息数目
|
int notReadNum = sysMessageMapper.getNotReadNum(sysMessageReq.getUserId());
|
pageInfo.setNavigatePages(notReadNum);
|
return pageInfo;
|
}
|
|
|
public SysMessageVo getSysMessageById(SysMessageReq sysMessageReq) {
|
Map<String,Object> params = new HashMap<>(16);
|
params.put("id",sysMessageReq.getId());
|
return sysMessageMapper.getSysMessageById(params);
|
}
|
|
|
public int editSysMessage(SysMessageReq sysMessageReq) {
|
try {
|
Map<String,Object> 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);
|
}
|
|
|
}
|