package jnpf.dmsMapper;
import jnpf.dmsEntity.permission.entity.DmsFileVersionEntity;
import jnpf.dmsEntity.permission.form.DmsPersonalFolderFileForm;
import jnpf.dmsEntity.permission.vo.DmsPersonalFolderFileVO;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import java.util.List;
import java.util.UUID;
@Mapper
public interface DmsPersonalFolderMapper {
@Select({""})
List selectReadableVersions(
@Param("tenantId") String tenantId,
@Param("fileVersionIds") List fileVersionIds);
@Insert({""})
int insertBorrowSnapshots(
@Param("tenantId") String tenantId,
@Param("userId") String userId,
@Param("files") List files);
@Insert({""})
int insertDownloadSnapshots(
@Param("tenantId") String tenantId,
@Param("userId") String userId,
@Param("files") List files);
@Insert("INSERT INTO public.dms_personal_folder_items "
+ "(tenant_id, user_id, folder_type, document_id, file_version_id, valid_to) "
+ "VALUES (#{tenantId}, #{userId}, 'FAVORITE', #{documentId}, #{fileVersionId}, NULL) "
+ "ON CONFLICT (tenant_id, user_id, folder_type, file_version_id) DO NOTHING")
int insertFavoriteSnapshot(@Param("tenantId") String tenantId,
@Param("userId") String userId,
@Param("documentId") UUID documentId,
@Param("fileVersionId") UUID fileVersionId);
@Select({""})
List selectFiles(@Param("tenantId") String tenantId,
@Param("userId") String userId,
@Param("folderType") String folderType,
@Param("keyword") String keyword,
@Param("limit") int limit);
}