package com.dhcc.finance.main.service;

import java.util.List;

import com.dhcc.common.model.CurrencyMeta;
import com.dhcc.common.model.response.RestfulResponse;
import com.dhcc.finance.main.domain.CwGlDetail;
import com.dhcc.finance.main.model.CwGlDetailLike;
import com.dhcc.finance.main.model.CwGlVoucherAndDetailWeb;
import com.github.pagehelper.PageInfo;

/**
 * 功能描述：凭证分录信息接口
 * @author dml
 * @date 2019年3月28日 下午7:24:54
 * @修改日志：
 */
public interface CwGlDetailService {
	/**
	 * 功能描述：查询全部凭证分录信息
	 * @param pageNum
	 * @param pageSize
	 * @param navigatePages
	 * @return RestfulResponse<PageInfo<CwGlDetail>,CurrencyMeta>
	 * @author dml
	 * @date 2019年3月28日 下午7:29:05
	 * @修改日志：
	 */
	RestfulResponse<PageInfo<CwGlDetail>, CurrencyMeta> searchCwGlDetailAllData(int pageNum, int pageSize, int navigatePages);
	/**
	 * 功能描述：新增凭证分录信息
	 * @param cwGlDetail
	 * @return RestfulResponse<Object,CurrencyMeta>
	 * @author dml
	 * @date 2019年3月28日 下午7:29:10
	 * @修改日志：
	 */
	RestfulResponse<Object, CurrencyMeta> addCwGlDetail(CwGlDetail cwGlDetail);
	/**
	 * 功能描述：修改凭证分录信息
	 * @param cwGlDetail
	 * @return RestfulResponse<Object,CurrencyMeta>
	 * @author dml
	 * @date 2019年3月28日 下午7:29:17
	 * @修改日志：
	 */
	RestfulResponse<Object, CurrencyMeta> updateCwGlDetailByPk(CwGlDetail cwGlDetail);
	/**
	 * 功能描述：逻辑删除凭证分录信息
	 * @param pkDetail
	 * @return RestfulResponse<Object,CurrencyMeta>
	 * @author dml
	 * @date 2019年3月28日 下午7:29:20
	 * @修改日志：
	 */
	RestfulResponse<Object, CurrencyMeta> deleteCwGlDetailByPk(String pkDetail);
	/**
	 * 功能描述  获取恢复分录查询
	 *@param pageNum
	 *@param pageSize
	 *@param navigatePages
	 *@param cwGlDetailLike
	 *@return RestfulResponse<PageInfo<CwGlVoucherAndDetailWeb>,CurrencyMeta>
	 *@author huangpeng
	 *@date 2019年12月13日 上午11:07:04
	 *修改日志:
	 */
	RestfulResponse<PageInfo<CwGlVoucherAndDetailWeb>, CurrencyMeta> searchCwGlVoucherAndDetailWeb(int pageNum,
			int pageSize, int navigatePages, CwGlDetailLike cwGlDetailLike);
	/**
	 * 功能描述 批量恢复分录信息
	 *@param cwGlVoucherAndDetailWeb
	 *@return RestfulResponse<Object,CurrencyMeta>
	 *@author huangpeng
	 *@date 2019年12月13日 下午2:56:45
	 *修改日志:
	 */
	RestfulResponse<Object, CurrencyMeta> updateCwGlVoucherAndDetailWebForBatch(
			List<CwGlVoucherAndDetailWeb> cwGlVoucherAndDetailWeb);

}
