防止前端重复上传
continuous-integration/drone/push Build is passing Details

IRC_NewDev
hang 2024-07-31 14:05:38 +08:00
parent ca41fac53d
commit d3f7c199c7
1 changed files with 15 additions and 13 deletions

View File

@ -146,20 +146,21 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc
public async Task<IResponseOutput> AddOrUpdateArchiveStudy(NewArchiveStudyCommand incommand)
{
//var @uploadLock = _distributedLockProvider.CreateLock($"UploadDicom");
var @uploadLock = _distributedLockProvider.CreateLock($"UploadDicom");
//using (await @uploadLock.AcquireAsync())
//{
// if (_provider.Exists($"StudyUid_{incommand.TrialId}_{incommand.Study.StudyInstanceUid}"))
// {
// //---当前已有人正在上传和归档该检查!
// return ResponseOutput.NotOk(StaticData.International("UploadDownLoad_ArchiveInProgress"));
// }
// else
// {
// _provider.Set($"StudyUid_{incommand.TrialId}_{incommand.Study.StudyInstanceUid}", _userInfo.Id, TimeSpan.FromSeconds(30));
// }
//}
using (await @uploadLock.AcquireAsync())
{
if (_provider.Exists($"{incommand.TrialId}_{incommand.Study.StudyInstanceUid}"))
{
//---当前已有人正在上传和归档该检查!
return ResponseOutput.NotOk(StaticData.International("UploadDownLoad_ArchiveInProgress"));
}
else
{
//在事务未完成前 防止前端重复提交
_provider.Set($"{incommand.TrialId}_{incommand.Study.StudyInstanceUid}", _userInfo.Id, TimeSpan.FromMinutes(3));
}
}
var modalitys = string.Empty;
@ -355,6 +356,7 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc
finally
{
_provider.Remove($"StudyUid_{incommand.TrialId}_{incommand.Study.StudyInstanceUid}");
_provider.Remove($"{incommand.TrialId}_{incommand.Study.StudyInstanceUid}");
}