149 lines
5.7 KiB
C#
149 lines
5.7 KiB
C#
using Learun.Util;
|
||
using System.Collections.Generic;
|
||
using System.IO;
|
||
|
||
namespace Learun.Application.Base.SystemModule
|
||
{
|
||
/// <summary>
|
||
/// 版 本 PIT-ADMS V7.0.3 敏捷开发框架
|
||
/// Copyright (c) 2013-2018 Hexagon PPM
|
||
/// 创建人:研发部
|
||
/// 日 期:2017.03.08
|
||
/// 描 述:附件管理
|
||
/// </summary>
|
||
public interface AnnexesFileIBLL
|
||
{
|
||
#region 获取数据
|
||
/// <summary>
|
||
/// 获取实体列表
|
||
/// </summary>
|
||
/// <param name="keyValue">附件夹主键</param>
|
||
/// <returns></returns>
|
||
List<AnnexesFileEntity> GetList(string keyValue);
|
||
/// <summary>
|
||
/// 获取实体(根据F_Id)
|
||
/// </summary>
|
||
/// <param name="F_Id">主键</param>
|
||
/// <returns></returns>
|
||
AnnexesFileEntity GetEntityByF_Id(string F_Id);
|
||
/// <summary>
|
||
/// 获取附件名称集合
|
||
/// </summary>
|
||
/// <param name="keyValue">主键值</param>
|
||
/// <returns></returns>
|
||
string GetFileNames(string keyValue);
|
||
/// <summary>
|
||
/// 获取附件实体
|
||
/// </summary>
|
||
/// <param name="keyValue">主键</param>
|
||
/// <returns></returns>
|
||
AnnexesFileEntity GetEntity(string keyValue);
|
||
|
||
|
||
/// <summary>
|
||
/// 获取附件实体
|
||
/// </summary>
|
||
/// <param name="keyValue">附键</param>
|
||
/// <returns></returns>
|
||
List<AnnexesFileEntity> GetEntitys(string keyValue);
|
||
/// <summary>
|
||
/// 获取页面显示列表数据
|
||
/// </summary>
|
||
/// <param name="pagination">分页信息</param>
|
||
/// <param name="queryJson">查询参数</param>
|
||
/// <returns></returns>
|
||
List<AnnexesFileEntity> GetPageList(Pagination pagination, string queryJson);
|
||
#endregion
|
||
|
||
#region 提交数据
|
||
/// <summary>
|
||
/// 保存数据实体
|
||
/// </summary>
|
||
/// <param name="folderId">附件夹主键</param>
|
||
/// <param name="annexesFileEntity">附件实体数据</param>
|
||
void SaveEntity(string folderId, AnnexesFileEntity annexesFileEntity);
|
||
/// <summary>
|
||
/// 删除附件
|
||
/// </summary>
|
||
/// <param name="fileId">文件主键</param>
|
||
void DeleteEntity(string fileId);
|
||
#endregion
|
||
|
||
#region 扩展方法
|
||
/// <summary>
|
||
/// 保存附件(文件流)
|
||
/// </summary>
|
||
/// <param name="folderId">附件夹主键</param>
|
||
/// <param name="fileGuid">文件主键</param>
|
||
/// <param name="fileName">文件名称</param>
|
||
/// <param name="fileSize">文件大小</param>
|
||
/// <param name="inputStream">文件流</param>
|
||
/// <param name="userInfo">用户信息</param>
|
||
/// <param name="filePath">保存路径</param>
|
||
/// <returns></returns>
|
||
bool SaveAnnexes(string folderId, string fileGuid, string fileName, int fileSize, Stream inputStream, UserInfo userInfo, string filePath = "");
|
||
|
||
/// <summary>
|
||
/// 保存附件(支持大文件分片传输)
|
||
/// </summary>
|
||
/// <param name="folderId">附件夹主键</param>
|
||
/// <param name="fileGuid">文件主键</param>
|
||
/// <param name="fileName">文件名称</param>
|
||
/// <param name="chunks">文件总共分多少片</param>
|
||
/// <param name="fileStream">文件二进制流</param>
|
||
bool SaveAnnexes(string folderId, string fileGuid, string fileName, int chunks, UserInfo userInfo, string filePath = "");
|
||
/// <summary>
|
||
/// 保存附件
|
||
/// </summary>
|
||
/// <param name="folderid"></param>
|
||
/// <param name="fileAnnexesEntity"></param>
|
||
void SaveAnnexesFileEntity(string folderid, AnnexesFileEntity fileAnnexesEntity);
|
||
/// <summary>
|
||
/// 保存附件(支持大文件分片传输)
|
||
/// </summary>
|
||
/// <param name="fileGuid">文件主键</param>
|
||
/// <param name="fileName">文件名称</param>
|
||
/// <param name="chunks">文件总共分多少片</param>
|
||
/// <param name="fileStream">文件二进制流</param>
|
||
/// <returns></returns>
|
||
string SaveAnnexes(string fileGuid, string fileName, int chunks, UserInfo userInfo);
|
||
/// <summary>
|
||
/// 保存附件到文件中
|
||
/// </summary>
|
||
/// <param name="fileGuid">文件主键</param>
|
||
/// <param name="filePath">文件路径</param>
|
||
/// <param name="chunks">总共分片数</param>
|
||
/// <param name="buffer">文件二进制流</param>
|
||
/// <returns></returns>
|
||
long SaveAnnexesToFile(string fileGuid, string filePath, int chunks);
|
||
/// <summary>
|
||
/// 保存分片附件
|
||
/// </summary>
|
||
/// <param name="fileGuid">文件主键</param>
|
||
/// <param name="chunk">分片文件序号</param>
|
||
/// <param name="fileStream">文件流</param>
|
||
void SaveChunkAnnexes(string fileGuid, int chunk, Stream fileStream);
|
||
/// <summary>
|
||
/// 移除文件分片数据
|
||
/// </summary>
|
||
/// <param name="fileGuid">文件主键</param>
|
||
/// <param name="chunks">文件分片数</param>
|
||
void RemoveChunkAnnexes(string fileGuid, int chunks);
|
||
#endregion
|
||
/// <summary>
|
||
///
|
||
/// </summary>
|
||
/// <param name="path"></param>
|
||
/// <returns></returns>
|
||
bool Exists(string path);
|
||
/// <summary>
|
||
/// 图片压缩
|
||
/// </summary>
|
||
/// <param name="srcPath">需要压缩的文件路径</param>
|
||
/// <param name="outPath">压缩后输出到哪个路径</param>
|
||
/// <param name="flag">压缩比例</param>
|
||
/// <returns></returns>
|
||
bool YaSuo(string srcPath, string outPath, int flag);
|
||
}
|
||
}
|