Skip to content
This repository has been archived by the owner on Feb 29, 2024. It is now read-only.

Commit

Permalink
Merge pull request #332 from kmcwebdev/development
Browse files Browse the repository at this point in the history
Add Lexisnexis download functionality to LegalAndComplianceController
  • Loading branch information
csulit authored Oct 10, 2023
2 parents 3820bc8 + 86b9e7e commit ac35035
Show file tree
Hide file tree
Showing 4 changed files with 29 additions and 10 deletions.
17 changes: 17 additions & 0 deletions src/legal-and-compliance/common/dto/lexisnexis-download.dto.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
import { z } from 'zod';
import { createZodDto } from 'nestjs-zod';

// TODO: Update schema description and message
const LexisnexisDownloadSchema = z.object({
lexisnexis_search_id: z.string().uuid(),
category: z.string().nonempty(),
search_query: z.string().nonempty(),
search_query_type: z.enum(['people', 'company']).default('company'),
download_id: z.string().nonempty(),
});

export type LexisnexisDownloadType = z.infer<typeof LexisnexisDownloadSchema>;

export class LexisnexisDownloadDto extends createZodDto(
LexisnexisDownloadSchema,
) {}
9 changes: 4 additions & 5 deletions src/legal-and-compliance/legal-and-compliance.controller.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import { Controller, Get, Query } from '@nestjs/common';
import { LegalAndComplianceService } from './services/legal-and-compliance.service';
import { LexisnexisSearchDto } from './common/dto/lexisnexis-search.dto';
import { Public } from 'src/auth/common/decorator/public.decorator';
import { LexisnexisDownloadDto } from './common/dto/lexisnexis-download.dto';

@Controller('legal-and-compliance')
export class LegalAndComplianceController {
Expand All @@ -14,10 +14,9 @@ export class LegalAndComplianceController {
return this.legalAndComplianceService.lexisnexisSearch(query);
}

@Public()
@Get('test')
test() {
this.legalAndComplianceService.lexisnexisDownload();
@Get('lexisnexis-download')
lexisnexisDownload(@Query() query: LexisnexisDownloadDto) {
this.legalAndComplianceService.lexisnexisDownload(query);

return 'OK';
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ import { EventEmitter2 } from '@nestjs/event-emitter';
import { InjectKysely } from 'nestjs-kysely';
import { DB } from 'src/common/types';
import { LexisnexisSearchType } from '../common/dto/lexisnexis-search.dto';
import { LexisnexisDownloadType } from '../common/dto/lexisnexis-download.dto';

@Injectable()
export class LegalAndComplianceService {
Expand Down Expand Up @@ -52,12 +53,12 @@ export class LegalAndComplianceService {
return insertJob;
}

lexisnexisDownload() {
lexisnexisDownload(data: LexisnexisDownloadType) {
return this.eventEmitter.emit('lac-lexisnexis-download', {
lexisnexis_search_id: 'ad24df38-3ff3-4093-8439-8235528535ab',
search_query: 'PLAYNGO PH ,INC.',
category: 'agencyDecision',
download_id: 'blAiAmwmE2M6kvQy9EIjoWw-AXBd8pO8a3iN44JyRRc',
lexisnexis_search_id: data.lexisnexis_search_id,
search_query: data.search_query,
category: data.category,
download_id: data.download_id,
});
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -94,6 +94,8 @@ export class LacLexisnexisDownloadService implements OnModuleInit {
),
);

console.log(base64Pdf.data);

if (base64Pdf.status === 200 && base64Pdf.data.status === 'COMPLETE') {
const pdf = Buffer.from(base64Pdf.data.fileBase64, 'base64');
const streamBuffer = new WritableStreamBuffer();
Expand Down

0 comments on commit ac35035

Please sign in to comment.