@@ -31,22 +31,22 @@ public class AuthorizedTrialFinalRecordInDto
|
||||
public class TrialFinalRecordAddOrEdit
|
||||
{
|
||||
public Guid? Id { get; set; }
|
||||
|
||||
|
||||
public bool IsAuthorizedView { get; set; }
|
||||
|
||||
public string Name { get; set; }
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
public bool IsAuthorizedView { get; set; }
|
||||
|
||||
public string Name { get; set; }
|
||||
|
||||
|
||||
|
||||
public int State { get; set; }
|
||||
|
||||
|
||||
public Guid TrialFileTypeId { get; set; }
|
||||
|
||||
|
||||
public Guid TrialId { get; set; }
|
||||
|
||||
|
||||
public string Version { get; set; }
|
||||
|
||||
|
||||
|
||||
/// <summary>
|
||||
|
||||
@@ -22,6 +22,7 @@ namespace IRaCIS.Core.Application.Service;
|
||||
/// <param name="_localizer"></param>
|
||||
[ApiExplorerSettings(GroupName = "FileRecord")]
|
||||
public class TrialFinalRecordService(IRepository<TrialFinalRecord> _trialFinalRecordRepository,
|
||||
IRepository<TrialFile> _trialFileRepository,
|
||||
IMapper _mapper, IUserInfo _userInfo, IStringLocalizer _localizer) : BaseService, ITrialFinalRecordService
|
||||
{
|
||||
|
||||
@@ -35,6 +36,7 @@ public class TrialFinalRecordService(IRepository<TrialFinalRecord> _trialFinalRe
|
||||
.WhereIf(inDto.Name.IsNotNullOrEmpty(),x=>x.Name.Contains(inDto.Name))
|
||||
.WhereIf(inDto.Version.IsNotNullOrEmpty(), x => x.Version.Contains(inDto.Version))
|
||||
.WhereIf(inDto.IsAuthorizedView!=null, x => x.IsAuthorizedView==inDto.IsAuthorizedView)
|
||||
// .Include(x=>x.PDFFileRecord).Include(x => x.WordFileRecord).Include(x => x.SignFileRecord).Include(x => x.HistoryFileRecord)
|
||||
.ProjectTo<TrialFinalRecordView>(_mapper.ConfigurationProvider);
|
||||
|
||||
var pageList = await trialFinalRecordQueryable.ToPagedListAsync(inDto);
|
||||
@@ -43,24 +45,51 @@ public class TrialFinalRecordService(IRepository<TrialFinalRecord> _trialFinalRe
|
||||
}
|
||||
|
||||
|
||||
|
||||
public async Task<IResponseOutput> AddOrUpdateTrialFinalRecord(TrialFinalRecordAddOrEdit addOrEditTrialFinalRecord)
|
||||
/// <summary>
|
||||
/// 新增或者修改文档
|
||||
/// </summary>
|
||||
/// <param name="inDto"></param>
|
||||
/// <returns></returns>
|
||||
public async Task<IResponseOutput> AddOrUpdateTrialFinalRecord(TrialFinalRecordAddOrEdit inDto)
|
||||
{
|
||||
// 在此处拷贝automapper 映射
|
||||
if (inDto.PDFFileRecord != null) inDto.PDFFileRecord.TrialFileTypeId = inDto.TrialFileTypeId;
|
||||
if (inDto.WordFileRecord != null) inDto.WordFileRecord.TrialFileTypeId = inDto.TrialFileTypeId;
|
||||
if (inDto.SignFileRecord != null) inDto.SignFileRecord.TrialFileTypeId = inDto.TrialFileTypeId;
|
||||
if (inDto.HistoryFileRecord != null) inDto.HistoryFileRecord.TrialFileTypeId = inDto.TrialFileTypeId;
|
||||
|
||||
|
||||
|
||||
|
||||
var verifyExp = new EntityVerifyExp<TrialFinalRecord>()
|
||||
{
|
||||
VerifyExp = u => u.Name == addOrEditTrialFinalRecord.Name,
|
||||
VerifyExp = u => u.Name == inDto.Name,
|
||||
|
||||
// "当前类型启用的文件类型名称重复"
|
||||
VerifyMsg = _localizer["TrialFileType_NameRepeat"],
|
||||
|
||||
};
|
||||
if (inDto.Id != null)
|
||||
{
|
||||
var trialFinalRecord = await _trialFinalRecordRepository.Where(x => x.Id == inDto.Id.Value).FirstNotNullAsync();
|
||||
|
||||
var entity = await _trialFinalRecordRepository.InsertOrUpdateAsync(addOrEditTrialFinalRecord, true);
|
||||
List<Guid?> ids= new List<Guid?>() {
|
||||
trialFinalRecord.WordFileRecordId,
|
||||
trialFinalRecord.PDFFileRecordId,
|
||||
trialFinalRecord.SignFileRecordId,
|
||||
trialFinalRecord.HistoryFileRecordId
|
||||
|
||||
return ResponseOutput.Ok(entity.Id.ToString());
|
||||
};
|
||||
|
||||
var fileIds = ids.Where(x => x != null).Select(x => (Guid)x).ToList();
|
||||
await _trialFileRepository.BatchDeleteNoTrackingAsync(x => fileIds.Contains(x.Id));
|
||||
}
|
||||
var entity = await _trialFinalRecordRepository.InsertOrUpdateAsync(inDto, true);
|
||||
|
||||
|
||||
|
||||
|
||||
return ResponseOutput.Ok(entity.Id.ToString());
|
||||
|
||||
}
|
||||
|
||||
@@ -76,7 +105,11 @@ public class TrialFinalRecordService(IRepository<TrialFinalRecord> _trialFinalRe
|
||||
return ResponseOutput.Ok();
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 删除文档
|
||||
/// </summary>
|
||||
/// <param name="trialFinalRecordId"></param>
|
||||
/// <returns></returns>
|
||||
[HttpDelete("{trialFinalRecordId:guid}")]
|
||||
public async Task<IResponseOutput> DeleteTrialFinalRecord(Guid trialFinalRecordId)
|
||||
{
|
||||
|
||||
@@ -3,6 +3,7 @@ using AutoMapper.EquivalencyExpression;
|
||||
using IRaCIS.Application.Contracts;
|
||||
using IRaCIS.Core.Application.Contracts;
|
||||
using IRaCIS.Core.Application.ViewModel;
|
||||
using IRaCIS.Core.Infrastructure.Extention;
|
||||
|
||||
namespace IRaCIS.Core.Application.Service
|
||||
{
|
||||
@@ -107,7 +108,11 @@ namespace IRaCIS.Core.Application.Service
|
||||
CreateMap<TrialFileType, TrialFileTypeAddOrEdit>().ReverseMap();
|
||||
|
||||
CreateMap<TrialFinalRecord, TrialFinalRecordView>();
|
||||
CreateMap<TrialFinalRecord, TrialFinalRecordAddOrEdit>().ReverseMap();
|
||||
CreateMap<TrialFinalRecordAddOrEdit, TrialFinalRecord>();
|
||||
//.ForMember(d => d.HistoryFileRecord.TrialFileTypeId, c => c.MapFrom(t => t.TrialFileTypeId))
|
||||
//.ForMember(d => d.SignFileRecord.TrialFileTypeId, c => c.MapFrom(t => t.TrialFileTypeId))
|
||||
//.ForMember(d => d.WordFileRecord.TrialFileTypeId, c => c.MapFrom(t => t.TrialFileTypeId))
|
||||
//.ForMember(d => d.PDFFileRecord.TrialFileTypeId, c => c.MapFrom(t => t.TrialFileTypeId));
|
||||
|
||||
CreateMap<TrialNormalRecord, TrialNormalRecordView>();
|
||||
CreateMap<TrialNormalRecord, TrialNormalRecordAddOrEdit>().ReverseMap();
|
||||
|
||||
Reference in New Issue
Block a user