{"version":3,"file":"reportService.js","sourceRoot":"","sources":["../../../../src/modules/services/reporting/reportService.ts"],"names":[],"mappings":"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","sourcesContent":["module services {\r\n export module reporting {\r\n export class reportService implements interfaces.reporting.IReportService {\r\n static $inject = [\"$resource\", \"ENV\", \"$http\", \"generalService\", \"$timeout\"];\r\n constructor(private $resource: ng.resource.IResourceService, private ENV: interfaces.applicationcore.serverConfig,\r\n private $http: ng.IHttpService, public generalService: interfaces.applicationcore.IGeneralService,\r\n private $timeout: ng.ITimeoutService) {\r\n }\r\n\r\n getDocumentList(modelType: Enum.EnumModelType, transactionId: number): ng.resource.IResourceClass {\r\n return this.$resource(this.ENV.DSP_URL + \"Report/GetDocumentList\", {\r\n modelType: modelType,\r\n transactionId: transactionId\r\n });\r\n }\r\n\r\n getReportList(modelType: Enum.EnumModelType): ng.resource.IResourceClass {\r\n return this.$resource(this.ENV.DSP_URL + \"Report/GetReportList\", {\r\n modelType: modelType\r\n });\r\n }\r\n\r\n GetReportParameters(reportId: number): ng.resource.IResourceClass {\r\n return this.$resource(this.ENV.DSP_URL + \"Report/GetReportParameters\", {\r\n reportId: reportId\r\n });\r\n }\r\n\r\n GetReportDetail(reportId: number): ng.resource.IResourceClass {\r\n return this.$resource(this.ENV.DSP_URL + \"Report/GetReportDetail\", {\r\n reportId: reportId\r\n });\r\n }\r\n\r\n GetDocumentFromReport(reportId: number): ng.resource.IResourceClass {\r\n return this.$resource(this.ENV.DSP_URL + \"Report/GetDocumentFromReport\", {\r\n reportId: reportId\r\n });\r\n }\r\n\r\n saveToDocument(selectedIds: Array, referenceId: number, modelType: Enum.EnumModelType, version?: number, forceXLS?: boolean): ng.IPromise {\r\n var pdfDownload = document.createElement(\"a\");\r\n document.body.appendChild(pdfDownload);\r\n \r\n var url = this.ENV.DSP_URL + 'Report/SaveToDocument?';\r\n\r\n if (selectedIds.length > 1)\r\n {\r\n _.forEach(selectedIds, (id) => {\r\n url += 'selectedReportIds=' + id + '&';\r\n });\r\n }\r\n else\r\n {\r\n if (selectedIds.length == 1)\r\n {\r\n url += 'selectedReportIds=' + selectedIds[0] + '&';\r\n }\r\n }\r\n\r\n url += 'referenceId=' + referenceId + '&modelType=' + modelType;\r\n\r\n if (version) {\r\n url += '&version=' + version;\r\n }\r\n\r\n if (forceXLS) {\r\n url += '&forceXLS=' + forceXLS;\r\n }\r\n\r\n return this.$http({\r\n method: 'GET',\r\n responseType: 'arraybuffer',\r\n url: url,\r\n }).then((response) => {\r\n var filename = response.headers()['x-filename'] || 'download.pdf';\r\n var fileBlob = new Blob([response.data as BlobPart], { type: 'application/octet-stream' });\r\n\r\n if (navigator.appVersion.toString().indexOf('.NET') > 0) { // for IE browser\r\n window.navigator.msSaveBlob(fileBlob, filename);\r\n } else { // for other browsers\r\n var fileURL = window.URL.createObjectURL(fileBlob);\r\n pdfDownload.href = fileURL;\r\n pdfDownload.download = filename;\r\n pdfDownload.click();\r\n pdfDownload.remove();\r\n }\r\n\r\n this.$timeout(() => {\r\n this.generalService.displayMessage(\"Your download has started.\", Enum.EnumMessageType.Success);\r\n });\r\n }).catch((errorResponse) => {\r\n var fileBlob = new Blob([errorResponse.data], { type: 'application/json' });\r\n var fileURL = window.URL.createObjectURL(fileBlob);\r\n const reader = new FileReader();\r\n\r\n // This fires after the blob has been read/loaded.\r\n reader.addEventListener('loadend', (e: ProgressEvent) => {\r\n const text = e.target['result'];\r\n\r\n this.$timeout(() => {\r\n this.generalService.displayMessageHandler(JSON.parse(text));\r\n });\r\n });\r\n\r\n // Start reading the blob as text.\r\n reader.readAsText(fileBlob);\r\n });\r\n }\r\n\r\n saveCertificateToDocument(consignmentId: number, previewOnly: boolean, certificateNumber: string, modelType: Enum.EnumModelType, reportId: number, version?: number): ng.IPromise {\r\n var pdfDownload = document.createElement(\"a\");\r\n document.body.appendChild(pdfDownload);\r\n\r\n var url = this.ENV.DSP_URL + 'Report/SaveCertificateToDocument?';\r\n\r\n \r\n\r\n url += 'consignmentId=' + consignmentId + '&previewOnly=' + previewOnly + '&certificateNumber=' + certificateNumber + '&modelType=' + modelType + '&reportId=' + reportId;\r\n\r\n if (version) {\r\n url += '&version=' + version;\r\n }\r\n\r\n return this.$http({\r\n method: 'GET',\r\n responseType: 'arraybuffer',\r\n url: url,\r\n }).then((response) => {\r\n var filename = response.headers()['x-filename'] || 'Certificate.pdf';\r\n var fileBlob = new Blob([response.data as BlobPart], { type: 'application/octet-stream' });\r\n\r\n if (navigator.appVersion.toString().indexOf('.NET') > 0) { // for IE browser\r\n window.navigator.msSaveBlob(fileBlob, filename);\r\n } else { // for other browsers\r\n var fileURL = window.URL.createObjectURL(fileBlob);\r\n pdfDownload.href = fileURL;\r\n pdfDownload.download = filename;\r\n pdfDownload.click();\r\n pdfDownload.remove();\r\n }\r\n\r\n this.$timeout(() => {\r\n this.generalService.displayMessage(\"Your download has started.\", Enum.EnumMessageType.Success);\r\n });\r\n }).catch((errorResponse) => {\r\n var fileBlob = new Blob([errorResponse.data], { type: 'application/json' });\r\n var fileURL = window.URL.createObjectURL(fileBlob);\r\n const reader = new FileReader();\r\n\r\n // This fires after the blob has been read/loaded.\r\n reader.addEventListener('loadend', (e: ProgressEvent) => {\r\n const text = e.target['result'];\r\n\r\n this.$timeout(() => {\r\n this.generalService.displayMessageHandler(JSON.parse(text));\r\n });\r\n });\r\n\r\n // Start reading the blob as text.\r\n reader.readAsText(fileBlob);\r\n });\r\n }\r\n\r\n getReportExcel(params: any): ng.IPromise {\r\n\r\n var pdfDownload = document.createElement(\"a\");\r\n document.body.appendChild(pdfDownload);\r\n\r\n var url = this.ENV.DSP_URL + 'Report/GetReportExcel?';\r\n\r\n var searchObject: interfaces.applicationcore.ISearchObject = {\r\n filters: [],\r\n sorts: []\r\n }\r\n searchObject = params.connectSearch;\r\n\r\n url += 'connectSearch=' + btoa(JSON.stringify(searchObject));\r\n\r\n if (params.reportId)\r\n url += \"&reportId=\" + params.reportId;\r\n\r\n return this.$http({\r\n method: 'GET',\r\n responseType: 'arraybuffer',\r\n url: url,\r\n }).then((response) => {\r\n var filename = response.headers()['x-filename'] || 'download.xlsx';\r\n var fileBlob = new Blob([response.data as BlobPart], { type: 'application/octet-stream' });\r\n\r\n if (navigator.appVersion.toString().indexOf('.NET') > 0) { // for IE browser\r\n window.navigator.msSaveBlob(fileBlob, filename);\r\n } else { // for other browsers\r\n var fileURL = window.URL.createObjectURL(fileBlob);\r\n pdfDownload.href = fileURL;\r\n pdfDownload.download = filename;\r\n pdfDownload.click();\r\n pdfDownload.remove();\r\n }\r\n\r\n this.$timeout(() => {\r\n this.generalService.displayMessage(\"Your download has started.\", Enum.EnumMessageType.Success);\r\n });\r\n }).catch((errorResponse) => {\r\n var fileBlob = new Blob([errorResponse.data], { type: 'application/json' });\r\n var fileURL = window.URL.createObjectURL(fileBlob);\r\n const reader = new FileReader();\r\n\r\n // This fires after the blob has been read/loaded.\r\n reader.addEventListener('loadend', (e: ProgressEvent) => {\r\n const text = e.target['result'];\r\n\r\n this.$timeout(() => {\r\n this.generalService.displayMessageHandler(JSON.parse(text));\r\n });\r\n });\r\n\r\n // Start reading the blob as text.\r\n reader.readAsText(fileBlob);\r\n });\r\n }\r\n\r\n getCertificateNumbers(consignmentId: number, reportId: number): ng.resource.IResourceClass {\r\n return this.$resource(this.ENV.DSP_URL + \"Report/GetCertificateNumbers\", {\r\n consignmentId: consignmentId,\r\n reportId: reportId\r\n });\r\n }\r\n \r\n\r\n saveToDocumentRepository(selectedReportIds: Array, referenceId: number, modelType: Enum.EnumModelType, version?: number): ng.resource.IResourceClass {\r\n return this.$resource(this.ENV.DSP_URL + \"Report/SaveToDocumentRepository\", {\r\n selectedReportIds: selectedReportIds,\r\n referenceId: referenceId,\r\n modelType: modelType,\r\n version: version\r\n });\r\n }\r\n }\r\n }\r\n angular.module(\"app\").service(\"reportService\", services.reporting.reportService);\r\n}"]}