@@ -20,7 +20,7 @@ export class PdfService {
2020 private readonly profileService : ProfilesService
2121 ) { }
2222
23- public async createPdfBinary ( user_id : string , devEui : string , start : Date , end : Date ) : Promise < Buffer > {
23+ public async createPdfBinary ( user_id : string , devEui : string , start : Date , end : Date ) {
2424 if ( ! user_id ) throw new Error ( 'User ID is required' ) ;
2525 if ( ! devEui ) throw new Error ( 'DevEui is required' ) ;
2626 let rawData = await this . fetchDataAndReportFromDB ( devEui , user_id , start , end ) ;
@@ -44,9 +44,14 @@ export class PdfService {
4444 { name : 'notice' , min : - 17.99 , max : - 15.1 , color : 'yellow' } ,
4545 { name : 'normal' , min : - 18 , max : - 1000 , color : 'white' }
4646 ] ;
47- return await buildColdChainReport ( rawData , tableColorRange , reportUserData ) ;
47+ const pdf = await buildColdChainReport ( rawData , tableColorRange , reportUserData ) ;
48+ return {
49+ pdf,
50+ fileName : `${ location . name } -${ device . name } -${ moment ( start ) . format ( 'YYYYMMDD' ) . toString ( ) } -${ moment ( end ) . format ( 'YYYYMMDD' ) . toString ( ) } .pdf`
51+ }
52+
4853 } else if ( device . report_endpoint . includes ( 'co2-report' ) ) {
49- return await buildCO2Report (
54+ const pdf = await buildCO2Report (
5055 rawData ,
5156 device . dev_eui ,
5257 profile . employer ,
@@ -55,6 +60,10 @@ export class PdfService {
5560 device . name ,
5661 `${ moment ( start ) . format ( 'YYYY/MM/DD' ) . toString ( ) } - ${ moment ( end ) . format ( 'YYYY/MM/DD' ) . toString ( ) } ` ,
5762 ) ;
63+ return {
64+ pdf,
65+ fileName : `${ location . name } -${ device . name } -${ moment ( start ) . format ( 'YYYYMMDD' ) . toString ( ) } -${ moment ( end ) . format ( 'YYYYMMDD' ) . toString ( ) } .pdf`
66+ }
5867 } else {
5968 throw new Error ( 'Report endpoint not setup for this device' ) ;
6069 }
@@ -76,6 +85,8 @@ export class PdfService {
7685 findAllParams ,
7786 user_id
7887 ) ;
88+
7989 return reportData ;
90+
8091 }
8192}
0 commit comments