first commit

This commit is contained in:
ExtraNetwork
2026-05-12 17:04:54 +03:00
commit e5c4b6aa13
1425 changed files with 284735 additions and 0 deletions

View File

@@ -0,0 +1,62 @@
<?php
namespace App\Core\Validator\PropertyRoomAvailability;
use Illuminate\Contracts\Container\Container;
use Illuminate\Contracts\Translation\Translator;
use App\Core\Validator\BaseValidator;
use Exception;
class PropertyRoomAvailabilityAddValidator extends BaseValidator
{
public function __construct
(
Translator $translator,
Container $container
)
{
parent::__construct($translator, $container);
}
public function rules($params = null)
{
return
[
'property_id' => 'required|numeric',
'property_room_id' => 'required|numeric',
'room_rate_mapping_id' => 'required|numeric',
'channel_id' => 'required|numeric',
'min_stay' => 'required|numeric',
'max_stay' => 'required|numeric',
'stop_sell' => 'required|numeric',
'booking_on_request' => 'required|numeric',
'start_date' => 'required|date_format:Y-m-d',
'end_date' => 'required|date_format:Y-m-d',
'amount' => 'required|numeric',
'currency' => 'required',
];
}
public function messages()
{
$thisMessages = [];
return array_merge(parent::messages() , $thisMessages);
}
public function validate(array $params, array $rules = [], array $messages = [], array $customAttributes = [])
{
return $this->make($params, $this->rules($params), $this->messages());
}
}

View File

@@ -0,0 +1,63 @@
<?php
namespace App\Core\Validator\PropertyRoomAvailability;
use Illuminate\Contracts\Container\Container;
use Illuminate\Contracts\Translation\Translator;
use App\Core\Validator\BaseValidator;
use Exception;
class PropertyRoomAvailabilityBulkInsertValidator extends BaseValidator
{
private $updateTypes ;
private $includeDays;
public function __construct
(
Translator $translator,
Container $container
)
{
parent::__construct($translator, $container);
$this->updateTypes = ["availability","room_stop_sell"];
$this->includeDays = array('Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat');
}
public function rules($params = null)
{
return
[
'property_id' => 'required|numeric',
'update_type' => 'required|in:'.implode(',', $this->updateTypes),
'value' => 'required|numeric',
'start_date' => 'required|date_format:Y-m-d',
'end_date' => 'required|date_format:Y-m-d',
'availability_type_id' => 'required|in:1,2,3',
'channel_id' => 'required|integer',
'room_rates' => 'required|array',
'room_rates.*.room_id' => 'required|numeric',
'room_rates.*.room_rate_mapping_id' => 'array',
'include_days.*' => 'required|in:'.implode(',', $this->includeDays),
];
}
public function messages()
{
$thisMessages = [];
return array_merge(parent::messages() , $thisMessages);
}
public function validate(array $params, array $rules = [], array $messages = [], array $customAttributes = [])
{
return $this->make($params, $this->rules($params), $this->messages());
}
}

View File

@@ -0,0 +1,56 @@
<?php
namespace App\Core\Validator\PropertyRoomAvailability;
use Illuminate\Contracts\Container\Container;
use Illuminate\Contracts\Translation\Translator;
use App\Core\Validator\BaseValidator;
use Exception;
class PropertyRoomAvailabilityBulkUpdateValidator extends BaseValidator
{
private $updateTypes ;
private $includeDays;
public function __construct
(
Translator $translator,
Container $container
)
{
parent::__construct($translator, $container);
}
public function rules($params = null)
{
return
[
'availability' => 'array',
'availability.*.setup_type_id' => 'required|numeric',
'availability.*.room_id' => 'required|numeric',
'availability.*.date' => 'required|date_format:Y-m-d',
'availability.*.availability' => 'numeric',
];
}
public function messages()
{
$thisMessages = [];
return array_merge(parent::messages() , $thisMessages);
}
public function validate(array $params, array $rules = [], array $messages = [], array $customAttributes = [])
{
return $this->make($params, $this->rules($params), $this->messages());
}
}

View File

@@ -0,0 +1,54 @@
<?php
namespace App\Core\Validator\PropertyRoomAvailability;
use App\Models\Property;
use Illuminate\Contracts\Container\Container;
use Illuminate\Contracts\Translation\Translator;
use App\Core\Validator\BaseValidator;
use Exception;
class PropertyRoomAvailabilityDeleteValidator extends BaseValidator
{
public function __construct
(
Translator $translator,
Container $container
)
{
parent::__construct($translator, $container);
}
public function rules($params = null)
{
return
[
'id' => 'required|numeric',
];
}
public function messages()
{
$thisMessages = [];
return array_merge(parent::messages() , $thisMessages);
}
public function validate(array $params, array $rules = [], array $messages = [], array $customAttributes = [])
{
return $this->make($params, $this->rules($params), $this->messages());
}
}

View File

@@ -0,0 +1,53 @@
<?php
namespace App\Core\Validator\PropertyRoomAvailability;
use Illuminate\Contracts\Container\Container;
use Illuminate\Contracts\Translation\Translator;
use App\Core\Validator\BaseValidator;
use Exception;
class PropertyRoomAvailabilityUpdateValidator extends BaseValidator
{
public function __construct
(
Translator $translator,
Container $container
)
{
parent::__construct($translator, $container);
}
public function rules($params = null)
{
return
[
'property_id' => 'required|numeric',
'property_room_id' => 'required|numeric',
'room_rate_mapping_id' => 'required|numeric',
'channel_id' => 'required|numeric',
];
}
public function messages()
{
$thisMessages = [];
return array_merge(parent::messages() , $thisMessages);
}
public function validate(array $params, array $rules = [], array $messages = [], array $customAttributes = [])
{
return $this->make($params, $this->rules($params), $this->messages());
}
}