Esempio n. 1
0
        private async Task <SSG_Person> UploadPerson()
        {
            _logger.LogDebug($"Attempting to create the found person record for SearchRequest[{_searchRequest.SearchRequestId}]");
            PersonEntity ssg_person = _mapper.Map <PersonEntity>(_foundPerson);

            ssg_person.SearchRequest     = _searchRequest;
            ssg_person.InformationSource = _providerDynamicsID;
            SSG_Person returnedPerson = await _searchRequestService.SavePerson(ssg_person, _cancellationToken);

            await CreateResultTransaction(returnedPerson);

            return(returnedPerson);
        }
        public async Task <bool> ProcessPersonFound(Person person, ProviderProfile providerProfile, SSG_SearchRequest request, CancellationToken concellationToken)
        {
            if (person == null)
            {
                return(true);
            }

            int?         providerDynamicsID = providerProfile.DynamicsID();
            PersonEntity ssg_person         = _mapper.Map <PersonEntity>(person);

            ssg_person.SearchRequest     = request;
            ssg_person.InformationSource = providerDynamicsID;
            _logger.LogDebug($"Attempting to create the found person record for SearchRequest[{request.SearchRequestId}]");
            SSG_Person returnedPerson = await _searchRequestService.SavePerson(ssg_person, concellationToken);

            _logger.LogDebug($"Attempting to create found identifier records for SearchRequest[{request.SearchRequestId}]");
            await UploadIdentifiers(person, request, returnedPerson, providerDynamicsID, concellationToken);

            _logger.LogDebug($"Attempting to create found adddress records for SearchRequest[{request.SearchRequestId}]");
            await UploadAddresses(person, request, returnedPerson, providerDynamicsID, concellationToken);

            _logger.LogDebug($"Attempting to create found phone records for SearchRequest[{request.SearchRequestId}]");
            await UploadPhoneNumbers(person, request, returnedPerson, providerDynamicsID, concellationToken);

            _logger.LogDebug($"Attempting to create found name records for SearchRequest[{request.SearchRequestId}]");
            await UploadNames(person, request, returnedPerson, providerDynamicsID, concellationToken);

            _logger.LogDebug($"Attempting to create found employment records for SearchRequest[{request.SearchRequestId}]");
            await UploadEmployment(person, request, returnedPerson, providerDynamicsID, concellationToken);

            _logger.LogDebug($"Attempting to create found related person records for SearchRequest[{request.SearchRequestId}]");
            await UploadRelatedPersons(person, request, returnedPerson, providerDynamicsID, concellationToken);

            _logger.LogDebug($"Attempting to create bank info records for SearchRequest[{request.SearchRequestId}]");
            await UploadBankInfos(person, request, returnedPerson, providerDynamicsID, concellationToken);

            _logger.LogDebug($"Attempting to create vehicles records for SearchRequest[{request.SearchRequestId}]");
            await UploadVehicles(person, request, returnedPerson, providerDynamicsID, concellationToken);

            _logger.LogDebug($"Attempting to create other assets records for SearchRequest[{request.SearchRequestId}]");
            await UploadOtherAssets(person, request, returnedPerson, providerDynamicsID, concellationToken);

            return(true);
        }
Esempio n. 3
0
        public async Task <SSG_SearchRequest> ProcessSearchRequestOrdered(SearchRequestOrdered searchRequestOrdered)
        {
            _personSought = searchRequestOrdered.Person;
            var cts = new CancellationTokenSource();

            _cancellationToken = cts.Token;

            SearchRequestEntity searchRequestEntity = _mapper.Map <SearchRequestEntity>(searchRequestOrdered);

            searchRequestEntity.CreatedByApi = true;
            searchRequestEntity.SendNotificationOnCreation = true;
            _uploadedSearchRequest = await _searchRequestService.CreateSearchRequest(searchRequestEntity, cts.Token);

            if (_uploadedSearchRequest == null)
            {
                return(null);
            }
            _logger.LogInformation("Create Search Request successfully");

            PersonEntity personEntity = _mapper.Map <PersonEntity>(_personSought);

            personEntity.SearchRequest     = _uploadedSearchRequest;
            personEntity.InformationSource = InformationSourceType.Request.Value;
            personEntity.IsCreatedByAgency = true;
            personEntity.IsPrimary         = true;
            _uploadedPerson = await _searchRequestService.SavePerson(personEntity, _cancellationToken);

            _logger.LogInformation("Create Person successfully");

            await UploadIdentifiers();
            await UploadAddresses();
            await UploadPhones();
            await UploadEmployment();
            await UploadRelatedPersons();
            await UploadRelatedApplicant(_uploadedSearchRequest.ApplicantFirstName, _uploadedSearchRequest.ApplicantLastName);
            await UploadAliases();
            await UploadSafetyConcern();

            return(_uploadedSearchRequest);
        }