From ba9874b41e6c5a7d00abff37b330f2a401e735ed Mon Sep 17 00:00:00 2001 From: he <10978375@qq.com> Date: Tue, 24 May 2022 14:56:38 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E4=B8=80=E7=89=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Controllers/InspectionController.cs | 84 +++++------ .../Service/Inspection/InspectionService.cs | 134 +----------------- .../Interface/IInspectionService.cs | 9 +- 3 files changed, 40 insertions(+), 187 deletions(-) diff --git a/IRaCIS.Core.API/Controllers/InspectionController.cs b/IRaCIS.Core.API/Controllers/InspectionController.cs index c39cf86ec..9610d3cf7 100644 --- a/IRaCIS.Core.API/Controllers/InspectionController.cs +++ b/IRaCIS.Core.API/Controllers/InspectionController.cs @@ -110,20 +110,11 @@ namespace IRaCIS.Core.API.Controllers public async Task ConfigTrialBasicInfoConfirm(DataInspectionDto opt) { - await _inspectionService.RecordSing(opt.SignInfo); opt.Data.IsTrialBasicLogicConfirmed = true; - return await _trialConfigService.ConfigTrialBasicInfo(opt.Data); - //if (!data.IsSuccess) - //{ - // return ResponseOutput.NotOk(data.ErrorMessage); - //} + var result = await _trialConfigService.ConfigTrialBasicInfo(opt.Data); + await _inspectionService.RecordSing(opt.SignInfo, result); + return result; - //return ResponseOutput.Ok(); - //return await _trialConfigService.TrialConfigSignatureConfirm(new SignConfirmDTO() - //{ - // TrialId = opt.Data.TrialId, - // SignCode = opt.SignInfo.SignCode - //}); } @@ -136,8 +127,9 @@ namespace IRaCIS.Core.API.Controllers [UnitOfWork] public async Task TrialConfigSignatureConfirm(DataInspectionDto opt) { - await _inspectionService.RecordSing(opt.SignInfo); - return await _trialConfigService.TrialConfigSignatureConfirm(opt.Data); + var result = await _trialConfigService.TrialConfigSignatureConfirm(opt.Data); + await _inspectionService.RecordSing(opt.SignInfo, result); + return result; } @@ -153,21 +145,10 @@ namespace IRaCIS.Core.API.Controllers [UnitOfWork] public async Task ConfigTrialProcessInfoConfirm(DataInspectionDto opt) { - await _inspectionService.RecordSing(opt.SignInfo); opt.Data.IsTrialProcessConfirmed = true; - return await _trialConfigService.ConfigTrialProcessInfo(opt.Data); - //if (!data.IsSuccess) - //{ - // return ResponseOutput.NotOk(data.ErrorMessage); - //} - - //return ResponseOutput.Ok(); - //return await _trialConfigService.TrialConfigSignatureConfirm(new SignConfirmDTO() - //{ - // TrialId = opt.Data.TrialId, - // SignCode = opt.SignInfo.SignCode - //}); - + var result = await _trialConfigService.ConfigTrialProcessInfo(opt.Data); + await _inspectionService.RecordSing(opt.SignInfo,result); + return result; } @@ -183,19 +164,10 @@ namespace IRaCIS.Core.API.Controllers [UnitOfWork] public async Task ConfigTrialUrgentInfoConfirm(DataInspectionDto opt) { - - await _inspectionService.RecordSing(opt.SignInfo); opt.Data.IsTrialUrgentConfirmed = true; - return await _trialConfigService.ConfigTrialUrgentInfo(opt.Data); - //if (!data.IsSuccess) - //{ - // return ResponseOutput.NotOk(data.ErrorMessage); - //} - //return await _trialConfigService.TrialConfigSignatureConfirm(new SignConfirmDTO() - //{ - // TrialId = opt.Data.TrialId, - // SignCode = opt.SignInfo.SignCode - //}); + var result= await _trialConfigService.ConfigTrialUrgentInfo(opt.Data); + await _inspectionService.RecordSing(opt.SignInfo, result); + return result; } @@ -208,8 +180,9 @@ namespace IRaCIS.Core.API.Controllers [UnitOfWork] public async Task CRCRequestToQC(DataInspectionDto opt) { - await _inspectionService.RecordSing(opt.SignInfo); - return await _qCOperationService.CRCRequestToQC(opt.Data); + var result = await _qCOperationService.CRCRequestToQC(opt.Data); + await _inspectionService.RecordSing(opt.SignInfo, result); + return result; } @@ -220,8 +193,9 @@ namespace IRaCIS.Core.API.Controllers [UnitOfWork] public async Task QCPassedOrFailed(DataInspectionDto opt) { - await _inspectionService.RecordSing(opt.SignInfo); - return await _qCOperationService.QCPassedOrFailed(opt.Data.trialId, opt.Data.subjectVisitId, opt.Data.auditState); + var result= await _qCOperationService.QCPassedOrFailed(opt.Data.trialId, opt.Data.subjectVisitId, opt.Data.auditState); + await _inspectionService.RecordSing(opt.SignInfo, result); + return result; } /// @@ -231,10 +205,13 @@ namespace IRaCIS.Core.API.Controllers [UnitOfWork] public async Task CheckBack(DataInspectionDto opt) { - await _inspectionService.RecordSing(opt.SignInfo); - return await _qCOperationService.CheckBack(opt.Data.Id); + var result = await _qCOperationService.CheckBack(opt.Data.Id); + await _inspectionService.RecordSing(opt.SignInfo, result); + return result; } + + /// @@ -244,8 +221,9 @@ namespace IRaCIS.Core.API.Controllers [UnitOfWork] public async Task SetReuploadFinished(DataInspectionDto opt) { - await _inspectionService.RecordSing(opt.SignInfo); - return await _qCOperationService.SetReuploadFinished(opt.Data); + var result = await _qCOperationService.SetReuploadFinished(opt.Data); + await _inspectionService.RecordSing(opt.SignInfo, result); + return result; } /// @@ -257,8 +235,9 @@ namespace IRaCIS.Core.API.Controllers [UnitOfWork] public async Task UpdateTrialState(DataInspectionDto opt) { - await _inspectionService.RecordSing(opt.SignInfo); - return await _trialConfigService.UpdateTrialState(opt.Data.trialId, opt.Data.trialStatusStr, opt.Data.reason); + var result = await _trialConfigService.UpdateTrialState(opt.Data.trialId, opt.Data.trialStatusStr, opt.Data.reason); + await _inspectionService.RecordSing(opt.SignInfo, result); + return result; } @@ -270,8 +249,9 @@ namespace IRaCIS.Core.API.Controllers [UnitOfWork] public async Task UserConfirm(DataInspectionDto opt) { - await _inspectionService.RecordSing(opt.SignInfo); - return await _trialDocumentService.UserConfirm(opt.Data); + var result = await _trialDocumentService.UserConfirm(opt.Data); + await _inspectionService.RecordSing(opt.SignInfo, result); + return result; } } } diff --git a/IRaCIS.Core.Application/Service/Inspection/InspectionService.cs b/IRaCIS.Core.Application/Service/Inspection/InspectionService.cs index 846e4cc74..f63e7d548 100644 --- a/IRaCIS.Core.Application/Service/Inspection/InspectionService.cs +++ b/IRaCIS.Core.Application/Service/Inspection/InspectionService.cs @@ -156,17 +156,18 @@ namespace IRaCIS.Core.Application.Service.Inspection return await query.ToPagedListAsync(dto.PageIndex, dto.PageSize, "CreateTime", dto.Asc); } - //public async Task + /// /// 传入参数记录ID /// /// + /// /// - public async Task RecordSing(SignDTO SignInfo) + public async Task RecordSing(SignDTO SignInfo, IResponseOutput response) { - if (SignInfo != null) + if (SignInfo != null&&response.IsSuccess) { var verifyResult = await VerifySignatureAsync(SignInfo); var signId = await AddSignRecordAsync(SignInfo); @@ -176,91 +177,7 @@ namespace IRaCIS.Core.Application.Service.Inspection } - /// - /// 通用逻辑封装 - /// - /// 方法参数 - /// 添加稽查 - /// 用户签名 - /// 委托 - /// 方法返回的结果 - /// - public async Task Enforcement(dynamic OptCommand, DataInspectionAddDTO AuditInfo, SignDTO SignInfo, dynamic fun, IResponseOutput? response=null) - { - - - if (response != null && response.IsSuccess == false) - { - return response; - } - Guid? signId = null; - MapData(OptCommand, AuditInfo); - if (AuditInfo.IsSign) - { - // 验证用户签名信息 - var verifyResult = await VerifySignatureAsync(SignInfo); - signId = await AddSignRecordAsync(SignInfo); - if (verifyResult.IsSuccess == false) - { - return verifyResult; - } - //await AddSignRecordAsync(SignInfo); - } - - IResponseOutput bResult; - - if (response != null) - { - bResult = response; - } - else - { - bResult = await fun(OptCommand); - } - - // 用户 签名某个文档 - if (bResult.IsSuccess == false) - { - return bResult; - } - - if (AuditInfo.IsSign) - { - var signSuccess = await _repository.BatchUpdateAsync(t => t.Id == signId, u => new TrialSign() { IsCompleted = true }); - } - - return bResult; - } - - - /// - /// 映射 SiteId SubjectId SubjectVisitId TrialId 最开始没有 需要特殊处理 - /// - /// - /// - public void MapData(dynamic data, dynamic mapData) - { - List column = new List() { "TrialId", "SiteId", "SubjectId", "SubjectVisitId" }; - foreach (var item in column) - { - try - { - var i = mapData.GetType().GetProperty(item).GetValue(mapData); - if (i == null) - { - var value = data.GetType().GetProperty(item).GetValue(data); - mapData.GetType().GetProperty(item).SetValue(mapData, value); - } - - } - catch (Exception) - { - continue; - - } - } - } /// 验证用户签名信息 /// public async Task VerifySignatureAsync(SignDTO signDTO) @@ -288,49 +205,6 @@ namespace IRaCIS.Core.Application.Service.Inspection return add.Id; } - - - - - /// - /// 往json里面添加属性 - /// - /// json - /// 字典 - /// - public string AddJsonItem(string json, Dictionary keyValues) - { - - var JsonData = JsonConvert.DeserializeObject>(json); - - foreach (var item in keyValues) - { - if (JsonData.ContainsKey(item.Key)) - { - JsonData[item.Key] = item.Value; - } - else { - JsonData.Add(item.Key, item.Value); - } - - } - return JsonConvert.SerializeObject(JsonData); - - } - - - - - /// - /// 设置项目以及名称 - /// - /// - /// - public async Task SetInspectionNameValue(DataInspection Data) - { - await _dataInspectionRepository.SetInspectionNameValue(Data); - - } } diff --git a/IRaCIS.Core.Application/Service/Inspection/Interface/IInspectionService.cs b/IRaCIS.Core.Application/Service/Inspection/Interface/IInspectionService.cs index ef2b3612e..c66cdcef6 100644 --- a/IRaCIS.Core.Application/Service/Inspection/Interface/IInspectionService.cs +++ b/IRaCIS.Core.Application/Service/Inspection/Interface/IInspectionService.cs @@ -13,15 +13,14 @@ namespace IRaCIS.Core.Application.Service.Inspection.Interface Task> GetInspectionData(GetDataInspectionDto dto); - string AddJsonItem(string json, Dictionary keyValues); - void MapData(dynamic data, dynamic mapData); + - Task VerifySignatureAsync(SignDTO signDTO); + Task VerifySignatureAsync(SignDTO signDTO, IResponseOutput response); Task AddSignRecordAsync(SignDTO signDTO); - Task RecordSing(SignDTO SignInfo); - Task Enforcement(dynamic OptCommand, DataInspectionAddDTO AuditInfo, SignDTO SignInfo, dynamic fun, IResponseOutput? response = null); + Task RecordSing(SignDTO SignInfo, IResponseOutput response); + }