😎增加根据业务数据Id获取文件列表方法
This commit is contained in:
parent
eba65021e5
commit
79aedbcad7
@ -4,7 +4,6 @@
|
|||||||
//
|
//
|
||||||
// 不得利用本项目从事危害国家安全、扰乱社会秩序、侵犯他人合法权益等法律法规禁止的活动!任何基于本项目二次开发而产生的一切法律纠纷和责任,我们不承担任何责任!
|
// 不得利用本项目从事危害国家安全、扰乱社会秩序、侵犯他人合法权益等法律法规禁止的活动!任何基于本项目二次开发而产生的一切法律纠纷和责任,我们不承担任何责任!
|
||||||
|
|
||||||
using Aliyun.OSS.Util;
|
|
||||||
using Furion.AspNetCore;
|
using Furion.AspNetCore;
|
||||||
using Microsoft.AspNetCore.Mvc.ModelBinding;
|
using Microsoft.AspNetCore.Mvc.ModelBinding;
|
||||||
|
|
||||||
@ -270,13 +269,12 @@ public class SysFileService : IDynamicApiController, ITransient
|
|||||||
// 判断是否重复上传的文件
|
// 判断是否重复上传的文件
|
||||||
var sizeKb = input.File.Length / 1024; // 大小KB
|
var sizeKb = input.File.Length / 1024; // 大小KB
|
||||||
var fileMd5 = string.Empty;
|
var fileMd5 = string.Empty;
|
||||||
// 不管要不要验证md5,也把Md6计算出来,方便统计重复的文件。
|
// 计算文件MD5(长度为32的固定字符串)
|
||||||
await using (var fileStream = input.File.OpenReadStream())
|
await using (var fileStream = input.File.OpenReadStream())
|
||||||
{
|
{
|
||||||
//fileMd5 = OssUtils.ComputeContentMd5(fileStream, fileStream.Length); // 这种返回的是base64字符串有"="这种特殊字符,格式不规范
|
|
||||||
byte[] bsFile = new byte[fileStream.Length];
|
byte[] bsFile = new byte[fileStream.Length];
|
||||||
_ = fileStream.Read(bsFile, 0, bsFile.Length);
|
_ = fileStream.Read(bsFile, 0, bsFile.Length);
|
||||||
fileMd5 = MD5Encryption.Encrypt(bsFile);// 使用这个返回长度为32的固定字符串
|
fileMd5 = MD5Encryption.Encrypt(bsFile);
|
||||||
}
|
}
|
||||||
if (_uploadOptions.EnableMd5)
|
if (_uploadOptions.EnableMd5)
|
||||||
{
|
{
|
||||||
@ -413,5 +411,19 @@ public class SysFileService : IDynamicApiController, ITransient
|
|||||||
await _sysFileRep.AsDeleteable().Where(u => u.DataId == dataId).ExecuteCommandAsync();
|
await _sysFileRep.AsDeleteable().Where(u => u.DataId == dataId).ExecuteCommandAsync();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 根据业务数据Id获取文件列表
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="dataId"></param>
|
||||||
|
/// <param name="isClearFilter"></param>
|
||||||
|
/// <returns></returns>
|
||||||
|
[NonAction]
|
||||||
|
public async Task<List<SysFile>> GetFileListByDataId([FromQuery] long dataId, [FromQuery] bool isClearFilter = false)
|
||||||
|
{
|
||||||
|
return isClearFilter
|
||||||
|
? await _sysFileRep.CopyNew().AsQueryable().ClearFilter().Where(u => u.DataId == dataId).ToListAsync()
|
||||||
|
: await _sysFileRep.CopyNew().GetListAsync(u => u.DataId == dataId);
|
||||||
|
}
|
||||||
|
|
||||||
#endregion 统一实体与文件关联时,业务应用实体只需要定义一个SysFile集合导航属性,业务增加和更新、删除分别调用即可
|
#endregion 统一实体与文件关联时,业务应用实体只需要定义一个SysFile集合导航属性,业务增加和更新、删除分别调用即可
|
||||||
}
|
}
|
||||||
Loading…
Reference in New Issue
Block a user