package org.sky.flow.business.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import org.sky.flow.core.pojo.entity.KdFlow;

/**
 * 流程业务类
 *
 */
public interface FlowBusinessService {

	/**
	 * 流程待签列表
	 *
	 * @param page      分页工具
	 * @param kdFlow 流程类
	 * @return
	 */
	IPage<KdFlow> selectClaimPage(IPage<KdFlow> page, KdFlow kdFlow);

	/**
	 * 流程待办列表
	 *
	 * @param page      分页工具
	 * @param kdFlow 流程类
	 * @return
	 */
	IPage<KdFlow> selectTodoPage(IPage<KdFlow> page, KdFlow kdFlow);

	/**
	 * 流程已发列表
	 *
	 * @param page      分页工具
	 * @param kdFlow 流程类
	 * @return
	 */
	IPage<KdFlow> selectSendPage(IPage<KdFlow> page, KdFlow kdFlow);

	/**
	 * 流程办结列表
	 *
	 * @param page      分页工具
	 * @param kdFlow 流程类
	 * @return
	 */
	IPage<KdFlow> selectDonePage(IPage<KdFlow> page, KdFlow kdFlow);

	/**
	 * 完成任务
	 *
	 * @param leave 请假信息
	 * @return boolean
	 */
	boolean completeTask(KdFlow leave);
}
