Files
clinicpro/docs/tasks/task-13-like/implementation_notes.md
T
hamed de1a78a235 feat: Implement SMS sending functionality with KavehNegar and Rangineh providers
- 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.
2026-06-09 22:00:34 +03:30

596 B

نکات پیاده‌سازی — تسک ۱۳: ماژول لایک

Toggle Like

PATCH endpoint باید is_liked را toggle کند:

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