public submitApplicationResponse GetVetDocumentListOperation(string IssuerId, string EnterpriseGuid, string LocalTransactionId, int vetDocumentType, int VetDocumentStatus) { var vetList = new GetVetDocumentListRequest { localTransactionId = LocalTransactionId, initiator = new User { login = Common.Login }, vetDocumentType = (VetDocumentType)vetDocumentType, vetDocumentStatus = (VetDocumentStatus)VetDocumentStatus, enterpriseGuid = EnterpriseGuid }; var wrapper = new getVetDocumentListRequestRequest(vetList); var dataObject = SerializeToXmlElement(wrapper, vetList); return(AppRequest(IssuerId, dataObject)); }
public async Task <VsdListViewModel> GetVetDocumentList( string localTransactionId, Core.Domain.Auth.User user, Core.Domain.Auth.Enterprise enterprise, int count, int offset, int vetDocumentType, int vetDocumentStatus ) { try { var requestData = new GetVetDocumentListRequest { localTransactionId = localTransactionId, initiator = new User { login = user.MercuryLogin }, listOptions = new ListOptions { count = count.ToString(), offset = offset.ToString() }, vetDocumentTypeSpecified = true, vetDocumentType = (VetDocumentType)vetDocumentType, vetDocumentStatusSpecified = true, vetDocumentStatus = (VetDocumentStatus)vetDocumentStatus, enterpriseGuid = enterprise.MercuryId }; var result = await requestData.SendRequest <GetVetDocumentListResponse>( user.ApiKey, _mercuryOptions.ServiceId, user.IssuerId, user.ApiLogin, user.ApiPassword ); var vetDocumentList = new List <VsdViewModel>(); if (result.vetDocumentList.vetDocument is not null) { foreach (var vetDocument in result.vetDocumentList.vetDocument) { var item = (CertifiedConsignment)vetDocument.Item; DateTime?processDate = null; if (vetDocument.referencedDocument is not null) { var tnns = vetDocument.referencedDocument .Where(x => x.type == DocumentType.Item1 || x.type == DocumentType.Item5) .OrderByDescending(x => x.issueDate) .ToList(); processDate = tnns[0]?.issueDate.AddDays(1); } var element = new VsdViewModel { Id = vetDocument.uuid, Name = item.batch.productItem.name, ProductGlobalId = item.batch.productItem.globalID, Volume = item.batch.volume, ProductDate = item.batch.dateOfProduction.firstDate.ToDateTime(), IssueDate = vetDocument.issueDate, ProcessDate = processDate }; vetDocumentList.Add(element); } } return(new VsdListViewModel { result = vetDocumentList, ElementCount = result.vetDocumentList.total }); } catch (Exception e) { _logger.LogError(e, e.Message); if (e is EndpointNotFoundException) { return new VsdListViewModel { result = new List <VsdViewModel>(), ElementCount = 0 } } ; throw; } }