package com.qxueyou.scc.teach.res.service;
|
|
import com.qxueyou.scc.base.model.FileMeta;
|
import com.qxueyou.scc.base.model.Result;
|
import com.qxueyou.scc.teach.res.model.Res;
|
import com.qxueyou.scc.teach.res.model.ResDir;
|
import com.qxueyou.scc.teach.res.model.ResLib;
|
|
import java.util.List;
|
|
public interface IResService {
|
|
/**
|
* 初始化个人资源库
|
*
|
* @return
|
*/
|
Result initUserLib();
|
|
/**
|
* 获取个人资源库
|
*
|
* @return
|
*/
|
ResLib readUserLib();
|
|
/**
|
* 读取个人资源库
|
*
|
* @param type 资源库类型
|
* @return
|
*/
|
ResLib getResLib(String type, String ownerId);
|
|
/**
|
* 新增资源
|
*
|
* @param dirId 文件夹id
|
* @param itemDestId 如果为视频,文档,文章等,则为文件id,如果为练习,则为exerciseGroupId
|
* @param name 资源名称
|
* @param remark 说明
|
* @param type 资源类型
|
* @param coverPageUrl 封面文件id,如果为练习,则为空
|
* @return 上传结果:{"success":true,msg:"success",attrs:{"resId","90023afwe32300fee23"}},若成功,则返回resId
|
*/
|
Result add(String dirId, String itemDestId, String name, String remark, String type, String coverPageUrl);
|
|
/**
|
* 批量上传资源
|
*/
|
Result addBatchRes(String dirId, String type, List<FileMeta> items);
|
|
/**
|
* 返回资源
|
*
|
* @param resId
|
* @return
|
*/
|
Res read(String resId);
|
|
/**
|
* 修改资源
|
*
|
* @param resId 资源id
|
* @param name 名称
|
* @param remark 说明
|
* @param coverPageUrl 封面文件id,如果为练习,则为空
|
* @return 上传结果:{"success":true,msg:"success",attrs:{}}
|
*/
|
Result update(String resId, String name, String remark, String coverPageUrl);
|
|
/**
|
* 删除资源
|
*
|
* @param resIds 资源id数组
|
* @return 上传结果:{"success":true,msg:"success",attrs:{}}
|
*/
|
Result delete(String[] resIds);
|
|
/**
|
* 复制资源
|
*
|
* @param resId 资源id数组
|
* @param destDirId 目标文件夹id
|
* @param name 资源名称
|
* @return 上传结果:{"success":true,msg:"success",attrs:{}}
|
*/
|
Result doCopy(String resId, String destDirId, String name);
|
|
/**
|
* 移动资源
|
*
|
* @param resId 资源id数组
|
* @param destDirId 目标文件夹id
|
* @param name 资源名称
|
* @return 上传结果:{"success":true,msg:"success",attrs:{}}
|
*/
|
Result doMove(String resId, String destDirId, String name);
|
|
/**
|
* 查询资源
|
*
|
* @param dirId 资源文件夹id
|
* @param text 搜索文本
|
* @param pageNo 页码
|
* @param pageNum 每页显示行数
|
* @param type 资源类型
|
* @return 返回资源列表
|
*/
|
List<Res> listRes(String dirId, String text, Integer pageSize, Integer pageNum, String type);
|
|
/**
|
* 查询我的所有资源
|
*
|
* @param text 搜索文本
|
* @param pageNo 页码
|
* @param pageNum 每页显示行数
|
* @param type 资源类型
|
* @return 返回资源列表
|
*/
|
List<Res> listMyRes(String text, Integer pageSize, Integer pageNum, String type);
|
|
/**
|
* 根据资源库类型查找资源
|
*
|
* @param libType 资源库类型
|
* @param ownerId 所有者id
|
* @param text 搜索文本
|
* @param pageSize 每页显示行数
|
* @param pageNum 页码
|
* @param resType 资源类型
|
* @return 返回资源列表
|
*/
|
List<Res> listResByLib(String libType, String ownerId, String text, Integer pageSize, Integer pageNum,
|
String resType);
|
|
/**
|
* 根据资源库类型查找资源总数
|
*
|
* @param libType 资源库类型
|
* @param ownerId 所有者id
|
* @param text 搜索文本
|
* @param resType 资源类型
|
* @return 返回资源列表
|
*/
|
int listResCountByLib(String libType, String ownerId, String text, String resType);
|
|
/**
|
* 我的所有资源的数量
|
*
|
* @param text 搜索文本
|
* @param type 资源类型
|
* @return 返回资源列表
|
*/
|
int listMyResCount(String text, String type);
|
|
/**
|
* 查询资源个数
|
*
|
* @param dirId 资源文件夹id
|
* @param text 搜索文本
|
* @param pageNo 页码
|
* @param pageNum 每页显示行数
|
* @param type 资源类型
|
* @return 返回资源总数
|
*/
|
int listResCount(String dirId, String text, String type);
|
|
/**
|
* 读取资源真实文件访问路径
|
*
|
* @param resId 资源id数组
|
* @param attribute 资源附加属性
|
* @return 上传结果:{"success":true,msg:"success",attrs:{"type":"",path:""}}
|
*/
|
Result readAccessPath(String resId, String attribute);
|
|
/**
|
* 新增资源文件夹
|
*
|
* @param parentDirId 父级资源文件夹id
|
* @param name 文件夹名称
|
* @return 上传结果:{"success":true,msg:"success",attrs:{"dirId","90023afwe32300fee23"}},若成功,则返回dirId
|
*/
|
Result addDir(String parentDirId, String name);
|
|
/**
|
* 读取资源文件夹
|
*
|
* @param dirId 资源文件夹id
|
* @return 上传结果:{"success":true,msg:"success",attrs:{"dirId","90023afwe32300fee23"}},若成功,则返回dirId
|
*/
|
ResDir readDir(String dirId);
|
|
/**
|
* 修改资源文件夹
|
*
|
* @param dirId 文件夹id
|
* @param name 名称
|
* @return 上传结果:{"success":true,msg:"success",attrs:{}}
|
*/
|
Result updateDir(String dirId, String name);
|
|
/**
|
* 删除资源文件夹
|
*
|
* @param dirIds 资源文件夹id数组
|
* @return 上传结果:{"success":true,msg:"success",attrs:{}}
|
*/
|
Result deleteDir(String[] dirIds);
|
|
/**
|
* 返回个人资源库下级资源文件夹列表
|
*
|
* @param parentDirId 父级资源文件夹id
|
* @return 返回资源列表
|
*/
|
List<ResDir> doGetMyLibChildDirs(String parentDirId);
|
|
/**
|
* 返回下级资源文件夹列表
|
*
|
* @param parentDirId 父级资源文件夹id
|
* @param type 资源库类型
|
* @return 返回资源列表
|
*/
|
List<ResDir> doGetChildDirs(String parentDirId, String type);
|
|
/**
|
* 返回资源库根节点
|
*
|
* @param type 类型
|
* @param ownerId 拥有者id
|
* @return 返回资源库根节点
|
*/
|
ResDir doGetRootDir(String type, String ownerId);
|
|
void deleteFile4Dir(String dirId);
|
}
|