package com.jpsoft.shinestar.modules.base.service;

import com.github.pagehelper.Page;
import com.jpsoft.shinestar.modules.base.entity.MessageInfo;
import com.jpsoft.shinestar.modules.base.entity.MessagePerson;
import com.jpsoft.shinestar.modules.common.dto.Sort;

import java.util.List;
import java.util.Map;

public interface MessageInfoService {
	MessageInfo get(String id);
	boolean exist(String id);
	int insert(MessageInfo model);
	int update(MessageInfo model);
	int delete(String id);
	List<MessageInfo> list();
	Page<MessageInfo> pageSearch(Map<String, Object> searchParams, int pageNum, int pageSize, boolean count, List<Sort> sortList);
	Page<MessagePerson> personSearch(Map<String, Object> searchParams, int pageIndex, int pageSize, boolean b, List<Sort> sortList);
	/**
	 * 对用户推送消息
	 * @param personId 接受者
	 * @param sender 发送者
	 * @param title 标题
	 * @param content 内容
	 * @param type 消息类型
	 * @return
	 */
	int sendForPerson(Long personId, Long sender, String title, String content, String type);
}