/// <summary> /// Создает документ с инфомацией. /// </summary> /// <param name="item"> Документ. </param> /// <param name="interdepartItem"> Межведомственный запрос. </param> /// <returns></returns> public DocumentForReturnListDto CreateDocumentFoReturnListDto(DocumentForReturnListDto item, InterdepartRequestForIdDto interdepartItem) { DocumentForReturnListDtoBuilder documentBuilder = new DocumentForReturnListDtoBuilder(); var documentDto = documentBuilder.SetDocumentInfo(item).SetInterdepartInfo(interdepartItem).Build(); return(documentDto); }
/// <summary> /// Добавить в объект информацию о межведомственных запросах. /// </summary> /// <param name="interdepart"> Межведомственный запрос. </param> /// <returns></returns> public DocumentForReturnListDtoBuilder SetInterdepartInfo(InterdepartRequestForIdDto interdepart) { if (interdepart != null) { documentForReturnListDto.InterdepartRequestId = interdepart.InterdepartRequestId; documentForReturnListDto.InterdepartStatusId = interdepart.InterdepartStatusId; } else { documentForReturnListDto.InterdepartRequestId = 0; documentForReturnListDto.InterdepartStatusId = 0; } return(this); }
/// <summary> /// Вспомогательный метод для получения из БД необходимых межведомственных запросов. /// </summary> /// <param name="documents"> Список документов. </param> /// <returns> Список межведомственных запросов. </returns> private async Task <IEnumerable <InterdepartRequestForIdDto> > GetInterdepartStatus(IEnumerable <Document> documents) { List <InterdepartRequestForIdDto> interdepartRequestDtos = new List <InterdepartRequestForIdDto>(); foreach (var item in documents) { if (item.DocumentTypeId != (int)DocumentsType.Pasport) { continue; } var interdepart = await _documentRepository.GetInterdepartRequestRepositoryAsync(item.Id); var interdepartForId = new InterdepartRequestForIdDto(interdepart.DocumentId, interdepart.Id, interdepart.InterdepartStatusId); interdepartRequestDtos.Add(interdepartForId); } return(interdepartRequestDtos); }