Exemplo n.º 1
0
        /// <summary>
        /// 批量保存
        /// </summary>
        /// <param name="userInfo">用户</param>
        /// <param name="dataTable">数据表</param>
        /// <returns>受影响的行数</returns>
        public int BatchSave(UserInfo userInfo, DataTable dataTable)
        {
            int returnValue = 0;
            var parameter   = ParameterUtil.CreateWithLog(userInfo, MethodBase.GetCurrentMethod());

            ServiceUtil.ProcessRDIReadDb(userInfo, parameter, dbProvider =>
            {
                var fileManager = new CiFileManager(dbProvider, userInfo);
                returnValue     = fileManager.BatchSave(dataTable);
            });
            return(returnValue);
        }
Exemplo n.º 2
0
        /// <summary>
        /// 上传文件
        /// </summary>
        /// <param name="userInfo">用户</param>
        /// <param name="folderId">文件夹主键</param>
        /// <param name="fileName">文件名</param>
        /// <param name="file">文件</param>
        /// <param name="enabled">有效</param>
        /// <returns>主键</returns>
        public string Upload(UserInfo userInfo, string folderId, string fileName, byte[] file, bool enabled)
        {
            string returnValue = string.Empty;
            var    parameter   = ParameterUtil.CreateWithMessage(userInfo, MethodBase.GetCurrentMethod(), this.serviceName, RDIFrameworkMessage.FileService_Upload);

            ServiceUtil.ProcessRDIReadDb(userInfo, parameter, dbProvider =>
            {
                var fileManager = new CiFileManager(dbProvider, userInfo);
                returnValue     = fileManager.Upload(folderId, fileName, file, enabled);
            });
            return(returnValue);
        }
Exemplo n.º 3
0
        /// <summary>
        /// 批量删除文件列表
        /// </summary>
        /// <param name="userInfo">用户</param>
        /// <param name="ids">主键数组</param>
        /// <returns>受影响的行数</returns>
        public int BatchDelete(UserInfo userInfo, string[] ids)
        {
            int returnValue = 0;
            var parameter   = ParameterUtil.CreateWithLog(userInfo, MethodBase.GetCurrentMethod());

            ServiceUtil.ProcessRDIWriteDbWithTran(userInfo, parameter, dbProvider =>
            {
                var fileManager = new CiFileManager(dbProvider, userInfo);
                returnValue     = fileManager.Delete(ids);
            });
            return(returnValue);
        }
Exemplo n.º 4
0
        /// <summary>
        /// 批量移动文件到指定文件夹
        /// </summary>
        /// <param name="userInfo">用户</param>
        /// <param name="ids"></param>
        /// <param name="folderId">文件夹主键</param>
        /// <returns>受影响的行数</returns>
        public int BatchMoveTo(UserInfo userInfo, string[] ids, string folderId)
        {
            int returnValue = 0;
            var parameter   = ParameterUtil.CreateWithLog(userInfo, MethodBase.GetCurrentMethod());

            ServiceUtil.ProcessRDIWriteDbWithTran(userInfo, parameter, dbProvider =>
            {
                var fileManager = new CiFileManager(dbProvider, userInfo);
                returnValue    += ids.Sum(t => fileManager.MoveTo(t, folderId));
            });
            return(returnValue);
        }
Exemplo n.º 5
0
        /// <summary>
        /// 获取实体
        /// </summary>
        /// <param name="userInfo">用户</param>
        /// <param name="id">主键</param>
        /// <returns>实体</returns>
        public CiFileEntity GetEntity(UserInfo userInfo, string id)
        {
            CiFileEntity fileEntity = null;
            var          parameter  = ParameterUtil.CreateWithMessage(userInfo, MethodBase.GetCurrentMethod(), this.serviceName, RDIFrameworkMessage.FileService_GetEntity);

            parameter.IsAddLog = false;
            ServiceUtil.ProcessRDIReadDb(userInfo, parameter, dbProvider =>
            {
                var fileManager = new CiFileManager(dbProvider, userInfo);
                fileEntity      = fileManager.GetEntity(id);
            });
            return(fileEntity);
        }
Exemplo n.º 6
0
        /// <summary>
        /// 移动文件到指定文件夹
        /// </summary>
        /// <param name="userInfo">用户</param>
        /// <param name="id">文件主键</param>
        /// <param name="folderId">文件夹主键</param>
        /// <returns>受影响的行数</returns>
        public int MoveTo(UserInfo userInfo, string id, string folderId)
        {
            int returnValue = 0;
            var parameter   = ParameterUtil.CreateWithMessage(userInfo, MethodBase.GetCurrentMethod(), this.serviceName, string.Empty);

            parameter.IsAddLog = false;
            ServiceUtil.ProcessRDIReadDb(userInfo, parameter, dbProvider =>
            {
                var fileManager = new CiFileManager(dbProvider, userInfo);
                returnValue     = fileManager.MoveTo(id, folderId);
            });
            return(returnValue);
        }
Exemplo n.º 7
0
        /// <summary>
        /// 按文件夹删除文件
        /// </summary>
        /// <param name="userInfo">用户</param>
        /// <param name="folderId">文件夹主键</param>
        /// <returns>影响行数</returns>
        public int DeleteByFolder(UserInfo userInfo, string folderId)
        {
            int returnValue = 0;
            var parameter   = ParameterUtil.CreateWithMessage(userInfo, MethodBase.GetCurrentMethod(), this.serviceName, RDIFrameworkMessage.FileService_DeleteByFolder);

            ServiceUtil.ProcessRDIReadDb(userInfo, parameter, dbProvider =>
            {
                var fileManager = new CiFileManager(dbProvider, userInfo);
                returnValue     = fileManager.DeleteByFolder(folderId);
            });

            return(returnValue);
        }
Exemplo n.º 8
0
        /// <summary>
        /// 判断是否存在
        /// </summary>
        /// <param name="userInfo">用户</param>
        /// <param name="folderId">文件夹主键</param>
        /// <param name="fileName">文件名</param>
        /// <returns>存在</returns>
        public bool Exists(UserInfo userInfo, string folderId, string fileName)
        {
            bool returnValue = false;
            var  parameter   = ParameterUtil.CreateWithMessage(userInfo, MethodBase.GetCurrentMethod(), this.serviceName, RDIFrameworkMessage.FileService_Exists);

            parameter.IsAddLog = false;
            ServiceUtil.ProcessRDIReadDb(userInfo, parameter, dbProvider =>
            {
                var fileManager = new CiFileManager(dbProvider, userInfo);
                returnValue     = fileManager.Exists(CiFileTable.FieldFolderId, folderId, CiFileTable.FieldFileName, fileName);
            });

            return(returnValue);
        }
Exemplo n.º 9
0
        /// <summary>
        /// 查询
        /// </summary>
        /// <param name="userInfo">用户</param>
        /// <param name="searchValue">查询</param>
        /// <returns>数据表</returns>
        public DataTable Search(UserInfo userInfo, string searchValue)
        {
            var dataTable = new DataTable(CiFileTable.TableName);
            var parameter = ParameterUtil.CreateWithMessage(userInfo, MethodBase.GetCurrentMethod(), this.serviceName, string.Empty);

            parameter.IsAddLog = false;
            ServiceUtil.ProcessRDIReadDb(userInfo, parameter, dbProvider =>
            {
                var fileManager     = new CiFileManager(dbProvider, userInfo);
                dataTable           = fileManager.Search(searchValue);
                dataTable.TableName = CiFileTable.TableName;
            });
            return(dataTable);
        }
Exemplo n.º 10
0
        /// <summary>
        /// 下载文件
        /// </summary>
        /// <param name="userInfo">用户</param>
        /// <param name="id">主键</param>
        /// <returns>文件</returns>
        public byte[] Download(UserInfo userInfo, string id)
        {
            byte[] returnValue = null;
            var    parameter   = ParameterUtil.CreateWithMessage(userInfo, MethodBase.GetCurrentMethod(), this.serviceName, string.Empty);

            parameter.IsAddLog = false;

            ServiceUtil.ProcessRDIReadDb(userInfo, parameter, dbProvider =>
            {
                var fileManager = new CiFileManager(dbProvider, userInfo);
                returnValue     = fileManager.Download(id);
            });

            return(returnValue);
        }
Exemplo n.º 11
0
        /// <summary>
        /// 按文件夹获取文件列表
        /// </summary>
        /// <param name="userInfo">用户</param>
        /// <param name="folderId">文件夹主键</param>
        /// <returns>列表</returns>
        public DataTable GetDTByFolder(UserInfo userInfo, string folderId)
        {
            var dataTable = new DataTable(CiFileTable.TableName);
            var parameter = ParameterUtil.CreateWithMessage(userInfo, MethodBase.GetCurrentMethod(), this.serviceName, RDIFrameworkMessage.FileService_GetDTByFolder);

            parameter.IsAddLog = false;
            ServiceUtil.ProcessRDIReadDb(userInfo, parameter, dbProvider =>
            {
                var fileManager     = new CiFileManager(dbProvider, userInfo);
                dataTable           = fileManager.GetDTByFolder(folderId);
                dataTable.TableName = CiFolderTable.TableName;
            });

            return(dataTable);
        }
Exemplo n.º 12
0
        public int Update(UserInfo userInfo, string id, string folderId, string fileName, string description, bool enabled, out string statusCode, out string statusMessage)
        {
            string returnCode    = string.Empty;
            string returnMessage = string.Empty;
            int    returnValue   = 0;
            var    parameter     = ParameterUtil.CreateWithLog(userInfo, MethodBase.GetCurrentMethod());

            ServiceUtil.ProcessRDIReadDb(userInfo, parameter, dbProvider =>
            {
                var fileManager = new CiFileManager(dbProvider, userInfo);
                returnValue     = fileManager.Update(id, folderId, fileName, description, enabled, out returnCode);
                returnMessage   = fileManager.GetStateMessage(returnCode);
            });
            statusCode    = returnCode;
            statusMessage = returnMessage;
            return(returnValue);
        }
Exemplo n.º 13
0
        /// <summary>
        /// 重命名
        /// </summary>
        /// <param name="userInfo">用户</param>
        /// <param name="id">主键</param>
        /// <param name="newName">新名称</param>
        /// <param name="enabled">有效</param>
        /// <param name="statusCode">状态码</param>
        /// <param name="statusMessage">状态信息</param>
        /// <returns>影响行数</returns>
        public int Rename(UserInfo userInfo, string id, string newName, bool enabled, out string statusCode, out string statusMessage)
        {
            string returnCode    = string.Empty;
            string returnMessage = string.Empty;
            int    returnValue   = 0;
            var    parameter     = ParameterUtil.CreateWithLog(userInfo, MethodBase.GetCurrentMethod());

            ServiceUtil.ProcessRDIReadDb(userInfo, parameter, dbProvider =>
            {
                var fileEntity  = new CiFileEntity();
                var fileManager = new CiFileManager(dbProvider, userInfo);
                var dataTable   = fileManager.GetDTById(id);
                fileEntity.GetFrom(dataTable);
                fileEntity.FileName = newName;
                fileEntity.Enabled  = enabled ? 1 : 0;
                returnValue         = fileManager.Update(fileEntity, out returnCode);
                returnMessage       = fileManager.GetStateMessage(returnCode);
            });

            statusCode    = returnCode;
            statusMessage = returnMessage;
            return(returnValue);
        }
Exemplo n.º 14
0
        /// <summary>
        /// 获取分页文件列表
        /// </summary>
        /// <param name="userInfo">用户</param>
        /// <param name="recordCount">记录数</param>
        /// <param name="pageIndex">当前页</param>
        /// <param name="pageSize">每页显示</param>
        /// <param name="whereConditional">条件表达式</param>
        /// <param name="order">排序</param>
        /// <returns>数据表</returns>
        /// <returns>列表</returns>
        public DataTable GetFileDTByPage(UserInfo userInfo, out int recordCount, int pageIndex = 1, int pageSize = 20, string whereConditional = "", string order = "")
        {
            var dataTable     = new DataTable(CiFileTable.TableName);
            int myrecordCount = 0;
            var parameter     = ParameterUtil.CreateWithOutMessage(userInfo, MethodBase.GetCurrentMethod(), this.serviceName);

            ServiceUtil.ProcessRDIReadDb(userInfo, parameter, dbProvider =>
            {
                var fileManager = new CiFileManager(dbProvider, userInfo);
                if (string.IsNullOrEmpty(whereConditional))
                {
                    whereConditional = CiFileTable.FieldDeleteMark + " = 0 ";
                }
                else
                {
                    whereConditional += " AND " + CiFileTable.FieldDeleteMark + " = 0 ";
                }
                order               = string.IsNullOrEmpty(order) ? CiFileTable.FieldSortCode : order;
                dataTable           = fileManager.GetFileDTByPage(out myrecordCount, pageIndex, pageSize, whereConditional, order);
                dataTable.TableName = CiFileTable.TableName;
            });
            recordCount = myrecordCount;
            return(dataTable);
        }