package com.palmnest.service.estateserve;

import com.palmnest.application.bean.Page;
import com.palmnest.application.bean.Pagenation;
import com.palmnest.model.estateserve.Announcement;
import com.palmnest.service.GenericManager;
import org.hibernate.criterion.Criterion;

import java.util.List;

/**
 * 通知公告业务层信息接口
 *
 * @author yubing
 * @since 2017-1-19
 */
public interface AnnouncementManager extends GenericManager<Announcement, Integer> {

	/**
	 * 分页查询
	 *
	 * @param pageno   页码
	 * @param pagesize 每页条数
	 * @param wheresql 过滤条件SQL
	 * @return
	 */
	public Page getAnnouncementByPage(int pageno, int pagesize, String wheresql);

	/**
	 * 分页查询
	 *
	 * @param pageNo     页码
	 * @param filterList 过滤条件集合
	 * @return
	 */
	public Pagenation<Announcement> queryAnnouncement(int pageNo, List<Criterion> filterList);

	/**
	 * 群发通知处理
	 * 通知方式：微信模板通知
	 *
	 * @param anno
	 */
	public void assginMassnotification(Announcement anno);

	/**
	 * 处理定时群发的通知公告
	 */
	public void assignTimerAnnouncement();
}
