public async Task ProcessAsync(ACFormProcessor processor, FormEntry formEntry) { string submissionSnapshot = await StringifySubmission(formEntry); await SaveArchiveRecord(formEntry, submissionSnapshot); await ArchiveFormAsPDF(formEntry, submissionSnapshot); }
public async Task ProcessAsync(ACFormProcessor processor, FormEntry formEntry) { var mappings = JsonSerializer.Deserialize <Dictionary <string, string> >(processor.ConversionSpec); var formData = JsonSerializer.Deserialize <FormData>(formEntry.Data); _logger.LogInformation("Creating UiPath submission for FormEntry {formEntry}", formEntry.Id); formData.data.TryGetValue(mappings["CPTCodes"], out var cptCodes); formData.data.TryGetValue(mappings["DiagnosisCodes"], out var diagnosisCodes); formData.data.TryGetValue(mappings["MemberFirstName"], out var memberFirstName); formData.data.TryGetValue(mappings["MemberLastName"], out var memberLastName); formData.data.TryGetValue(mappings["NPIReferFrom"], out var npiReferFrom); formData.data.TryGetValue(mappings["NPIReferTo"], out var npiReferTo); formData.data.TryGetValue(mappings["MemberDOB"], out var memberDobStr); DateTime.TryParse(memberDobStr.ToString(), out var memberDob); var cpt = JsonSerializer.Deserialize <List <string> >(cptCodes.ToString()); var diag = JsonSerializer.Deserialize <List <string> >(diagnosisCodes.ToString()); var submission = new FormSubmission { FormEntryId = formEntry.Id, PDFPath = $"{formEntry.Id}", CPTCodes = string.Join(",", cpt), DiagnosisCodes = string.Join(",", diag), MemberDOB = memberDob, MemberFirstName = memberFirstName.ToString(), MemberLastName = memberLastName.ToString(), NPIReferFrom = npiReferFrom.ToString(), NPIReferTo = npiReferTo.ToString(), SubmissionDate = formEntry.SubmissionDate.GetValueOrDefault() }; await _uiPathDb.AddAsync(submission); await _uiPathDb.SaveChangesAsync(); _logger.LogInformation("UiPath submission for FormEntry {formEntry} successfully created", formEntry.Id); }
public async Task ProcessAsync(ACFormProcessor processor, FormEntry formEntry) { try { var mappings = JsonSerializer.Deserialize <Dictionary <string, string> >(processor.ConversionSpec); var formData = JsonSerializer.Deserialize <FormData>(formEntry.Data); //this gets the data from the form based on the conversion spec _logger.LogInformation("Creating ProviderRegistration submission for FormEntry {formEntry}", formEntry.Id); //"UserName": "******", formData.data.TryGetValue(mappings["UserName"], out var username); //"FirstName": "user-firstname", formData.data.TryGetValue(mappings["FirstName"], out var firstname); //"MiddleInitial": "user-middleinitial", formData.data.TryGetValue(mappings["MiddleInitial"], out var middleInitial); //"LastName": "user-lastname", formData.data.TryGetValue(mappings["LastName"], out var lastname); //"Email": "user-email", formData.data.TryGetValue(mappings["Email"], out var email); //"Phone": "user-phonenumber", formData.data.TryGetValue(mappings["Phone"], out var phone); //"Position": "user-position", formData.data.TryGetValue(mappings["Position"], out var position); //"ProviderNPI": "provider-npi", formData.data.TryGetValue(mappings["ProviderNPI"], out var providerNpi); //"ProviderTaxId": "provider-taxid", formData.data.TryGetValue(mappings["ProviderTaxId"], out var providerTaxId); //"ProviderPhysician": "provider-physicianname", formData.data.TryGetValue(mappings["ProviderPhysician"], out var providerPhysician); //"ProviderCompany": "provider-companyname", formData.data.TryGetValue(mappings["ProviderCompany"], out var providerCompany); //"ProviderPhone": "provider-companyphone", formData.data.TryGetValue(mappings["ProviderPhone"], out var providerPhone); //"ProviderAddress1": "provider-addressline1", formData.data.TryGetValue(mappings["ProviderAddress1"], out var providerAddress1); //"ProviderAddress2": "provider-addressline2", formData.data.TryGetValue(mappings["ProviderAddress2"], out var providerAddress2); //"ProviderCity": "provider-city", formData.data.TryGetValue(mappings["ProviderCity"], out var providerCity); //"ProviderState": "provider-state", formData.data.TryGetValue(mappings["ProviderState"], out var providerState); //"ProviderZip": "provider-Zip", formData.data.TryGetValue(mappings["ProviderZip"], out var providerZip); //"AccessNeeds": "access-needs", formData.data.TryGetValue(mappings["AccessNeeds"], out var accessNeeds); //"AccessReason": "access-reason", formData.data.TryGetValue(mappings["AccessReason"], out var accessReason); //"AccessComments": "access-comments", formData.data.TryGetValue(mappings["AccessComments"], out var comments); //"NeedsECPA": "access-ecpa", formData.data.TryGetValue(mappings["NeedsECPA"], out var needsECPA); //"NeedsEE": "access-ee", formData.data.TryGetValue(mappings["NeedsEE"], out var needsEE); //"NeedsQPP": "access-qpp", formData.data.TryGetValue(mappings["NeedsQPP"], out var needsQPP); //"NeedsFTP": "access-ftp", formData.data.TryGetValue(mappings["NeedsFTP"], out var needsFTP); //"IPAddresses": "access-ftp-ips", formData.data.TryGetValue(mappings["IPAddresses"], out var ipAddresses); var registrationRequest = new ProviderRegistrationRequest { FormEntryId = formEntry.Id, PDFPath = $"{formEntry.Id}", SubmissionDate = formEntry.SubmissionDate.GetValueOrDefault(), Username = username?.ToString(), FirstName = firstname?.ToString(), MiddleInitial = middleInitial?.ToString(), LastName = lastname?.ToString(), Email = email?.ToString(), Phone = phone?.ToString(), Position = position?.ToString(), ProviderNPI = providerNpi?.ToString(), ProviderTaxId = providerTaxId?.ToString(), ProviderPhysician = providerPhysician?.ToString(), ProviderCompany = providerCompany?.ToString(), ProviderPhone = providerPhone?.ToString(), ProviderAddress1 = providerAddress1?.ToString(), ProviderAddress2 = providerAddress2?.ToString(), ProviderCity = providerCity?.ToString(), ProviderState = providerState?.ToString(), ProviderZip = providerZip?.ToString(), AccessNeeds = accessNeeds?.ToString(), AccessReason = accessReason?.ToString(), AccessComments = comments?.ToString(), IPAddresses = ipAddresses?.ToString(), NeedsECPA = needsECPA as bool? ?? false, NeedsEE = needsEE as bool? ?? false, NeedsQPP = needsQPP as bool? ?? false, NeedsFTP = needsFTP as bool? ?? false, }; await _registrationDb.AddAsync(registrationRequest); await _registrationDb.SaveChangesAsync(); _logger.LogInformation("Registration submission for FormEntry {formEntry} successfully created", formEntry.Id); await _accountService.RegisterNewAccountAsync(registrationRequest); } catch (Exception ex) { _logger.LogError(ex, "Error submitting registration for Form Entry {formEntry}", formEntry.Id); } }
public Task ProcessAsync(ACFormProcessor processor, FormEntry formEntry) { throw new NotImplementedException(); }