update: announcement rule and validator.

This commit is contained in:
weichien
2021-06-08 13:37:11 +08:00
parent 40c7c6bfeb
commit 0b20934fe1
2 changed files with 47 additions and 3 deletions
@@ -4,7 +4,7 @@ namespace App\Classes\Modules\Announcements\Standards\Rules;
use App\Classes\General\Abstracts\AbstractRule;
use App\Classes\Modules\Announcements\Standards\Validators\AnnouncementValidation;
use App\Classes\Modules\Companies\DataTransferObjects\CompanyObject;
use App\Classes\Modules\Companies\DataTransferObjects\AnnouncementObject;
class CanCreateAnnouncement extends AbstractRule
{
@@ -30,7 +30,7 @@ class CanCreateAnnouncement extends AbstractRule
}
/**
* @param CompanyObject $object
* @param AnnouncementObject $object
* @return bool
* @throws \App\Classes\Exceptions\RequestValidationException
*/
@@ -40,7 +40,7 @@ class CanCreateAnnouncement extends AbstractRule
}
/**
* @param CompanyObject $object
* @param AnnouncementObject $object
* @return bool
*/
protected function criteria($object): bool
@@ -0,0 +1,44 @@
<?php
namespace App\Classes\Modules\Announcements\Standards\Validators;
use App\Classes\General\Abstracts\AbstractValidation;
use App\Classes\Modules\Announcements\DataTransferObjects\AnnouncementObject;
class AnnouncementValidation extends AbstractValidation
{
/**
* @param AnnouncementObject $object
* @return array
*/
protected function data($object): array
{
return [
'title' => $object->getTitle(),
'description' => $object->getDescription(),
'starting_on' => $object->getStartingOn(),
'ending_on' => $object->getEndingOn()
];
}
/**
* @return array
*/
protected function rules(): array
{
return [
'title' => 'required',
'description' => 'required',
'starting_on' => 'required',
'ending_on' => 'required'
];
}
/**
* @return array
*/
protected function messages(): array
{
return [];
}
}