Sorry Voucher with new features enhancement requested by KS

This commit is contained in:
Dillon Ngo
2024-07-23 19:11:36 +08:00
parent c3961d102e
commit 0d60226c44
49 changed files with 1325 additions and 103 deletions
@@ -0,0 +1,21 @@
<?php
namespace App\Http\Controllers\Vouchers;
use App\Classes\Modules\Vouchers\ControllersLogic\ListVoucherCampaignsLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class ListVoucherCampaignsController
{
/**
* @param Request $request
* @param ListVoucherCampaignsLogic $logic
* @return JsonResponse
*/
public function list(Request $request, ListVoucherCampaignsLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,32 @@
<?php
namespace App\Http\Resources;
use Illuminate\Http\Resources\Json\JsonResource;
class VoucherCampaignResource extends JsonResource
{
/**
* Transform the resource into an array.
*
* @param \Illuminate\Http\Request $request
* @return array
*/
public function toArray($request)
{
$metadata = null;
if ($request->has('include_metadata')) {
$metadata = KeyValueBasicResource::collection($this->attributes);
}
return [
// 'id' => $this->id,
'campaign_id' => $this->campaign_id,
'name' => $this->name,
'description' => $this->description,
'limit_per_month' => $this->limit_per_month,
'metadata' => $metadata
];
}
}