修改激活逻辑
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/push Build is passing
Details
parent
52dc6e05d4
commit
e43dce220c
|
@ -30,7 +30,8 @@ public class TrialGlobalLimitAttribute : Attribute
|
||||||
|
|
||||||
public class TrialGlobalLimitEndpointFilter(IFusionCache _fusionCache, IUserInfo _userInfo, IRepository<Trial> _trialRepository,
|
public class TrialGlobalLimitEndpointFilter(IFusionCache _fusionCache, IUserInfo _userInfo, IRepository<Trial> _trialRepository,
|
||||||
IOptionsMonitor<ServiceVerifyConfigOption> _basicSystemConfigConfig,
|
IOptionsMonitor<ServiceVerifyConfigOption> _basicSystemConfigConfig,
|
||||||
IOptionsMonitor<SystemHospitalOption> _hospitalOption, IStringLocalizer _localizer) : IEndpointFilter
|
IRepository<HIRHospital> _hirHospitalRepository,
|
||||||
|
IStringLocalizer _localizer) : IEndpointFilter
|
||||||
|
|
||||||
{
|
{
|
||||||
public async ValueTask<object?> InvokeAsync(EndpointFilterInvocationContext context, EndpointFilterDelegate next)
|
public async ValueTask<object?> InvokeAsync(EndpointFilterInvocationContext context, EndpointFilterDelegate next)
|
||||||
|
@ -158,6 +159,9 @@ public class TrialGlobalLimitEndpointFilter(IFusionCache _fusionCache, IUserInfo
|
||||||
if (!string.IsNullOrWhiteSpace(trialIdStr))
|
if (!string.IsNullOrWhiteSpace(trialIdStr))
|
||||||
{
|
{
|
||||||
var trialInfo = await _fusionCache.GetOrSetAsync(CacheKeys.Trial(trialIdStr), _ => CacheHelper.GetTrialStatusAsync(Guid.Parse(trialIdStr), _trialRepository), TimeSpan.FromDays(7));
|
var trialInfo = await _fusionCache.GetOrSetAsync(CacheKeys.Trial(trialIdStr), _ => CacheHelper.GetTrialStatusAsync(Guid.Parse(trialIdStr), _trialRepository), TimeSpan.FromDays(7));
|
||||||
|
|
||||||
|
var hospitalInfo = await _fusionCache.GetOrSetAsync(CacheKeys.Hospital, _ => CacheHelper.GetHospitalCode(_hirHospitalRepository), TimeSpan.FromDays(7));
|
||||||
|
|
||||||
var trialStatusStr = string.Empty;
|
var trialStatusStr = string.Empty;
|
||||||
|
|
||||||
|
|
||||||
|
@ -187,7 +191,7 @@ public class TrialGlobalLimitEndpointFilter(IFusionCache _fusionCache, IUserInfo
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
var hospitalCode = _hospitalOption.CurrentValue.HospitalCode;
|
var hospitalCode = hospitalInfo.HospitalCode;
|
||||||
var authInfo = JsonConvert.DeserializeObject<TrialAuthorizationInfo>(decodedText);
|
var authInfo = JsonConvert.DeserializeObject<TrialAuthorizationInfo>(decodedText);
|
||||||
|
|
||||||
if (authInfo != null)
|
if (authInfo != null)
|
||||||
|
|
|
@ -44,7 +44,7 @@ namespace IRaCIS.Core.Application
|
||||||
IRepository<TrialStateChange> _trialStateChangeRepository,
|
IRepository<TrialStateChange> _trialStateChangeRepository,
|
||||||
IRepository<ReadingTableQuestionTrial> _readingTableQuestionTrialRepository,
|
IRepository<ReadingTableQuestionTrial> _readingTableQuestionTrialRepository,
|
||||||
IOptionsMonitor<ServiceVerifyConfigOption> _basicSystemConfigConfig,
|
IOptionsMonitor<ServiceVerifyConfigOption> _basicSystemConfigConfig,
|
||||||
IOptionsMonitor<SystemHospitalOption> _hospitalOption,
|
IRepository<HIRHospital> _hIRHospitalRepository,
|
||||||
IMapper _mapper, IUserInfo _userInfo, IStringLocalizer _localizer, IFusionCache _fusionCache) : BaseService, ITrialConfigService
|
IMapper _mapper, IUserInfo _userInfo, IStringLocalizer _localizer, IFusionCache _fusionCache) : BaseService, ITrialConfigService
|
||||||
{
|
{
|
||||||
|
|
||||||
|
@ -1243,8 +1243,15 @@ namespace IRaCIS.Core.Application
|
||||||
|
|
||||||
#region 自动激活一个月
|
#region 自动激活一个月
|
||||||
|
|
||||||
var hospitalCode = _hospitalOption.CurrentValue.HospitalCode;
|
if (trial.AuthorizationDate == null && trial.AuthorizationEncrypt.IsNotNullOrEmpty())
|
||||||
var hospitalName = _hospitalOption.CurrentValue.HospitalName;
|
{
|
||||||
|
|
||||||
|
var query = _hIRHospitalRepository.Where(t => t.IsDefault == true).ProjectTo<HIRHospitalView>(_mapper.ConfigurationProvider);
|
||||||
|
|
||||||
|
var hospitalInfo = await query.FirstNotNullAsync();
|
||||||
|
|
||||||
|
var hospitalCode = hospitalInfo.HospitalCode;
|
||||||
|
var hospitalName = hospitalInfo.HospitalName;
|
||||||
var deadLineDate = DateTime.Now.Date.AddMonths(1).AddDays(1).AddSeconds(-1);
|
var deadLineDate = DateTime.Now.Date.AddMonths(1).AddDays(1).AddSeconds(-1);
|
||||||
|
|
||||||
var authorizationInfo = new TrialAuthorizationInfo()
|
var authorizationInfo = new TrialAuthorizationInfo()
|
||||||
|
@ -1267,6 +1274,7 @@ namespace IRaCIS.Core.Application
|
||||||
trial.AuthorizationDate = deadLineDate;
|
trial.AuthorizationDate = deadLineDate;
|
||||||
|
|
||||||
//await _trialRepository.BatchUpdateNoTrackingAsync(t => t.Id == trialId, u => new Trial() { AuthorizationEncrypt = newActivationCode, AuthorizationDate = deadLineDate });
|
//await _trialRepository.BatchUpdateNoTrackingAsync(t => t.Id == trialId, u => new Trial() { AuthorizationEncrypt = newActivationCode, AuthorizationDate = deadLineDate });
|
||||||
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue