Przeglądaj źródła

feat(request): validacoes

ebagabee 1 tydzień temu
rodzic
commit
43f71bb59d

+ 39 - 0
app/Http/Resources/FnmBaseBracketResource.php

@@ -0,0 +1,39 @@
+<?php
+
+namespace App\Http\Resources;
+
+use Carbon\Carbon;
+use Illuminate\Http\Request;
+use Illuminate\Http\Resources\Json\JsonResource;
+use Illuminate\Http\Resources\Json\AnonymousResourceCollection;
+use App\Models\FnmBaseBracket;
+
+class FnmBaseBracketResource extends JsonResource
+{
+    /**
+     * Transform the resource into an array.
+     *
+     * @return array<string, mixed>
+     */
+    public function toArray(Request $request): array
+    {
+        return [
+            'id'          => $this->id,
+            'description' => $this->description,
+            'start_month' => $this->start_month,
+            'end_month'   => $this->end_month,
+            'percentage'  => $this->percentage,
+            'created_at'  => Carbon::parse($this->created_at)->format('Y-m-d H:i:s'),
+            'updated_at'  => Carbon::parse($this->updated_at)->format('Y-m-d H:i:s'),
+        ];
+    }
+
+    /**
+     * @param \Illuminate\Database\Eloquent\Collection<FnmBaseBracket> $resource
+     * @return \Illuminate\Http\Resources\Json\AnonymousResourceCollection<FnmBaseBracketResource>
+     */
+    public static function collection($resource): AnonymousResourceCollection
+    {
+        return parent::collection($resource);
+    }
+}

+ 40 - 0
app/Http/Resources/FranchiseeFnmBracketResource.php

@@ -0,0 +1,40 @@
+<?php
+
+namespace App\Http\Resources;
+
+use Carbon\Carbon;
+use Illuminate\Http\Request;
+use Illuminate\Http\Resources\Json\JsonResource;
+use Illuminate\Http\Resources\Json\AnonymousResourceCollection;
+use App\Models\FranchiseeFnmBracket;
+
+class FranchiseeFnmBracketResource extends JsonResource
+{
+    /**
+     * Transform the resource into an array.
+     *
+     * @return array<string, mixed>
+     */
+    public function toArray(Request $request): array
+    {
+        return [
+            'id'            => $this->id,
+            'franchisee_id' => $this->franchisee_id,
+            'description'   => $this->description,
+            'start_month'   => $this->start_month,
+            'end_month'     => $this->end_month,
+            'percentage'    => $this->percentage,
+            'created_at'    => Carbon::parse($this->created_at)->format('Y-m-d H:i:s'),
+            'updated_at'    => Carbon::parse($this->updated_at)->format('Y-m-d H:i:s'),
+        ];
+    }
+
+    /**
+     * @param \Illuminate\Database\Eloquent\Collection<FranchiseeFnmBracket> $resource
+     * @return \Illuminate\Http\Resources\Json\AnonymousResourceCollection<FranchiseeFnmBracketResource>
+     */
+    public static function collection($resource): AnonymousResourceCollection
+    {
+        return parent::collection($resource);
+    }
+}

+ 40 - 0
app/Http/Resources/FranchiseeMaintenanceBracketResource.php

@@ -0,0 +1,40 @@
+<?php
+
+namespace App\Http\Resources;
+
+use Carbon\Carbon;
+use Illuminate\Http\Request;
+use Illuminate\Http\Resources\Json\JsonResource;
+use Illuminate\Http\Resources\Json\AnonymousResourceCollection;
+use App\Models\FranchiseeMaintenanceBracket;
+
+class FranchiseeMaintenanceBracketResource extends JsonResource
+{
+    /**
+     * Transform the resource into an array.
+     *
+     * @return array<string, mixed>
+     */
+    public function toArray(Request $request): array
+    {
+        return [
+            'id'            => $this->id,
+            'franchisee_id' => $this->franchisee_id,
+            'description'   => $this->description,
+            'start_month'   => $this->start_month,
+            'end_month'     => $this->end_month,
+            'percentage'    => $this->percentage,
+            'created_at'    => Carbon::parse($this->created_at)->format('Y-m-d H:i:s'),
+            'updated_at'    => Carbon::parse($this->updated_at)->format('Y-m-d H:i:s'),
+        ];
+    }
+
+    /**
+     * @param \Illuminate\Database\Eloquent\Collection<FranchiseeMaintenanceBracket> $resource
+     * @return \Illuminate\Http\Resources\Json\AnonymousResourceCollection<FranchiseeMaintenanceBracketResource>
+     */
+    public static function collection($resource): AnonymousResourceCollection
+    {
+        return parent::collection($resource);
+    }
+}

+ 40 - 0
app/Http/Resources/FranchiseeRoyaltiesBracketResource.php

@@ -0,0 +1,40 @@
+<?php
+
+namespace App\Http\Resources;
+
+use Carbon\Carbon;
+use Illuminate\Http\Request;
+use Illuminate\Http\Resources\Json\JsonResource;
+use Illuminate\Http\Resources\Json\AnonymousResourceCollection;
+use App\Models\FranchiseeRoyaltiesBracket;
+
+class FranchiseeRoyaltiesBracketResource extends JsonResource
+{
+    /**
+     * Transform the resource into an array.
+     *
+     * @return array<string, mixed>
+     */
+    public function toArray(Request $request): array
+    {
+        return [
+            'id'             => $this->id,
+            'franchisee_id'  => $this->franchisee_id,
+            'description'    => $this->description,
+            'start_month'    => $this->start_month,
+            'end_month'      => $this->end_month,
+            'percentage'     => $this->percentage,
+            'created_at'     => Carbon::parse($this->created_at)->format('Y-m-d H:i:s'),
+            'updated_at'     => Carbon::parse($this->updated_at)->format('Y-m-d H:i:s'),
+        ];
+    }
+
+    /**
+     * @param \Illuminate\Database\Eloquent\Collection<FranchiseeRoyaltiesBracket> $resource
+     * @return \Illuminate\Http\Resources\Json\AnonymousResourceCollection<FranchiseeRoyaltiesBracketResource>
+     */
+    public static function collection($resource): AnonymousResourceCollection
+    {
+        return parent::collection($resource);
+    }
+}

+ 49 - 0
app/Http/Resources/FranchiseeTbrResource.php

@@ -0,0 +1,49 @@
+<?php
+
+namespace App\Http\Resources;
+
+use Carbon\Carbon;
+use Illuminate\Http\Request;
+use Illuminate\Http\Resources\Json\JsonResource;
+use Illuminate\Http\Resources\Json\AnonymousResourceCollection;
+use App\Models\FranchiseeTbr;
+use App\Http\Resources\InhabitantClassificationResource;
+
+class FranchiseeTbrResource extends JsonResource
+{
+    /**
+     * Transform the resource into an array.
+     *
+     * @return array<string, mixed>
+     */
+    public function toArray(Request $request): array
+    {
+        return [
+            'id'                                  => $this->id,
+            'franchisee_id'                       => $this->franchisee_id,
+            'contract_id'                         => $this->contract_id,
+            'inhabitant_classification_id'        => $this->inhabitant_classification_id,
+            'year'                                => $this->year,
+            'tbr_value'                           => $this->tbr_value,
+            'start_date'                          => $this->start_date?->format('Y-m-d'),
+            'invoice_due_day'                     => $this->invoice_due_day,
+            'base_royalties_percentage'           => $this->base_royalties_percentage,
+            'base_fnm_percentage'                 => $this->base_fnm_percentage,
+            'franchisee_royalties_bracket_id'     => $this->franchisee_royalties_bracket_id,
+            'franchisee_fnm_bracket_id'           => $this->franchisee_fnm_bracket_id,
+            'franchisee_maintenance_bracket_id'   => $this->franchisee_maintenance_bracket_id,
+            'created_at'                          => Carbon::parse($this->created_at)->format('Y-m-d H:i:s'),
+            'updated_at'                          => Carbon::parse($this->updated_at)->format('Y-m-d H:i:s'),
+            'inhabitant_classification'           => new InhabitantClassificationResource($this->whenLoaded('inhabitantClassification')),
+        ];
+    }
+
+    /**
+     * @param \Illuminate\Database\Eloquent\Collection<FranchiseeTbr> $resource
+     * @return \Illuminate\Http\Resources\Json\AnonymousResourceCollection<FranchiseeTbrResource>
+     */
+    public static function collection($resource): AnonymousResourceCollection
+    {
+        return parent::collection($resource);
+    }
+}

+ 37 - 0
app/Http/Resources/InhabitantClassificationResource.php

@@ -0,0 +1,37 @@
+<?php
+
+namespace App\Http\Resources;
+
+use Carbon\Carbon;
+use Illuminate\Http\Request;
+use Illuminate\Http\Resources\Json\JsonResource;
+use Illuminate\Http\Resources\Json\AnonymousResourceCollection;
+use App\Models\InhabitantClassification;
+
+class InhabitantClassificationResource extends JsonResource
+{
+    /**
+     * Transform the resource into an array.
+     *
+     * @return array<string, mixed>
+     */
+    public function toArray(Request $request): array
+    {
+        return [
+            'id'          => $this->id,
+            'description' => $this->description,
+            'acronym'     => $this->acronym,
+            'created_at'  => Carbon::parse($this->created_at)->format('Y-m-d H:i:s'),
+            'updated_at'  => Carbon::parse($this->updated_at)->format('Y-m-d H:i:s'),
+        ];
+    }
+
+    /**
+     * @param \Illuminate\Database\Eloquent\Collection<InhabitantClassification> $resource
+     * @return \Illuminate\Http\Resources\Json\AnonymousResourceCollection<InhabitantClassificationResource>
+     */
+    public static function collection($resource): AnonymousResourceCollection
+    {
+        return parent::collection($resource);
+    }
+}

+ 39 - 0
app/Http/Resources/MaintenanceBaseBracketResource.php

@@ -0,0 +1,39 @@
+<?php
+
+namespace App\Http\Resources;
+
+use Carbon\Carbon;
+use Illuminate\Http\Request;
+use Illuminate\Http\Resources\Json\JsonResource;
+use Illuminate\Http\Resources\Json\AnonymousResourceCollection;
+use App\Models\MaintenanceBaseBracket;
+
+class MaintenanceBaseBracketResource extends JsonResource
+{
+    /**
+     * Transform the resource into an array.
+     *
+     * @return array<string, mixed>
+     */
+    public function toArray(Request $request): array
+    {
+        return [
+            'id'          => $this->id,
+            'description' => $this->description,
+            'start_month' => $this->start_month,
+            'end_month'   => $this->end_month,
+            'percentage'  => $this->percentage,
+            'created_at'  => Carbon::parse($this->created_at)->format('Y-m-d H:i:s'),
+            'updated_at'  => Carbon::parse($this->updated_at)->format('Y-m-d H:i:s'),
+        ];
+    }
+
+    /**
+     * @param \Illuminate\Database\Eloquent\Collection<MaintenanceBaseBracket> $resource
+     * @return \Illuminate\Http\Resources\Json\AnonymousResourceCollection<MaintenanceBaseBracketResource>
+     */
+    public static function collection($resource): AnonymousResourceCollection
+    {
+        return parent::collection($resource);
+    }
+}

+ 39 - 0
app/Http/Resources/RoyaltiesBaseBracketResource.php

@@ -0,0 +1,39 @@
+<?php
+
+namespace App\Http\Resources;
+
+use Carbon\Carbon;
+use Illuminate\Http\Request;
+use Illuminate\Http\Resources\Json\JsonResource;
+use Illuminate\Http\Resources\Json\AnonymousResourceCollection;
+use App\Models\RoyaltiesBaseBracket;
+
+class RoyaltiesBaseBracketResource extends JsonResource
+{
+    /**
+     * Transform the resource into an array.
+     *
+     * @return array<string, mixed>
+     */
+    public function toArray(Request $request): array
+    {
+        return [
+            'id'          => $this->id,
+            'description' => $this->description,
+            'start_month' => $this->start_month,
+            'end_month'   => $this->end_month,
+            'percentage'  => $this->percentage,
+            'created_at'  => Carbon::parse($this->created_at)->format('Y-m-d H:i:s'),
+            'updated_at'  => Carbon::parse($this->updated_at)->format('Y-m-d H:i:s'),
+        ];
+    }
+
+    /**
+     * @param \Illuminate\Database\Eloquent\Collection<RoyaltiesBaseBracket> $resource
+     * @return \Illuminate\Http\Resources\Json\AnonymousResourceCollection<RoyaltiesBaseBracketResource>
+     */
+    public static function collection($resource): AnonymousResourceCollection
+    {
+        return parent::collection($resource);
+    }
+}

+ 60 - 0
app/Http/Resources/TbrCalculationResource.php

@@ -0,0 +1,60 @@
+<?php
+
+namespace App\Http\Resources;
+
+use Carbon\Carbon;
+use Illuminate\Http\Request;
+use Illuminate\Http\Resources\Json\JsonResource;
+use Illuminate\Http\Resources\Json\AnonymousResourceCollection;
+use App\Models\TbrCalculation;
+
+class TbrCalculationResource extends JsonResource
+{
+    /**
+     * Transform the resource into an array.
+     *
+     * @return array<string, mixed>
+     */
+    public function toArray(Request $request): array
+    {
+        return [
+            'id'                               => $this->id,
+            'unit_id'                          => $this->unit_id,
+            'revenue_value'                    => $this->revenue_value,
+            'contract_month_reference'         => $this->contract_month_reference,
+            'tbr_value'                        => $this->tbr_value,
+            'royalties_bracket_id'             => $this->royalties_bracket_id,
+            'royalties_bracket_percentage'     => $this->royalties_bracket_percentage,
+            'royalties_bracket_value'          => $this->royalties_bracket_value,
+            'fnm_bracket_id'                   => $this->fnm_bracket_id,
+            'fnm_bracket_percentage'           => $this->fnm_bracket_percentage,
+            'fnm_bracket_value'                => $this->fnm_bracket_value,
+            'maintenance_bracket_id'           => $this->maintenance_bracket_id,
+            'maintenance_bracket_percentage'   => $this->maintenance_bracket_percentage,
+            'maintenance_bracket_value'        => $this->maintenance_bracket_value,
+            'royalties_effective_percentage'   => $this->royalties_effective_percentage,
+            'royalties_effective_value'        => $this->royalties_effective_value,
+            'fnm_effective_percentage'         => $this->fnm_effective_percentage,
+            'fnm_effective_value'              => $this->fnm_effective_value,
+            'maintenance_effective_percentage' => $this->maintenance_effective_percentage,
+            'maintenance_effective_value'      => $this->maintenance_effective_value,
+            'bracket_subtotal'                 => $this->bracket_subtotal,
+            'subtotal'                         => $this->subtotal,
+            'final_value'                      => $this->final_value,
+            'user_id'                          => $this->user_id,
+            'royalties_applied_criteria'       => $this->royalties_applied_criteria,
+            'receivable_generated'             => $this->receivable_generated,
+            'created_at'                       => Carbon::parse($this->created_at)->format('Y-m-d H:i:s'),
+            'updated_at'                       => Carbon::parse($this->updated_at)->format('Y-m-d H:i:s'),
+        ];
+    }
+
+    /**
+     * @param \Illuminate\Database\Eloquent\Collection<TbrCalculation> $resource
+     * @return \Illuminate\Http\Resources\Json\AnonymousResourceCollection<TbrCalculationResource>
+     */
+    public static function collection($resource): AnonymousResourceCollection
+    {
+        return parent::collection($resource);
+    }
+}

+ 37 - 0
app/Http/Resources/TbrResource.php

@@ -0,0 +1,37 @@
+<?php
+
+namespace App\Http\Resources;
+
+use Carbon\Carbon;
+use Illuminate\Http\Request;
+use Illuminate\Http\Resources\Json\JsonResource;
+use Illuminate\Http\Resources\Json\AnonymousResourceCollection;
+use App\Models\Tbr;
+
+class TbrResource extends JsonResource
+{
+    /**
+     * Transform the resource into an array.
+     *
+     * @return array<string, mixed>
+     */
+    public function toArray(Request $request): array
+    {
+        return [
+            'id'         => $this->id,
+            'year'       => $this->year,
+            'tbr_value'  => $this->tbr_value,
+            'created_at' => Carbon::parse($this->created_at)->format('Y-m-d H:i:s'),
+            'updated_at' => Carbon::parse($this->updated_at)->format('Y-m-d H:i:s'),
+        ];
+    }
+
+    /**
+     * @param \Illuminate\Database\Eloquent\Collection<Tbr> $resource
+     * @return \Illuminate\Http\Resources\Json\AnonymousResourceCollection<TbrResource>
+     */
+    public static function collection($resource): AnonymousResourceCollection
+    {
+        return parent::collection($resource);
+    }
+}