
package org.sky.scientific.service;

import com.baomidou.mybatisplus.core.conditions.Wrapper;
import org.sky.scientific.pojo.entity.YsZjtrfyEntity;
import org.sky.scientific.pojo.vo.YsZjtrfyVO;
import org.sky.scientific.excel.YsZjtrfyExcel;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.sky.core.mp.base.BaseService;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;

/**
 * 项目预算-直接投入费用 服务类
 *
 * @author Kd
 * @since 2025-06-29
 */
public interface IYsZjtrfyService extends BaseService<YsZjtrfyEntity> {
	/**
	 * 自定义分页
	 *
	 * @param page 分页参数
	 * @param ysZjtrfy 查询参数
	 * @return IPage<YsZjtrfyVO>
	 */
	IPage<YsZjtrfyVO> selectYsZjtrfyPage(IPage<YsZjtrfyVO> page, YsZjtrfyVO ysZjtrfy);


	/**
	 * 导出数据
	 *
	 * @param queryWrapper 查询条件
	 * @return List<YsZjtrfyExcel>
	 */
	List<YsZjtrfyExcel> exportYsZjtrfy(Wrapper<YsZjtrfyEntity> queryWrapper);

    boolean saveZjtrfy(YsZjtrfyEntity ysZjtrfy);

	/**
	 * 删除
	 *
	 * @param ids 主键集合
	 * @return boolean
	 */
	boolean physicalDeleteByIds(List<Long> ids);

	/**
	 * 修改
	 *
	 * @param ysZjtrfy 实体对象
	 * @return boolean
	 */
	boolean updateZjtrfy(YsZjtrfyEntity ysZjtrfy);

	/**
	 * 导入
	 *
	 * @param file 文件
	 * @param xmId 项目id
	 */
    void importZjtrfy(MultipartFile file, Long xmId);
}
