package org.springblade.file.service;

import com.baomidou.mybatisplus.extension.service.IService;
import org.springblade.file.pojo.dto.BusinessAttachmentAddDTO;
import org.springblade.file.pojo.dto.BusinessAttachmentBatchAddDTO;
import org.springblade.file.pojo.dto.BusinessAttachmentDeleteDTO;
import org.springblade.file.pojo.dto.BusinessAttachmentQueryDTO;
import org.springblade.file.pojo.entity.BusinessAttachment;
import org.springblade.file.pojo.vo.BusinessAttachmentVO;

import java.util.List;

/**
 * 业务附件信息表 服务类
 *
 * @author BladeX
 * @since 2024-09-04
 */
public interface IBusinessAttachmentService extends IService<BusinessAttachment> {
	/**
	 *  保存
	 * @param param
	 * @return
	 */
	boolean saveAndRemove(BusinessAttachmentBatchAddDTO param);

	/**
	 * 保存并删除
	 *
	 * @param params
	 * @param deleteParam 业务id不为空，则先删除
	 * @return
	 */
	boolean saveAndRemove(List<BusinessAttachmentAddDTO> params, BusinessAttachmentDeleteDTO deleteParam);

	/**
	 * 根据bizId列表删除
	 *
	 * @param bizIds
	 * @return
	 */
	boolean removeByBizIds(List<Long> bizIds);

	/**
	 * 查询业务附件列表
	 *
	 * @param param
	 * @return
	 */
	List<BusinessAttachmentVO> queryList(BusinessAttachmentQueryDTO param);
}
