package com.goldenwater.slgc.mapper;

import java.util.List;
import com.goldenwater.slgc.domain.DocFile;
import org.apache.ibatis.annotations.Mapper;

/** 文档文件 Mapper */
@Mapper
public interface DocFileMapper {
    /**
     * 查询文档文件列表
     *
     * @param docFile 查询条件
     * @return 文档文件列表
     */
    public List<DocFile> selectDocFileList(DocFile docFile);

    /**
     * 通过文件ID查询文档文件
     *
     * @param fileId 文件ID
     * @return 文档文件
     */
    public DocFile selectDocFileById(String fileId);

    /**
     * 通过文件ID删除文档文件
     *
     * @param fileId 文件ID
     * @return 影响行数
     */
    public int deleteDocFileById(String fileId);

    /**
     * 批量删除文档文件
     *
     * @param fileIds 文件ID数组
     * @return 影响行数
     */
    public int deleteDocFileByIds(String[] fileIds);

    /**
     * 移动文档文件到指定分类
     *
     * @param docFile 包含fileIds(逗号分隔)和fileCate(目标分类)
     * @return 影响行数
     */
    public int moveDocFile(DocFile docFile);

    /**
     * 修改文档文件
     *
     * @param docFile 文档文件
     * @return 影响行数
     */
    public int updateDocFile(DocFile docFile);

    /**
     * 新增文档文件
     *
     * @param docFile 文档文件
     * @return 影响行数
     */
    public int insertDocFile(DocFile docFile);

    /**
     * 重命名文档文件
     *
     * @param docFile 包含fileId和fileName
     * @return 影响行数
     */
    public int renameDocFile(DocFile docFile);
}
