Files
senmesh-zc/src/main/java/com/senmesh/sfile/service/UserFileService.java

103 lines
2.1 KiB
Java
Raw Normal View History

2025-12-31 18:10:10 +08:00
package com.senmesh.sfile.service;
import com.senmesh.sfile.dto.ExpandUserFileCreateDTO;
import com.senmesh.sfile.dto.UserFileCreateDTO;
import com.senmesh.sfile.dto.UserFileDTO;
import com.senmesh.sfile.dto.UserFileModifyDTO;
import com.senmesh.sfile.dto.UserFileModifyStatusDTO;
import com.senmesh.sfile.dto.UserFileQueryDTO;
import java.util.List;
/**
* 用户文件Service
*/
public interface UserFileService {
/**
* 创建用户文件
*
* @param createDTO 创建DTO
* @return 主键ID
*/
Long create(UserFileCreateDTO createDTO);
/**
* 根据普通文件创建新的文件(复制)
* 创建一个文件夹,文件名为原文件名+时间戳,然后复制原文件下所有文件类型的子文件
*
* @param expandCreateDTO 扩展创建DTO
* @return 新创建的文件夹ID
*/
Long create(ExpandUserFileCreateDTO expandCreateDTO);
/**
* 修改用户文件
*
* @param modifyDTO 修改DTO
*/
void modify(UserFileModifyDTO modifyDTO);
/**
* 修改用户文件状态
*
* @param modifyStatusDTO 修改状态DTO
*/
void modifyStatus(UserFileModifyStatusDTO modifyStatusDTO);
/**
* 修改用户文件状态(校验用户权限)
*
* @param modifyStatusDTO 修改状态DTO
* @param userId 用户ID
*/
void modifyStatus(UserFileModifyStatusDTO modifyStatusDTO, Long userId);
/**
* 删除用户文件
*
* @param id 主键ID
*/
void remove(Long id);
/**
* 删除用户文件(校验用户权限)
*
* @param id 主键ID
* @param userId 用户ID
*/
void remove(Long id, Long userId);
/**
* 列表查询
*
* @param queryDTO 查询DTO
* @return List<UserFileDTO>
*/
List<UserFileDTO> list(UserFileQueryDTO queryDTO);
/**
* 分页查询
*
* @param queryDTO 查询DTO
*/
void page(UserFileQueryDTO queryDTO);
/**
* 单个查询
*
* @param queryDTO 查询DTO
* @return UserFileDTO
*/
UserFileDTO find(UserFileQueryDTO queryDTO);
/**
* 单个查询(不存在抛异常)
*
* @param queryDTO 查询DTO
* @return UserFileDTO
*/
UserFileDTO findOne(UserFileQueryDTO queryDTO);
}