项目 sponsor cro 修改

IRC_NewDev
hang 2024-05-27 16:39:14 +08:00
parent fd3f76d35c
commit 7376732b1a
9 changed files with 30 additions and 23 deletions

View File

@ -13095,7 +13095,7 @@
<member name="M:IRaCIS.Application.Services.CroService.GetCroList(IRaCIS.Application.Contracts.CROCompanyQueryDTO)">
<summary> 分页获取CRO列表 </summary>
</member>
<member name="M:IRaCIS.Application.Services.CroService.GetAllCROList">
<member name="M:IRaCIS.Application.Services.CroService.GetAllCROList(System.Nullable{System.Guid})">
<summary> 根据CRO 名称查询所有CRO 列表 </summary>
</member>
<member name="M:IRaCIS.Application.Services.CroService.AddOrUpdateCro(IRaCIS.Application.Contracts.CROCompanyDTO)">
@ -13128,7 +13128,7 @@
<member name="M:IRaCIS.Application.Services.SponsorService.GetSponsorList(IRaCIS.Application.Contracts.SponsorQueryDTO)">
<summary> 分页获取申办方列表 </summary>
</member>
<member name="M:IRaCIS.Application.Services.SponsorService.GetAllSponsorList">
<member name="M:IRaCIS.Application.Services.SponsorService.GetAllSponsorList(System.Nullable{System.Guid})">
<summary> 分页获取申办方列表 </summary>
</member>
<member name="M:IRaCIS.Application.Services.SponsorService.AddOrUpdateSponsor(IRaCIS.Application.Contracts.SponsorCommand)">

View File

@ -5,7 +5,7 @@ using Microsoft.AspNetCore.Mvc;
namespace IRaCIS.Application.Services
{
[ ApiExplorerSettings(GroupName = "Institution")]
[ApiExplorerSettings(GroupName = "Institution")]
public class CroService : BaseService, ICroService
{
private readonly IRepository<CRO> _croRepository;
@ -20,50 +20,50 @@ namespace IRaCIS.Application.Services
/// <summary> 分页获取CRO列表 </summary>
[HttpPost]
public async Task<PageOutput<CROCompanyDTO>> GetCroList(CROCompanyQueryDTO croCompanySearchModel)
{
{
var croQueryable = _croRepository
.WhereIf(!string.IsNullOrEmpty(croCompanySearchModel.CROName), t => t.CROName.Contains(croCompanySearchModel.CROName) || t.CRONameCN.Contains(croCompanySearchModel.CROName))
.WhereIf(!string.IsNullOrEmpty(croCompanySearchModel.CROCode), t => t.CROCode.Contains(croCompanySearchModel.CROCode) )
.WhereIf(!string.IsNullOrEmpty(croCompanySearchModel.CROCode), t => t.CROCode.Contains(croCompanySearchModel.CROCode))
.ProjectTo<CROCompanyDTO>(_mapper.ConfigurationProvider);
return await croQueryable.ToPagedListAsync(croCompanySearchModel.PageIndex, croCompanySearchModel.PageSize,
string.IsNullOrWhiteSpace(croCompanySearchModel.SortField) ? "CROName": croCompanySearchModel.SortField, croCompanySearchModel.Asc);
return await croQueryable.ToPagedListAsync(croCompanySearchModel.PageIndex, croCompanySearchModel.PageSize,
string.IsNullOrWhiteSpace(croCompanySearchModel.SortField) ? "CROName" : croCompanySearchModel.SortField, croCompanySearchModel.Asc);
}
/// <summary> 根据CRO 名称查询所有CRO 列表 </summary>
public async Task<IEnumerable<CroSelectDTO>> GetAllCROList()
public async Task<IEnumerable<CroSelectDTO>> GetAllCROList(Guid? croId)
{
return await _croRepository.ProjectTo<CroSelectDTO>(_mapper.ConfigurationProvider, new { isEn_Us = _userInfo.IsEn_Us }).ToListAsync();
return await _croRepository.Where(t => t.IsTrialLevel == false || t.Id == croId).ProjectTo<CroSelectDTO>(_mapper.ConfigurationProvider, new { isEn_Us = _userInfo.IsEn_Us }).ToListAsync();
}
/// <summary> 添加CRO信息 </summary>
public async Task<IResponseOutput> AddOrUpdateCro(CROCompanyDTO addCroCompanyCommand)
{
var exp = new EntityVerifyExp<CRO>()
{
VerifyExp = cro => cro.CROName.Equals(addCroCompanyCommand.CROName) ,
VerifyExp = cro => cro.CROName.Equals(addCroCompanyCommand.CROName),
//---已经存在同名的CRO请确认。
VerifyMsg = _localizer["CRO_DupName"]
};
var cro = await _croRepository.InsertOrUpdateAsync(addCroCompanyCommand, true, exp);
return ResponseOutput.Ok( cro.Id.ToString());
return ResponseOutput.Ok(cro.Id.ToString());
}
/// <summary> 删除CRO信息 </summary>
[HttpDelete("{croCompanyId:guid}")]
public async Task<IResponseOutput> DeleteCro(Guid cROCompanyId)
public async Task<IResponseOutput> DeleteCro(Guid cROCompanyId)
{
if (await _trialRepository.AnyAsync(t => t.CROId == cROCompanyId))
{
@ -74,7 +74,7 @@ namespace IRaCIS.Application.Services
//{
// return ResponseOutput.NotOk("该CRO下存在用户暂时无法删除。");
//}
var success = await _croRepository.BatchDeleteNoTrackingAsync(x=>x.Id== cROCompanyId);
var success = await _croRepository.BatchDeleteNoTrackingAsync(x => x.Id == cROCompanyId);
return ResponseOutput.Result(success);
}

View File

@ -11,6 +11,8 @@ namespace IRaCIS.Application.Contracts
public string CRONameCN { get; set; } = string.Empty;
public bool IsTrialLevel { get; set; }
}
public class CroSelectDTO
@ -18,8 +20,6 @@ namespace IRaCIS.Application.Contracts
public Guid Id { get; set; }
public string CROName { get; set; } = string.Empty;
public string CROCode { get; set; } = string.Empty;
public string CRONameCN { get; set; } = string.Empty;
}
public class CROCompanyQueryDTO : PageInput

View File

@ -17,6 +17,8 @@ namespace IRaCIS.Application.Contracts
public string SponsorCode { get; set; } = String.Empty;
public bool IsTrialLevel { get; set; }
}
public class SponsorQueryDTO : PageInput

View File

@ -8,7 +8,7 @@ namespace IRaCIS.Application.Interfaces
public interface ICroService
{
Task<PageOutput<CROCompanyDTO>> GetCroList(CROCompanyQueryDTO queryModel);
Task<IEnumerable<CroSelectDTO>> GetAllCROList();
Task<IEnumerable<CroSelectDTO>> GetAllCROList(Guid? croId);
Task<IResponseOutput> AddOrUpdateCro(CROCompanyDTO addCroCompanyViewModel);
Task<IResponseOutput> DeleteCro(Guid croCompanyId);
}

View File

@ -8,7 +8,7 @@ namespace IRaCIS.Application.Interfaces
public interface ISponsorService
{
Task<PageOutput<SponsorDTO>> GetSponsorList(SponsorQueryDTO queryParam);
Task<IEnumerable<SponsorSelectDTO>> GetAllSponsorList();
Task<IEnumerable<SponsorSelectDTO>> GetAllSponsorList(Guid? sponsorId);
Task<IResponseOutput> AddOrUpdateSponsor(SponsorCommand model);
Task<IResponseOutput> DeleteSponsor(Guid sponsorId);
}

View File

@ -33,14 +33,14 @@ namespace IRaCIS.Application.Services
}
/// <summary> 分页获取申办方列表 </summary>
public async Task<IEnumerable<SponsorSelectDTO>> GetAllSponsorList()
public async Task<IEnumerable<SponsorSelectDTO>> GetAllSponsorList(Guid? sponsorId)
{
//Expression<Func<Sponsor, bool>> sponsorLambda = x => true;
//if (!string.IsNullOrWhiteSpace(sponsorSearchModel.SponsorName))
//{
// sponsorLambda = sponsorLambda.And(t => t.SponsorName.Contains(sponsorSearchModel.SponsorName.Trim()));
//}
var sponsorQueryable = _sponsorRepository.ProjectTo<SponsorSelectDTO>(_mapper.ConfigurationProvider,new { isEn_Us= _userInfo.IsEn_Us});
var sponsorQueryable = _sponsorRepository.Where(t => t.IsTrialLevel == false || t.Id == sponsorId).ProjectTo<SponsorSelectDTO>(_mapper.ConfigurationProvider,new { isEn_Us= _userInfo.IsEn_Us});
return await sponsorQueryable.ToListAsync();
}

View File

@ -10,6 +10,9 @@ namespace IRaCIS.Core.Domain.Models
public string CRONameCN { get; set; } = string.Empty;
public string CROCode { get; set; }
public bool IsTrialLevel { get; set; }
public DateTime CreateTime { get; set; }
public Guid CreateUserId { get; set; }
public Guid UpdateUserId { get; set; }

View File

@ -11,6 +11,8 @@ namespace IRaCIS.Core.Domain.Models
public string SponsorCode { get; set; } = String.Empty;
public bool IsTrialLevel { get; set; }
public DateTime CreateTime { get; set; } = DateTime.Now;
public Guid CreateUserId { get; set; } = Guid.Empty;
public DateTime UpdateTime { get; set; } = DateTime.Now;