@ -423,13 +423,21 @@ namespace IBKLinker_Minio.Controller.MinioController
using ( IDbContext db = ObjectContainer . GetObject < IDbContext > ( "db" ) )
using ( IDbContext db = ObjectContainer . GetObject < IDbContext > ( "db" ) )
{
{
try
try
{
if ( master ! = null )
{
{
db . BeginTransaction ( ) ; //启动事务
db . BeginTransaction ( ) ; //启动事务
db . Delete < MinioFileassociation > ( master ) ;
string sql = string . Format ( "delete from MINIO_FILEASSOCIATION where 1=1 and PK={0}" , master . Pk ) ;
db . Execute ( sql ) ;
db . Commit ( ) ; //提交事务
db . Commit ( ) ; //提交事务
request . code = "0" ;
request . code = "0" ;
request . msg = "删除成功!" ;
request . msg = "删除成功!" ;
}
else
{
request . code = "1" ;
request . msg = "删除失败!" ;
}
}
}
catch ( Exception ex )
catch ( Exception ex )
{
{
@ -608,7 +616,7 @@ namespace IBKLinker_Minio.Controller.MinioController
RequestEntity request = new RequestEntity ( ) ;
RequestEntity request = new RequestEntity ( ) ;
IList < MinioUser > MUData = new List < MinioUser > ( ) ;
IList < MinioUser > MUData = new List < MinioUser > ( ) ;
IList < MinioUser > UdpData = new List < MinioUser > ( ) ;
IList < MinioUser > UdpData = new List < MinioUser > ( ) ;
string sql = " ";
string sql = " begin ";
using ( IDbContext db = ObjectContainer . GetObject < IDbContext > ( "db" ) )
using ( IDbContext db = ObjectContainer . GetObject < IDbContext > ( "db" ) )
{
{
try
try
@ -617,7 +625,7 @@ namespace IBKLinker_Minio.Controller.MinioController
{
{
MUData = db . Query < MinioUser > ( "select * from MINIO_USER where 1=1 and ROLE_ID='" + data . Id + "'" ) ; //查询用户表中使用要被删除的角色
MUData = db . Query < MinioUser > ( "select * from MINIO_USER where 1=1 and ROLE_ID='" + data . Id + "'" ) ; //查询用户表中使用要被删除的角色
db . BeginTransaction ( ) ; //启动事务
db . BeginTransaction ( ) ; //启动事务
if ( MUData . Count > 0 )
if ( MUData . Count > 0 ) //如果有数据需要同步修改用户表中的角色
{
{
foreach ( var item in MUData )
foreach ( var item in MUData )
{
{
@ -632,8 +640,9 @@ namespace IBKLinker_Minio.Controller.MinioController
}
}
db . Update < MinioUser > ( UdpData ) ;
db . Update < MinioUser > ( UdpData ) ;
}
}
db . Query ( "delete from MINIO_AUTHORITY where LIMITS_AUTHORITY_ID='" + data . LimitsAuthorityId + "' " ) ;
sql + = string . Format ( "delete from MINIO_AUTHORITY where 1=1 and LIMITS_AUTHORITY_ID={0};" , data . LimitsAuthorityId ) ;
sql = string . Format ( "delete from MINIO_ROLE_PERMISSION where 1=1 and PK={0}" , data . Pk ) ;
sql = string . Format ( "delete from MINIO_ROLE_PERMISSION where 1=1 and PK={0};" , data . Pk ) ;
sql + = "end;" ;
db . Execute ( sql ) ;
db . Execute ( sql ) ;
db . Commit ( ) ; //提交事务
db . Commit ( ) ; //提交事务
request . code = "0" ;
request . code = "0" ;
@ -698,6 +707,8 @@ namespace IBKLinker_Minio.Controller.MinioController
{
{
MinioClient minio = new MinioClient ( "172.15.88.212:9000" , "minioadmin" , "minioadmin" ) ; //连接所需minio所在地址、登录名、密码
MinioClient minio = new MinioClient ( "172.15.88.212:9000" , "minioadmin" , "minioadmin" ) ; //连接所需minio所在地址、登录名、密码
string buckname = "dayetegang" ; //桶名称
string buckname = "dayetegang" ; //桶名称
MinioBusinessLogic bb = new MinioBusinessLogic ( ) ; //定义业务逻辑方法
string Operate = "" ; //操作
List < MinioStoragePath > date = new List < MinioStoragePath > ( ) ;
List < MinioStoragePath > date = new List < MinioStoragePath > ( ) ;
List < MinioStoragePath > checkdatelist = new List < MinioStoragePath > ( ) ;
List < MinioStoragePath > checkdatelist = new List < MinioStoragePath > ( ) ;
string RecordFileName = "" ; //重复文件名称记录
string RecordFileName = "" ; //重复文件名称记录
@ -707,7 +718,7 @@ namespace IBKLinker_Minio.Controller.MinioController
{
{
foreach ( var items in minioStoragePath ) //先循环接收数据
foreach ( var items in minioStoragePath ) //先循环接收数据
{
{
checkdatelist = db . Query < MinioStoragePath > ( "select t. FILE_NAME from MINIO_STORAGE_PATH t where 1=1 and t.FILE_NAME='"+ items . FileName + "' and t.UPK='" + items . Upk + "'" ) . ToList ( ) ; //查询上传的文件或新建的文件夹在当前文件夹下是否有重复存在
checkdatelist = db . Query < MinioStoragePath > ( "select t. * from MINIO_STORAGE_PATH t where 1=1 and t.FILE_NAME='" + items . FileName + "' and t.UPK='" + items . Upk + "'" ) . ToList ( ) ; //查询上传的文件或新建的文件夹在当前文件夹下是否有重复存在
if ( checkdatelist . Count > 0 ) //如果有
if ( checkdatelist . Count > 0 ) //如果有
{
{
RecordFileName + = items . FileName + "," ; //记录名称
RecordFileName + = items . FileName + "," ; //记录名称
@ -718,7 +729,7 @@ namespace IBKLinker_Minio.Controller.MinioController
foreach ( var item in minioStoragePath )
foreach ( var item in minioStoragePath )
{
{
MinioStoragePath data = new MinioStoragePath ( ) ;
MinioStoragePath data = new MinioStoragePath ( ) ;
MinioOperationlog MOdata = new MinioOperationlog ( ) ;
date = db . Query < MinioStoragePath > ( "select * from MINIO_STORAGE_PATH where pk='" + minioStoragePath [ 0 ] . Upk + "' ORDER BY PK" ) . ToList ( ) ;
date = db . Query < MinioStoragePath > ( "select * from MINIO_STORAGE_PATH where pk='" + minioStoragePath [ 0 ] . Upk + "' ORDER BY PK" ) . ToList ( ) ;
if ( item . FileType = = 0 ) //如果是文件夹
if ( item . FileType = = 0 ) //如果是文件夹
{
{
@ -736,6 +747,10 @@ namespace IBKLinker_Minio.Controller.MinioController
data . FileLevel = date [ 0 ] . FileLevel + 1 ; //层级
data . FileLevel = date [ 0 ] . FileLevel + 1 ; //层级
data . Pk = Convert . ToInt32 ( db . QueryScalar ( "select S_MINIO_STORAGE_PATH.nextval from dual" ) ) ; ///拿到表自增长的值赋值给自增长主键pk
data . Pk = Convert . ToInt32 ( db . QueryScalar ( "select S_MINIO_STORAGE_PATH.nextval from dual" ) ) ; ///拿到表自增长的值赋值给自增长主键pk
db . Insert < MinioStoragePath > ( data ) ;
db . Insert < MinioStoragePath > ( data ) ;
#region 记录日志
Operate = " 创建了一个新的文件夹," ;
bb . MinioOperationLog ( data . CreatorUser , data . FileName , Operate , data . Pk . ToString ( ) , data . Upk . ToString ( ) , db ) ;
# endregion
}
}
}
}
else
else
@ -750,6 +765,10 @@ namespace IBKLinker_Minio.Controller.MinioController
data . ClearFlag = "0" ; //删除状态为未删除
data . ClearFlag = "0" ; //删除状态为未删除
data . FileLevel = 1 ; //层级
data . FileLevel = 1 ; //层级
db . Insert < MinioStoragePath > ( data ) ;
db . Insert < MinioStoragePath > ( data ) ;
#region 记录日志
Operate = " 创建了一个新的文件夹," ;
bb . MinioOperationLog ( data . CreatorUser , data . FileName , Operate , data . Pk . ToString ( ) , data . Upk . ToString ( ) , db ) ;
# endregion
}
}
#region minio创建文件夹
#region minio创建文件夹
//var folderName = minioStoragePath[0].FilePath + "/";//取前端发送路径(或单一文件夹名称)
//var folderName = minioStoragePath[0].FilePath + "/";//取前端发送路径(或单一文件夹名称)
@ -781,12 +800,8 @@ namespace IBKLinker_Minio.Controller.MinioController
request . msg = "文件上传成功!" ;
request . msg = "文件上传成功!" ;
request . code = "0" ;
request . code = "0" ;
#region 记录日志
#region 记录日志
MOdata . Pk = Convert . ToInt32 ( db . QueryScalar ( "select S_MINIO_OPERATIONLOG.nextval from dual" ) ) ; ///拿到表自增长的值赋值给自增长主键pk;
Operate = " 上传了一个新的文档," ;
MOdata . OperateUser = item . CreatorUser ; //操作者
bb . MinioOperationLog ( item . CreatorUser , item . FileName , Operate , data . Pk . ToString ( ) , data . Upk . ToString ( ) , db ) ;
MOdata . OperateTime = DateTime . Now ; //操作时间
MOdata . Operater = item . CreatorUser + " 上传了一个新的文档," + item . FileName + " " + DateTime . Now . ToString ( ) ; //操作
MOdata . CreationTime = DateTime . Now ; //创建时间
db . Insert < MinioOperationlog > ( MOdata ) ; //写入数据库
# endregion
# endregion
}
}
else
else
@ -799,7 +814,7 @@ namespace IBKLinker_Minio.Controller.MinioController
}
}
else
else
{
{
request . msg = "文件上传失败,其中" + RecordFileName + "在此文件 夹 已经存在!";
request . msg = "文件上传失败,其中" + RecordFileName + "在此文件 已经存在!";
request . code = "1" ;
request . code = "1" ;
}
}
db . Commit ( ) ;
db . Commit ( ) ;
@ -837,7 +852,8 @@ namespace IBKLinker_Minio.Controller.MinioController
DateTime time = DateTime . Now ; //取当前时间
DateTime time = DateTime . Now ; //取当前时间
MinioStoragePath date = new MinioStoragePath ( ) ;
MinioStoragePath date = new MinioStoragePath ( ) ;
List < MinioStoragePath > datelist = new List < MinioStoragePath > ( ) ;
List < MinioStoragePath > datelist = new List < MinioStoragePath > ( ) ;
MinioOperationlog MOdata = new MinioOperationlog ( ) ;
MinioBusinessLogic bb = new MinioBusinessLogic ( ) ; //定义业务逻辑方法
string Operate = "" ; //操作
if ( data . Count > 0 )
if ( data . Count > 0 )
{
{
foreach ( var item in data )
foreach ( var item in data )
@ -866,12 +882,8 @@ namespace IBKLinker_Minio.Controller.MinioController
{
{
datelist . Add ( date ) ;
datelist . Add ( date ) ;
#region 记录日志
#region 记录日志
MOdata . Pk = Convert . ToInt32 ( db . QueryScalar ( "select S_MINIO_OPERATIONLOG.nextval from dual" ) ) ; ///拿到表自增长的值赋值给自增长主键pk;
Operate = " 更新了这个文档, " ;
MOdata . OperateUser = item . CreatorUser ; //操作者
bb . MinioOperationLog ( item . CreatorUser , item . FileName , Operate , item . Pk . ToString ( ) , item . Upk . ToString ( ) , db ) ;
MOdata . OperateTime = DateTime . Now ; //操作时间
MOdata . Operater = item . CreatorUser + " 更新了 " + item . FileName + " 这个文档。 " + DateTime . Now . ToString ( ) ; //操作
MOdata . CreationTime = DateTime . Now ; //创建时间
db . Insert < MinioOperationlog > ( MOdata ) ; //写入数据库
# endregion
# endregion
}
}
}
}
@ -926,7 +938,10 @@ namespace IBKLinker_Minio.Controller.MinioController
DateTime time = DateTime . Now ; //取当前时间
DateTime time = DateTime . Now ; //取当前时间
MinioClient minio = new MinioClient ( "172.15.88.212:9000" , "minioadmin" , "minioadmin" ) ;
MinioClient minio = new MinioClient ( "172.15.88.212:9000" , "minioadmin" , "minioadmin" ) ;
string buckname = "dayetegang" ; //桶名称
string buckname = "dayetegang" ; //桶名称
MinioOperationlog MOdata = new MinioOperationlog ( ) ;
MinioBusinessLogic bb = new MinioBusinessLogic ( ) ; //定义业务逻辑方法
string Operate = "" ; //操作
string FilePk = "" ; //文件pk
string fileUPk = "" ; //文件父级pk
db . BeginTransaction ( ) ;
db . BeginTransaction ( ) ;
string sql = "" ;
string sql = "" ;
//db.Delete<MinioStoragePath>(master);
//db.Delete<MinioStoragePath>(master);
@ -944,12 +959,8 @@ namespace IBKLinker_Minio.Controller.MinioController
sql + = "end;" ;
sql + = "end;" ;
db . Execute ( sql ) ;
db . Execute ( sql ) ;
#region 记录日志
#region 记录日志
MOdata . Pk = Convert . ToInt32 ( db . QueryScalar ( "select S_MINIO_OPERATIONLOG.nextval from dual" ) ) ; ///拿到表自增长的值赋值给自增长主键pk;
Operate = " 删除了这个文档, " ;
MOdata . OperateUser = item . ClearUsers ; //操作者
bb . MinioOperationLog ( item . ClearUsers , item . FileName , Operate , FilePk , fileUPk , db ) ;
MOdata . OperateTime = DateTime . Now ; //操作时间
MOdata . Operater = item . ClearUsers + " 删除了 " + item . FileName + " 这个文档。 " + DateTime . Now . ToString ( ) ; //操作
MOdata . CreationTime = DateTime . Now ; //创建时间
db . Insert < MinioOperationlog > ( MOdata ) ; //写入数据库
# endregion
# endregion
}
}
}
}
@ -957,12 +968,15 @@ namespace IBKLinker_Minio.Controller.MinioController
{
{
sql = string . Format ( "delete from MINIO_STORAGE_PATH where 1=1 and PK='{2}' " , item . ClearUsers , time , item . Pk ) ; //更新文件路径表中的删除状态
sql = string . Format ( "delete from MINIO_STORAGE_PATH where 1=1 and PK='{2}' " , item . ClearUsers , time , item . Pk ) ; //更新文件路径表中的删除状态
db . Execute ( sql ) ;
db . Execute ( sql ) ;
#region 记录日志
Operate = " 删除了这个文件夹, " ;
bb . MinioOperationLog ( item . ClearUsers , item . FileName , Operate , FilePk , fileUPk , db ) ;
# endregion
}
}
}
}
request . code = "0" ;
request . code = "0" ;
request . msg = "删除成功" ;
request . msg = "删除成功" ;
db . Commit ( ) ;
db . Commit ( ) ;
}
}
catch ( Exception ex )
catch ( Exception ex )
{
{
@ -1007,7 +1021,6 @@ namespace IBKLinker_Minio.Controller.MinioController
{
{
sql + = string . Format ( " and CREATE_TIME <= to_date('{0}', 'yyyy/mm/dd hh24:mi:ss')" , PathData . EndTime ) ; //结束时间
sql + = string . Format ( " and CREATE_TIME <= to_date('{0}', 'yyyy/mm/dd hh24:mi:ss')" , PathData . EndTime ) ; //结束时间
}
}
request . data = db . Query < MinioStoragePath > ( "select * from MINIO_STORAGE_PATH where 1=1 " + sql + " and CLEAR_FLAG='0' ORDER BY PK" ) ;
request . data = db . Query < MinioStoragePath > ( "select * from MINIO_STORAGE_PATH where 1=1 " + sql + " and CLEAR_FLAG='0' ORDER BY PK" ) ;
request . code = "0" ;
request . code = "0" ;
}
}
@ -1015,7 +1028,6 @@ namespace IBKLinker_Minio.Controller.MinioController
{
{
request . code = "1" ;
request . code = "1" ;
request . msg = "查询失败,请检查查询条件!" ;
request . msg = "查询失败,请检查查询条件!" ;
}
}
}
}
}
}
@ -1253,6 +1265,32 @@ namespace IBKLinker_Minio.Controller.MinioController
}
}
# endregion
# endregion
#region 操作日志接口
/// <summary>
/// 查询minio文件操作日志
/// </summary>
/// <returns></returns>
[HttpPost, Route("GetMinioBusinessLogic")]
public RequestEntity GetMinioBusinessLogic ( )
{
RequestEntity request = new RequestEntity ( ) ;
try
{
using ( IDbContext db = ObjectContainer . GetObject < IDbContext > ( "db" ) )
{
request . data = db . Query < MinioOperationlog > ( "select * from MINIO_OPERATIONLOG where 1=1" ) ;
request . code = "0" ;
}
}
catch ( Exception ex )
{
request . code = "1" ;
logger . ErrorFormat ( "主表:MINIO_OPERATIONLOG, 查询minio文件操作日志表失败, 错误原因:{0}" , ex ) ;
}
return request ;
}
# endregion
#region 标准清单
#region 标准清单
/// <summary>
/// <summary>
/// 标准清单导出接口
/// 标准清单导出接口