75 lines
3.1 KiB
C#
75 lines
3.1 KiB
C#
//--------------------------------------------------------------------
|
|
// 此代码由T4模板自动生成 byzhouhang 20210918
|
|
// 生成时间 2024-07-02 16:53:58
|
|
// 对此文件的更改可能会导致不正确的行为,并且如果重新生成代码,这些更改将会丢失。
|
|
//--------------------------------------------------------------------
|
|
|
|
using IRaCIS.Core.Domain.Models;
|
|
using Microsoft.AspNetCore.Mvc;
|
|
using IRaCIS.Core.Application.Interfaces;
|
|
using IRaCIS.Core.Application.ViewModel;
|
|
namespace IRaCIS.Core.Application.Service
|
|
{
|
|
/// <summary>
|
|
/// TrialSiteDicomAEService
|
|
/// </summary>
|
|
[ApiExplorerSettings(GroupName = "Trial")]
|
|
public class TrialSiteDicomAEService : BaseService, ITrialSiteDicomAEService
|
|
{
|
|
|
|
private readonly IRepository<TrialSiteDicomAE> _trialSiteDicomAERepository;
|
|
|
|
public TrialSiteDicomAEService(IRepository<TrialSiteDicomAE> trialSiteDicomAERepository)
|
|
{
|
|
_trialSiteDicomAERepository = trialSiteDicomAERepository;
|
|
}
|
|
|
|
[HttpPost]
|
|
public async Task<PageOutput<TrialSiteDicomAEView>> GetTrialSiteDicomAEList(TrialSiteDicomAEQuery inQuery)
|
|
{
|
|
|
|
var trialSiteDicomAEQueryable =
|
|
|
|
_trialSiteDicomAERepository
|
|
.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);
|
|
|
|
return pageList;
|
|
}
|
|
|
|
|
|
public async Task<IResponseOutput> AddOrUpdateTrialSiteDicomAE(TrialSiteDicomAEAddOrEdit addOrEditTrialSiteDicomAE)
|
|
{
|
|
var verifyExp1 = new EntityVerifyExp<TrialSiteDicomAE>()
|
|
{
|
|
VerifyExp = u => u.IP == addOrEditTrialSiteDicomAE.IP && u.Port == addOrEditTrialSiteDicomAE.Port &&u.CallingAE==addOrEditTrialSiteDicomAE.CallingAE && u.TrialId == addOrEditTrialSiteDicomAE.TrialId,
|
|
|
|
VerifyMsg = "不允许添加相同的IP和端口的记录"
|
|
};
|
|
|
|
|
|
var entity = await _trialSiteDicomAERepository.InsertOrUpdateAsync(addOrEditTrialSiteDicomAE, true, verifyExp1);
|
|
|
|
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();
|
|
}
|
|
|
|
|
|
}
|
|
}
|