修改批量移动文件,批量关联及全局和文件夹搜索

master
孙亮 5 months ago
parent 30a9b2f5d8
commit ad8a13b05e

@ -346,27 +346,29 @@ namespace IBKLinker_Minio.Controller.MinioController
/// </summary> /// </summary>
/// <param name="minioFileassociation">文件关联表</param> /// <param name="minioFileassociation">文件关联表</param>
[HttpPost, Route("AddFileassociation")] [HttpPost, Route("AddFileassociation")]
public RequestEntity AddFileassociation(MinioFileassociation minioFileassociation) public RequestEntity AddFileassociation(IList<MinioFileassociation> minioFileassociation)
{ {
RequestEntity request = new RequestEntity(); RequestEntity request = new RequestEntity();
///创建数据库连接上下文对象 ///创建数据库连接上下文对象
using (IDbContext db = ObjectContainer.GetObject<IDbContext>("db")) using (IDbContext db = ObjectContainer.GetObject<IDbContext>("db"))
{ {
try try
{
foreach (var data in minioFileassociation)
{ {
bool Asstion = true;//定义是否执行关联 bool Asstion = true;//定义是否执行关联
IList<MinioFileassociation> SelMFdata = new List<MinioFileassociation>(); IList<MinioFileassociation> SelMFdata = new List<MinioFileassociation>();
SelMFdata = db.Query<MinioFileassociation>("select * from MINIO_FILEASSOCIATION where 1=1 and (FILE_PK='" + minioFileassociation.FilePk + "' or ASSOCIATION_FILE_PK='" + minioFileassociation.FilePk + "')"); SelMFdata = db.Query<MinioFileassociation>("select * from MINIO_FILEASSOCIATION where 1=1 and (FILE_PK='" + data.FilePk + "' or ASSOCIATION_FILE_PK='" + data.FilePk + "')");
//查询当前被关联文件是否已经被关联过 //查询当前被关联文件是否已经被关联过
if (SelMFdata.Count > 0) if (SelMFdata.Count > 0)
{ {
foreach (var item in SelMFdata) foreach (var item in SelMFdata)
{ {
if (item.FilePk == minioFileassociation.FilePk && item.AssociationFilePk == minioFileassociation.AssociationFilePk) //如果当前要关联的pk 等于已有的关联pk 被关联pk 等于已有的被关联pk if (item.FilePk == data.FilePk && item.AssociationFilePk == data.AssociationFilePk) //如果当前要关联的pk 等于已有的关联pk 被关联pk 等于已有的被关联pk
{ {
Asstion = false; Asstion = false;
} }
if (item.FilePk == minioFileassociation.AssociationFilePk && item.AssociationFilePk == minioFileassociation.FilePk) //如果当前要关联的pk 等于已有的被关联pk 被关联pk 等于已有的关联pk if (item.FilePk == data.AssociationFilePk && item.AssociationFilePk == data.FilePk) //如果当前要关联的pk 等于已有的被关联pk 被关联pk 等于已有的关联pk
{ {
Asstion = false; Asstion = false;
} }
@ -376,11 +378,11 @@ namespace IBKLinker_Minio.Controller.MinioController
{ {
db.BeginTransaction();//启动事务 db.BeginTransaction();//启动事务
///拿到表自增长的值赋值给自增长主键pk ///拿到表自增长的值赋值给自增长主键pk
minioFileassociation.Pk = Convert.ToInt32(db.QueryScalar("select S_MINIO_FILEASSOCIATION.nextval from dual")); data.Pk = Convert.ToInt32(db.QueryScalar("select S_MINIO_FILEASSOCIATION.nextval from dual"));
minioFileassociation.CreatorTime = DateTime.Now; data.CreatorTime = DateTime.Now;
///把需要添加的数据同步到数据库 ///把需要添加的数据同步到数据库
db.Insert<MinioFileassociation>(minioFileassociation); db.Insert<MinioFileassociation>(data);
db.Commit();//提交事务 db.Commit();//提交事务
request.code = "0"; request.code = "0";
request.msg = "关联成功!"; request.msg = "关联成功!";
@ -391,6 +393,7 @@ namespace IBKLinker_Minio.Controller.MinioController
request.msg = "当前文件已经被关联过,请勿重复关联!"; request.msg = "当前文件已经被关联过,请勿重复关联!";
} }
} }
}
catch (Exception ex) catch (Exception ex)
{ {
db.Rollback();//回滚 db.Rollback();//回滚
@ -972,6 +975,7 @@ namespace IBKLinker_Minio.Controller.MinioController
{ {
foreach (var item in data) foreach (var item in data)
{ {
date = new MinioStoragePath();
date.Pk = item.Pk;//主键ID date.Pk = item.Pk;//主键ID
date.Upk = item.Upk;//子文件夹的父ID date.Upk = item.Upk;//子文件夹的父ID
date.FileName = item.FileName;//文件名称 date.FileName = item.FileName;//文件名称
@ -1028,6 +1032,7 @@ namespace IBKLinker_Minio.Controller.MinioController
datelist.Add(date); datelist.Add(date);
} }
} }
}
if (datelist != null) if (datelist != null)
{ {
if (UdpMFdata.Count > 0) if (UdpMFdata.Count > 0)
@ -1045,7 +1050,6 @@ namespace IBKLinker_Minio.Controller.MinioController
request.msg = "请检查是否符合修改规范!"; request.msg = "请检查是否符合修改规范!";
} }
} }
}
catch (Exception ex) catch (Exception ex)
{ {
request.code = "1"; request.code = "1";
@ -1149,10 +1153,10 @@ namespace IBKLinker_Minio.Controller.MinioController
{ {
sql += " and FILE_NAME like'%" + PathData.FileName + "%'"; sql += " and FILE_NAME like'%" + PathData.FileName + "%'";
} }
//if (PathData.Upk > 0) //如果在子文件夹内 if (PathData.Pk > 0) //如果在子文件夹内
//{ {
// sql += " and UPK = '" + PathData.Upk + "'"; sql += " and UPK = '" + PathData.Pk + "'";
//} }
if (!string.IsNullOrEmpty(PathData.BeginTime))//如果有开始时间 if (!string.IsNullOrEmpty(PathData.BeginTime))//如果有开始时间
{ {
sql += string.Format(" and CREATE_TIME >= to_date('{0}', 'yyyy/mm/dd hh24:mi:ss')", PathData.BeginTime);//开始时间 sql += string.Format(" and CREATE_TIME >= to_date('{0}', 'yyyy/mm/dd hh24:mi:ss')", PathData.BeginTime);//开始时间

@ -20,7 +20,7 @@ namespace IBKLinker_Minio.Entity.MinioController
/// <summary> /// <summary>
///子文件夹的父ID ///子文件夹的父ID
/// </summary> /// </summary>
public int Upk { get; set; } public int Pk { get; set; }
/// <summary> /// <summary>
/// 开始时间 /// 开始时间

Loading…
Cancel
Save