TdCPushMsgDao.java 2.11 KB
package com.zteits.pay.dao;

import java.util.List;

import com.github.pagehelper.PageInfo;
import com.zteits.clouds.api.dto.owner.param.QueryMessageRequest;
import com.zteits.clouds.api.dto.pay.JPushMessageDTO;
import com.zteits.clouds.api.dto.pay.JPushMsgQueryRequest;
import com.zteits.clouds.api.dto.pay.NewMessagePushDTO;
import com.zteits.clouds.api.dto.pay.param.JPushMessageRequest;
import com.zteits.pay.domain.JPushMessageDO;
import com.zteits.pay.domain.TdCPushMsg;

public interface TdCPushMsgDao {
	/**
	 * 消息中心首页,查询各消息类型的最新一条
	 * @param request
	 * @return
	 */
	public List<JPushMessageDO> getLatestPushedMessages(JPushMessageRequest request);
	
	/**
	 * 消息中心-消息详情,查询某一消息的详情
	 * @param request
	 * @return
	 */
	public List<JPushMessageDO> getPushedMessageDetails(JPushMessageRequest request);
	/**
	 * 分页查询
	 * @param request
	 * @return
	 * 2018年5月15日 zhaowg
	 */
	public PageInfo<JPushMessageDO> getPushedMessageDetailsForPage(JPushMessageRequest request);
	
	/**
     * 消息中心-删除消息,删除某一指定类型消息的详情
     * @param request
     */
    void deletePushedMessageDetails(JPushMessageRequest request);
    
	int insertSelective(TdCPushMsg record);

	/**
	 * 根据消息类型和外部编号判断消息是否已经存在
	 * @param msgType
	 * @param outMsgNo
	 * @return
	 */
	Boolean isExistsByOutMsgNo(Integer msgType,String outMsgNo);

	PageInfo<TdCPushMsg> queryPageJPushMsgByCondition(JPushMsgQueryRequest request);

	/**
	 * 根据用户id和消息类型查询推送消息
	 * @param req
	 * @return
	 */
    PageInfo<TdCPushMsg> selectMessageByMessageType(QueryMessageRequest req);

	/**
	 * 查询未读消息条数
	 * @param req
	 * @return
	 */
	NewMessagePushDTO countUnreadMessage(QueryMessageRequest req);

	/**
	 * 新版消息中心-更新消息未读状态
	 * @param messageRequest
	 * @return
	 */
    int updateUnreadMessage(QueryMessageRequest messageRequest);

	/**
	 * 查询未读消息总数
	 * @param messageRequest
	 * @return
	 */
	Long countUnreadTotal(QueryMessageRequest messageRequest);
}