/// <summary> /// 批量进行保存 /// </summary> /// <param name="dataTable">数据表</param> /// <returns>影响行数</returns> public override int BatchSave(DataTable dataTable) { var returnValue = 0; var fileEntity = new CiFileEntity(); foreach (DataRow dataRow in dataTable.Rows) { // 删除状态 if (dataRow.RowState == DataRowState.Deleted) { var id = dataRow[CiFileTable.FieldId, DataRowVersion.Original].ToString(); if (id.Length > 0) { returnValue += this.Delete(id); } } // 被修改过 if (dataRow.RowState == DataRowState.Modified) { var id = dataRow[CiFileTable.FieldId, DataRowVersion.Original].ToString(); if (id.Length > 0) { fileEntity.GetFrom(dataRow); // 判断是否允许编辑 returnValue += this.UpdateEntity(fileEntity); } } // 添加状态 if (dataRow.RowState == DataRowState.Added) { fileEntity.GetFrom(dataRow); returnValue += this.AddEntity(fileEntity).Length > 0 ? 1 : 0; } if (dataRow.RowState == DataRowState.Unchanged) { continue; } if (dataRow.RowState == DataRowState.Detached) { continue; } } return(returnValue); }
/// <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); }