80 lines
		
	
	
		
			3.5 KiB
		
	
	
	
		
			C#
		
	
	
			
		
		
	
	
			80 lines
		
	
	
		
			3.5 KiB
		
	
	
	
		
			C#
		
	
	
| //--------------------------------------------------------------------
 | |
| //     此代码由T4模板自动生成  byzhouhang 20210918
 | |
| //	   生成时间 2024-07-02 16:53:58 
 | |
| //     对此文件的更改可能会导致不正确的行为,并且如果重新生成代码,这些更改将会丢失。
 | |
| //--------------------------------------------------------------------
 | |
| 
 | |
| using IRaCIS.Core.Application.Interfaces;
 | |
| using IRaCIS.Core.Application.ViewModel;
 | |
| using Microsoft.AspNetCore.Mvc;
 | |
| namespace IRaCIS.Core.Application.Service
 | |
| {
 | |
|     /// <summary>
 | |
|     /// TrialSiteDicomAEService
 | |
|     /// </summary>	
 | |
|     [ApiExplorerSettings(GroupName = "Trial")]
 | |
|     public class TrialSiteDicomAEService(IRepository<TrialSiteDicomAE> _trialSiteDicomAERepository, IMapper _mapper, IUserInfo _userInfo, IStringLocalizer _localizer) : BaseService, ITrialSiteDicomAEService
 | |
|     {
 | |
| 
 | |
| 
 | |
| 
 | |
|         [HttpPost]
 | |
|         public async Task<List<TrialSiteDicomAEView>> GetTrialSiteDicomAEList(TrialSiteDicomAEQuery inQuery)
 | |
|         {
 | |
| 
 | |
|             var trialSiteDicomAEQueryable =
 | |
| 
 | |
|                _trialSiteDicomAERepository.Where(t => t.TrialSiteId == inQuery.TrialSiteId)
 | |
|                 .WhereIf(!string.IsNullOrWhiteSpace(inQuery.IP), t => t.IP.Contains(inQuery.IP))
 | |
|                 .WhereIf(!string.IsNullOrWhiteSpace(inQuery.Port), t => t.Port.Contains(inQuery.Port))
 | |
|                 .WhereIf(!string.IsNullOrWhiteSpace(inQuery.Description), t => t.Description.Contains(inQuery.Description))
 | |
|                 .WhereIf(!string.IsNullOrWhiteSpace(inQuery.CallingAE), t => t.CallingAE.Contains(inQuery.CallingAE))
 | |
|              .ProjectTo<TrialSiteDicomAEView>(_mapper.ConfigurationProvider);
 | |
| 
 | |
|             //var pageList = await trialSiteDicomAEQueryable
 | |
|             //.ToPagedListAsync(inQuery.PageIndex, inQuery.PageSize, string.IsNullOrWhiteSpace(inQuery.SortField) ? nameof(TrialSiteDicomAEView.Id) : inQuery.SortField,
 | |
|             //inQuery.Asc);
 | |
| 
 | |
|             var list = await trialSiteDicomAEQueryable.ToListAsync();
 | |
| 
 | |
|             return list;
 | |
|         }
 | |
| 
 | |
| 
 | |
|         public async Task<IResponseOutput> AddOrUpdateTrialSiteDicomAE(TrialSiteDicomAEAddOrEdit addOrEditTrialSiteDicomAE)
 | |
|         {
 | |
|             var verifyExp1 = new EntityVerifyExp<TrialSiteDicomAE>()
 | |
|             {
 | |
|                 VerifyExp = u => u.CallingAE == addOrEditTrialSiteDicomAE.CallingAE && u.TrialId == addOrEditTrialSiteDicomAE.TrialId
 | |
|                 && u.TrialSiteId == addOrEditTrialSiteDicomAE.TrialSiteId,
 | |
| 
 | |
|                 //"不允许添加相同的记录"
 | |
|                 VerifyMsg = _localizer["TrialSiteDicomAE_RepeatRecord"]
 | |
|             };
 | |
|             var verifyExp2 = new EntityVerifyExp<TrialSiteDicomAE>()
 | |
|             {
 | |
|                 VerifyExp = u => u.CallingAE == addOrEditTrialSiteDicomAE.CallingAE && u.TrialId == addOrEditTrialSiteDicomAE.TrialId && u.TrialSiteId != addOrEditTrialSiteDicomAE.TrialSiteId,
 | |
| 
 | |
|                 // "其他中心已有该CallingAE"
 | |
|                 VerifyMsg = _localizer["TrialSiteDicomAE_OtherSiteExistCallingAE"]
 | |
|             };
 | |
| 
 | |
| 
 | |
|             var entity = await _trialSiteDicomAERepository.InsertOrUpdateAsync(addOrEditTrialSiteDicomAE, true, verifyExp1, verifyExp2);
 | |
| 
 | |
|             return ResponseOutput.Ok(entity.Id.ToString());
 | |
| 
 | |
|         }
 | |
| 
 | |
| 
 | |
|         [HttpDelete("{trialSiteDicomAEId:guid}")]
 | |
|         public async Task<IResponseOutput> DeleteTrialSiteDicomAE(Guid trialSiteDicomAEId)
 | |
|         {
 | |
|             var success = await _trialSiteDicomAERepository.DeleteFromQueryAsync(t => t.Id == trialSiteDicomAEId, true);
 | |
|             return ResponseOutput.Ok();
 | |
|         }
 | |
| 
 | |
| 
 | |
|     }
 | |
| }
 |