- Add SendSmsMessage class for encapsulating SMS message data. - Create KavehNegarProvider and RanginehProvider classes implementing SmsProviderInterface for sending SMS. - Implement SmsLogRepository and SmsTemplateRepository for managing SMS logs and templates. - Develop SendSmsHandler for handling SMS sending messages. - Create SmsService to manage SMS dispatching and logging. - Add UserProfileController for managing user profiles with CRUD operations. - Implement UserProfile entity and repository for user profile data management. - Update symfony.lock and bootstrap.php for project dependencies and environment setup.
22 lines
596 B
Markdown
22 lines
596 B
Markdown
# نکات پیادهسازی — تسک ۱۳: ماژول لایک
|
|
|
|
## Toggle Like
|
|
PATCH endpoint باید is_liked را toggle کند:
|
|
```php
|
|
public function toggle(Like $like): void
|
|
{
|
|
$like->setIsLiked(!$like->isLiked());
|
|
$this->em->flush();
|
|
}
|
|
```
|
|
|
|
## جلوگیری از لایک دوگانه
|
|
unique index روی (user_id, entity_type, entity_id) جلوگیری میکند.
|
|
اگر قبلاً لایک وجود داشت، PATCH برای toggle استفاده میشود.
|
|
|
|
## مجوزها
|
|
```
|
|
POST /like → احراز هویتشده
|
|
PATCH /like/{uuid} → owner
|
|
```
|