/ app / Http / Services / EnisaService.php
EnisaService.php
 1  <?php
 2  
 3  namespace App\Http\Services;
 4  
 5  use App\Models\Certificate;
 6  use App\Models\DocumentType;
 7  use App\Models\Dossier;
 8  use App\Models\Revision;
 9  use App\Models\Template;
10  
11  class EnisaService
12  {
13      public static function generateCertificateId(Dossier $dossier)
14      {
15          $certificationScheme = 'EUCC';
16          $countryCode = 'ES';
17          $nccaName = 'JTSEC/CB';
18          $year = $dossier->code_year;
19          //2 digits format month
20          $month = $dossier->created_at->format('m');
21          $version = '1.0';
22  
23          return "$certificationScheme$countryCode$nccaName$year$month$version";
24      }
25      public static function generateCertificatePdf(Certificate $certificate)
26      {
27  
28          $document = DocumentService::createWithTemplate(
29              [
30                  'type_id' => 2,
31                  'template_id' => Template::where('name', '20200221_certificado_enisa_qr-v1')->first()->id,
32                  'dossier_id' => $certificate->dossier_id,
33                  'meet_id' => null
34              ],
35              certificateId: $certificate->id
36          );
37          return $document;
38      }
39  }